From f4471fd006f2fb0d84d43de09e676bd7ef07d9ae Mon Sep 17 00:00:00 2001 From: Edd Date: Fri, 26 Jan 2024 14:53:11 +0000 Subject: [PATCH] generate docs --- .../api/v1/blockexplorer.proto.mdx | 4 +- .../data-node/api/v2/trading_data.proto.mdx | 1024 +- docs/api/grpc/vega/api/v1/corestate.proto.mdx | 24 +- docs/api/grpc/vega/chain_events.proto.mdx | 2 +- .../grpc/vega/commands/v1/commands.proto.mdx | 74 +- .../vega/commands/v1/transaction.proto.mdx | 2 +- docs/api/grpc/vega/data_source.proto.mdx | 6 +- docs/api/grpc/vega/events/v1/events.proto.mdx | 116 +- docs/api/grpc/vega/governance.proto.mdx | 108 +- docs/api/grpc/vega/markets.proto.mdx | 72 +- docs/api/grpc/vega/vega.proto.mdx | 176 +- docs/api/grpc/vega/wallet/v1/wallet.proto.mdx | 2 +- ...core-service-check-raw-transaction.api.mdx | 2 +- .../core-service-check-transaction.api.mdx | 2 +- .../core-service-get-spam-statistics.api.mdx | 2 +- .../core/core-service-get-vega-time.api.mdx | 2 +- .../core-service-last-block-height.api.mdx | 2 +- .../core-service-observe-event-bus.api.mdx | 7947 +- .../rest/core/core-service-statistics.api.mdx | 2 +- ...ore-service-submit-raw-transaction.api.mdx | 2 +- .../core-service-submit-transaction.api.mdx | 2 +- docs/api/rest/data-v2/sidebar.js | 2 +- .../trading-data-service-estimate-fee.api.mdx | 2 +- ...ading-data-service-estimate-margin.api.mdx | 4 +- ...ing-data-service-estimate-position.api.mdx | 22 +- ...data-service-estimate-transfer-fee.api.mdx | 41 + ...data-service-export-ledger-entries.api.mdx | 4 +- ...ata-service-export-network-history.api.mdx | 2 +- .../trading-data-service-get-asset.api.mdx | 2 +- ...rvice-get-current-referral-program.api.mdx | 2 +- ...et-current-volume-discount-program.api.mdx | 2 +- .../trading-data-service-get-deposit.api.mdx | 2 +- .../trading-data-service-get-epoch.api.mdx | 2 +- ...rvice-get-erc-20-list-asset-bundle.api.mdx | 2 +- ...get-erc-20-set-asset-limits-bundle.api.mdx | 2 +- ...ice-get-erc-20-withdrawal-approval.api.mdx | 2 +- ...a-service-get-fees-stats-for-party.api.mdx | 4 +- ...rading-data-service-get-fees-stats.api.mdx | 10 +- ...g-data-service-get-governance-data.api.mdx | 7136 +- ...rading-data-service-get-last-trade.api.mdx | 6 +- ...ata-service-get-latest-market-data.api.mdx | 6 +- ...ta-service-get-latest-market-depth.api.mdx | 6 +- ...vice-get-market-data-history-by-id.api.mdx | 8 +- .../trading-data-service-get-market.api.mdx | 236 +- ...ding-data-service-get-network-data.api.mdx | 2 +- ...et-network-history-bootstrap-peers.api.mdx | 2 +- ...service-get-network-history-status.api.mdx | 2 +- ...ng-data-service-get-network-limits.api.mdx | 2 +- ...data-service-get-network-parameter.api.mdx | 2 +- .../trading-data-service-get-node.api.mdx | 2 +- ...ading-data-service-get-oracle-spec.api.mdx | 6 +- .../trading-data-service-get-order.api.mdx | 4 +- ...-service-get-party-activity-streak.api.mdx | 2 +- .../trading-data-service-get-party.api.mdx | 9 +- ...ervice-get-protocol-upgrade-status.api.mdx | 2 +- ...ata-service-get-referral-set-stats.api.mdx | 4 +- ...ding-data-service-get-risk-factors.api.mdx | 2 +- .../trading-data-service-get-stake.api.mdx | 2 +- ...rading-data-service-get-stop-order.api.mdx | 6 +- ...ce-get-total-transfer-fee-discount.api.mdx | 41 + .../trading-data-service-get-transfer.api.mdx | 16 +- ...trading-data-service-get-vega-time.api.mdx | 2 +- ...-service-get-volume-discount-stats.api.mdx | 2 +- ...rading-data-service-get-withdrawal.api.mdx | 2 +- .../data-v2/trading-data-service-info.api.mdx | 2 +- ...trading-data-service-list-accounts.api.mdx | 6 +- ...vice-list-all-liquidity-provisions.api.mdx | 2 +- ...-list-all-network-history-segments.api.mdx | 2 +- ...ng-data-service-list-all-positions.api.mdx | 2 +- .../trading-data-service-list-assets.api.mdx | 2 +- ...-data-service-list-balance-changes.api.mdx | 6 +- ...ding-data-service-list-candle-data.api.mdx | 2 +- ...data-service-list-candle-intervals.api.mdx | 2 +- ...ding-data-service-list-checkpoints.api.mdx | 2 +- ...g-data-service-list-core-snapshots.api.mdx | 2 +- ...ding-data-service-list-delegations.api.mdx | 2 +- ...trading-data-service-list-deposits.api.mdx | 2 +- ...ervice-list-epoch-reward-summaries.api.mdx | 2 +- ...-20-multi-sig-signer-added-bundles.api.mdx | 2 +- ...0-multi-sig-signer-removed-bundles.api.mdx | 2 +- ...ervice-list-ethereum-key-rotations.api.mdx | 2 +- ...data-service-list-funding-payments.api.mdx | 2 +- ...ce-list-funding-period-data-points.api.mdx | 2 +- ...-data-service-list-funding-periods.api.mdx | 2 +- .../trading-data-service-list-games.api.mdx | 69 + ...-data-service-list-governance-data.api.mdx | 7140 +- ...ng-data-service-list-key-rotations.api.mdx | 2 +- ...ta-service-list-latest-market-data.api.mdx | 6 +- ...g-data-service-list-ledger-entries.api.mdx | 18 +- ...a-service-list-liquidity-providers.api.mdx | 2 +- ...-service-list-liquidity-provisions.api.mdx | 2 +- ...ng-data-service-list-margin-levels.api.mdx | 6 +- .../trading-data-service-list-markets.api.mdx | 236 +- ...ta-service-list-network-parameters.api.mdx | 2 +- ...-data-service-list-node-signatures.api.mdx | 2 +- .../trading-data-service-list-nodes.api.mdx | 2 +- ...ding-data-service-list-oracle-data.api.mdx | 2 +- ...ing-data-service-list-oracle-specs.api.mdx | 6 +- ...g-data-service-list-order-versions.api.mdx | 4 +- .../trading-data-service-list-orders.api.mdx | 4 +- ...a-service-list-paid-liquidity-fees.api.mdx | 4 +- ...data-service-list-parties-profiles.api.mdx | 62 + .../trading-data-service-list-parties.api.mdx | 11 +- ...ta-service-list-party-margin-modes.api.mdx | 57 + ...ce-list-protocol-upgrade-proposals.api.mdx | 2 +- ...service-list-referral-set-referees.api.mdx | 2 +- ...ng-data-service-list-referral-sets.api.mdx | 2 +- ...data-service-list-reward-summaries.api.mdx | 2 +- .../trading-data-service-list-rewards.api.mdx | 8 +- ...ding-data-service-list-stop-orders.api.mdx | 6 +- ...ata-service-list-successor-markets.api.mdx | 7112 +- ...rvice-list-team-members-statistics.api.mdx | 64 + ...-service-list-team-referee-history.api.mdx | 2 +- ...ng-data-service-list-team-referees.api.mdx | 2 +- ...data-service-list-teams-statistics.api.mdx | 64 + .../trading-data-service-list-teams.api.mdx | 6 +- .../trading-data-service-list-trades.api.mdx | 6 +- ...rading-data-service-list-transfers.api.mdx | 12 +- .../trading-data-service-list-votes.api.mdx | 10 +- ...ding-data-service-list-withdrawals.api.mdx | 2 +- ...ding-data-service-observe-accounts.api.mdx | 10 +- ...g-data-service-observe-candle-data.api.mdx | 4 +- ...ing-data-service-observe-event-bus.api.mdx | 7993 +- ...ng-data-service-observe-governance.api.mdx | 7136 +- ...a-service-observe-ledger-movements.api.mdx | 10 +- ...rvice-observe-liquidity-provisions.api.mdx | 4 +- ...data-service-observe-margin-levels.api.mdx | 6 +- ...-data-service-observe-markets-data.api.mdx | 8 +- ...vice-observe-markets-depth-updates.api.mdx | 4 +- ...data-service-observe-markets-depth.api.mdx | 4 +- ...rading-data-service-observe-orders.api.mdx | 8 +- ...ing-data-service-observe-positions.api.mdx | 4 +- ...rading-data-service-observe-trades.api.mdx | 8 +- ...ervice-observe-transaction-results.api.mdx | 4416 ++ ...trading-data-service-observe-votes.api.mdx | 10 +- .../block-explorer-get-transaction.api.mdx | 3033 +- .../rest/explorer/block-explorer-info.api.mdx | 2 +- .../block-explorer-list-transactions.api.mdx | 3039 +- .../core-state-service-list-accounts.api.mdx | 6 +- .../core-state-service-list-assets.api.mdx | 6 +- ...ore-state-service-list-delegations.api.mdx | 6 +- ...re-state-service-list-markets-data.api.mdx | 10 +- .../core-state-service-list-markets.api.mdx | 240 +- ...-state-service-list-network-limits.api.mdx | 6 +- ...te-service-list-network-parameters.api.mdx | 6 +- ...e-state-service-list-parties-stake.api.mdx | 6 +- .../core-state-service-list-parties.api.mdx | 13 +- .../core-state-service-list-proposals.api.mdx | 3041 +- ...core-state-service-list-validators.api.mdx | 6 +- .../core-state-service-list-votes.api.mdx | 12 +- .../local-service/wallet-api.info.mdx | 2 +- .../_newAsset_annotated.md | 6 +- .../_generated-proposals/_newAsset_cmd.md | 6 +- .../_generated-proposals/_newAsset_json.md | 6 +- .../_generated-proposals/_newAsset_win.md | 6 +- .../_newFreeform_annotated.md | 2 +- .../_generated-proposals/_newFreeform_cmd.md | 2 +- .../_generated-proposals/_newFreeform_json.md | 2 +- .../_generated-proposals/_newFreeform_win.md | 2 +- .../_newMarket_annotated.md | 12 +- .../_generated-proposals/_newMarket_cmd.md | 12 +- .../_generated-proposals/_newMarket_json.md | 12 +- .../_newMarket_json_instrument.md | 4 +- .../_newMarket_json_overview.md | 4 +- .../_generated-proposals/_newMarket_win.md | 12 +- .../_newPerpetualMarket_annotated.md | 17 +- .../_newPerpetualMarket_cmd.md | 8 +- .../_newPerpetualMarket_json.md | 8 +- .../_newPerpetualMarket_win.md | 8 +- .../_newSuccessorMarket_annotated.md | 8 +- .../_newSuccessorMarket_cmd.md | 8 +- .../_newSuccessorMarket_json.md | 8 +- .../_newSuccessorMarket_win.md | 8 +- .../_newTransfer_annotated.md | 4 +- .../_generated-proposals/_newTransfer_cmd.md | 4 +- .../_generated-proposals/_newTransfer_json.md | 4 +- .../_generated-proposals/_newTransfer_win.md | 4 +- .../_updateAsset_annotated.md | 4 +- .../_generated-proposals/_updateAsset_cmd.md | 4 +- .../_generated-proposals/_updateAsset_json.md | 4 +- .../_generated-proposals/_updateAsset_win.md | 4 +- .../_updateMarketState_annotated.md | 4 +- .../_updateMarketState_cmd.md | 4 +- .../_updateMarketState_json.md | 4 +- .../_updateMarketState_win.md | 4 +- .../_updateMarket_annotated.md | 8 +- .../_generated-proposals/_updateMarket_cmd.md | 8 +- .../_updateMarket_json.md | 8 +- .../_generated-proposals/_updateMarket_win.md | 8 +- .../_updateNetworkParameter_annotated.md | 4 +- .../_updateNetworkParameter_cmd.md | 4 +- .../_updateNetworkParameter_json.md | 4 +- .../_updateNetworkParameter_win.md | 4 +- package.json | 2 +- scripts/build-post-fix-generated.sh | 4 - scripts/build-post-fix-sidebars.sh | 19 +- specs/mainnet_vaguer.json | 2 +- specs/mainnet_vaguer_timestamp.json | 2 +- specs/testnet_network.json | 2 +- specs/testnet_network_parameters.json | 2 +- specs/testnet_vaguer.json | 2 +- specs/testnet_vaguer_timestamp.json | 2 +- .../api/v2/trading_data.swagger.json | 13191 ---- .../swagger/vega/api/v1/core.swagger.json | 8486 --- .../vega/api/v1/corestate.swagger.json | 3392 - .../swagger/vega/assets.swagger.json | 43 - .../swagger/vega/chain_events.swagger.json | 43 - .../checkpoint/v1/checkpoint.swagger.json | 43 - .../vega/commands/v1/commands.swagger.json | 43 - .../vega/commands/v1/data.swagger.json | 43 - .../vega/commands/v1/signature.swagger.json | 43 - .../vega/commands/v1/transaction.swagger.json | 43 - .../v1/validator_commands.swagger.json | 43 - .../swagger/vega/data/v1/data.swagger.json | 43 - .../swagger/vega/data/v1/spec.swagger.json | 43 - .../swagger/vega/data_source.swagger.json | 43 - .../vega/events/v1/events.swagger.json | 43 - .../swagger/vega/governance.swagger.json | 43 - .../swagger/vega/markets.swagger.json | 43 - .../swagger/vega/oracle.swagger.json | 43 - .../vega/snapshot/v1/snapshot.swagger.json | 43 - .../swagger/vega/vega.swagger.json | 43 - .../vega/wallet/v1/wallet.swagger.json | 43 - .../api/v1/blockexplorer.swagger.json | 3753 - .../swagger/vega/api/v1/core.swagger.json | 8486 --- .../vega/api/v1/corestate.swagger.json | 3392 - .../swagger/vega/assets.swagger.json | 43 - .../swagger/vega/chain_events.swagger.json | 43 - .../checkpoint/v1/checkpoint.swagger.json | 43 - .../vega/commands/v1/commands.swagger.json | 43 - .../vega/commands/v1/data.swagger.json | 43 - .../vega/commands/v1/signature.swagger.json | 43 - .../vega/commands/v1/transaction.swagger.json | 43 - .../v1/validator_commands.swagger.json | 43 - .../swagger/vega/data/v1/data.swagger.json | 43 - .../swagger/vega/data/v1/spec.swagger.json | 43 - .../swagger/vega/data_source.swagger.json | 43 - .../vega/events/v1/events.swagger.json | 43 - .../swagger/vega/governance.swagger.json | 43 - .../swagger/vega/markets.swagger.json | 43 - .../swagger/vega/oracle.swagger.json | 43 - .../vega/snapshot/v1/snapshot.swagger.json | 43 - .../data-node/swagger/vega/vega.swagger.json | 43 - .../vega/wallet/v1/wallet.swagger.json | 43 - specs/v0.74.0-preview.6/grpc/proto.json | 61213 ---------------- .../api/v1/blockexplorer.swagger.json | 3753 - .../api/v2/trading_data.swagger.json | 13191 ---- .../vega/swagger/vega/assets.swagger.json | 43 - .../swagger/vega/chain_events.swagger.json | 43 - .../checkpoint/v1/checkpoint.swagger.json | 43 - .../vega/commands/v1/commands.swagger.json | 43 - .../vega/commands/v1/data.swagger.json | 43 - .../vega/commands/v1/signature.swagger.json | 43 - .../vega/commands/v1/transaction.swagger.json | 43 - .../v1/validator_commands.swagger.json | 43 - .../swagger/vega/data/v1/data.swagger.json | 43 - .../swagger/vega/data/v1/spec.swagger.json | 43 - .../swagger/vega/data_source.swagger.json | 43 - .../vega/events/v1/events.swagger.json | 43 - .../vega/swagger/vega/governance.swagger.json | 43 - .../vega/swagger/vega/markets.swagger.json | 43 - .../vega/swagger/vega/oracle.swagger.json | 43 - .../vega/snapshot/v1/snapshot.swagger.json | 43 - .../vega/swagger/vega/vega.swagger.json | 43 - .../vega/wallet/v1/wallet.swagger.json | 43 - .../wallet/api/wallet.openapi.json | 284 - specs/v0.74.0/blockexplorer.openapi.json | 1 + .../v1 => v0.74.0}/blockexplorer.swagger.json | 18 +- specs/v0.74.0/core.openapi.json | 1 + .../vega/api/v1 => v0.74.0}/core.swagger.json | 4 +- specs/v0.74.0/corestate.openapi.json | 1 + .../api/v1 => v0.74.0}/corestate.swagger.json | 4 +- .../wallet/api => v0.74.0}/openrpc.json | 0 specs/v0.74.0/proto.json | 1 + .../schema.graphql} | 0 specs/v0.74.0/trading_data_v2.openapi.json | 1 + .../trading_data_v2.swagger.json} | 4 +- specs/v0.74.0/wallet.openapi.json | 1 + 278 files changed, 57326 insertions(+), 125703 deletions(-) create mode 100644 docs/api/rest/data-v2/trading-data-service-estimate-transfer-fee.api.mdx create mode 100644 docs/api/rest/data-v2/trading-data-service-get-total-transfer-fee-discount.api.mdx create mode 100644 docs/api/rest/data-v2/trading-data-service-list-games.api.mdx create mode 100644 docs/api/rest/data-v2/trading-data-service-list-parties-profiles.api.mdx create mode 100644 docs/api/rest/data-v2/trading-data-service-list-party-margin-modes.api.mdx create mode 100644 docs/api/rest/data-v2/trading-data-service-list-team-members-statistics.api.mdx create mode 100644 docs/api/rest/data-v2/trading-data-service-list-teams-statistics.api.mdx create mode 100644 docs/api/rest/data-v2/trading-data-service-observe-transaction-results.api.mdx delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/data-node/api/v2/trading_data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/core.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/corestate.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/assets.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/chain_events.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/checkpoint/v1/checkpoint.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/commands.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/signature.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/transaction.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/validator_commands.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/spec.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data_source.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/events/v1/events.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/governance.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/markets.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/oracle.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/snapshot/v1/snapshot.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/vega.swagger.json delete mode 100644 specs/v0.74.0-preview.6/blockexplorer/swagger/vega/wallet/v1/wallet.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/blockexplorer/api/v1/blockexplorer.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/core.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/corestate.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/assets.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/chain_events.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/checkpoint/v1/checkpoint.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/commands.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/signature.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/transaction.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/validator_commands.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/spec.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/data_source.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/events/v1/events.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/governance.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/markets.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/oracle.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/snapshot/v1/snapshot.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/vega.swagger.json delete mode 100644 specs/v0.74.0-preview.6/data-node/swagger/vega/wallet/v1/wallet.swagger.json delete mode 100644 specs/v0.74.0-preview.6/grpc/proto.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/blockexplorer/api/v1/blockexplorer.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/data-node/api/v2/trading_data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/assets.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/chain_events.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/checkpoint/v1/checkpoint.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/commands.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/signature.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/transaction.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/validator_commands.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/data.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/spec.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/data_source.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/events/v1/events.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/governance.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/markets.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/oracle.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/snapshot/v1/snapshot.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/vega.swagger.json delete mode 100644 specs/v0.74.0-preview.6/vega/swagger/vega/wallet/v1/wallet.swagger.json delete mode 100644 specs/v0.74.0-preview.6/wallet/api/wallet.openapi.json create mode 100644 specs/v0.74.0/blockexplorer.openapi.json rename specs/{v0.74.0-preview.6/blockexplorer/swagger/blockexplorer/api/v1 => v0.74.0}/blockexplorer.swagger.json (99%) create mode 100644 specs/v0.74.0/core.openapi.json rename specs/{v0.74.0-preview.6/vega/swagger/vega/api/v1 => v0.74.0}/core.swagger.json (99%) create mode 100644 specs/v0.74.0/corestate.openapi.json rename specs/{v0.74.0-preview.6/vega/swagger/vega/api/v1 => v0.74.0}/corestate.swagger.json (99%) rename specs/{v0.74.0-preview.6/wallet/api => v0.74.0}/openrpc.json (100%) create mode 100644 specs/v0.74.0/proto.json rename specs/{v0.74.0-preview.6/datanode-schema.graphql => v0.74.0/schema.graphql} (100%) create mode 100644 specs/v0.74.0/trading_data_v2.openapi.json rename specs/{v0.74.0-preview.6/data-node/swagger/data-node/api/v2/trading_data.swagger.json => v0.74.0/trading_data_v2.swagger.json} (99%) create mode 100644 specs/v0.74.0/wallet.openapi.json diff --git a/docs/api/grpc/blockexplorer/api/v1/blockexplorer.proto.mdx b/docs/api/grpc/blockexplorer/api/v1/blockexplorer.proto.mdx index 3e9ee35cc..1836de741 100644 --- a/docs/api/grpc/blockexplorer/api/v1/blockexplorer.proto.mdx +++ b/docs/api/grpc/blockexplorer/api/v1/blockexplorer.proto.mdx @@ -34,7 +34,7 @@ _**package** blockexplorer.api.v1_ ### `ListTransactionsRequest` - + ### `ListTransactionsRequest.FiltersEntry` @@ -62,7 +62,7 @@ _**package** blockexplorer.api.v1_ #### `ListTransactions` - + #### `Info` diff --git a/docs/api/grpc/data-node/api/v2/trading_data.proto.mdx b/docs/api/grpc/data-node/api/v2/trading_data.proto.mdx index c9abf181a..67ea2f3a5 100644 --- a/docs/api/grpc/data-node/api/v2/trading_data.proto.mdx +++ b/docs/api/grpc/data-node/api/v2/trading_data.proto.mdx @@ -97,1412 +97,1560 @@ _**package** datanode.api.v2_ +### `CollateralIncreaseEstimate` + + + ### `CoreSnapshotConnection` - + ### `CoreSnapshotEdge` - + ### `DateRange` - + ### `DelegationEdge` - + ### `DelegationsConnection` - + ### `DepositEdge` - + ### `DepositsConnection` - + ### `ERC20MultiSigSignerAddedBundle` - + ### `ERC20MultiSigSignerAddedBundleEdge` - + ### `ERC20MultiSigSignerAddedConnection` - + ### `ERC20MultiSigSignerAddedEdge` - + ### `ERC20MultiSigSignerRemovedBundle` - + ### `ERC20MultiSigSignerRemovedBundleEdge` - + ### `ERC20MultiSigSignerRemovedConnection` - + ### `ERC20MultiSigSignerRemovedEdge` - + ### `EpochRewardSummaryConnection` - + ### `EpochRewardSummaryEdge` - + ### `EstimateFeeRequest` - + ### `EstimateFeeResponse` - + ### `EstimateMarginRequest` - + ### `EstimateMarginResponse` - + ### `EstimatePositionRequest` - + ### `EstimatePositionResponse` - + + + +### `EstimateTransferFeeRequest` + + + +### `EstimateTransferFeeResponse` + ### `EthereumKeyRotationEdge` - + ### `EthereumKeyRotationsConnection` - + ### `ExportLedgerEntriesRequest` - + ### `ExportNetworkHistoryRequest` - + ### `FeesStatsForParty` - + ### `FundingPayment` - + ### `FundingPaymentConnection` - + ### `FundingPaymentEdge` - + ### `FundingPeriodConnection` - + ### `FundingPeriodDataPointConnection` - + ### `FundingPeriodDataPointEdge` - + ### `FundingPeriodEdge` - + + + +### `Game` + + + +### `GameEdge` + + + +### `GamesConnection` + ### `GetActiveNetworkHistoryPeerAddressesRequest` - + ### `GetActiveNetworkHistoryPeerAddressesResponse` - + ### `GetAssetRequest` - + ### `GetAssetResponse` - + ### `GetBalanceHistoryRequest` - + ### `GetBalanceHistoryResponse` - + ### `GetCurrentReferralProgramRequest` - + ### `GetCurrentReferralProgramResponse` - + ### `GetCurrentVolumeDiscountProgramRequest` - + ### `GetCurrentVolumeDiscountProgramResponse` - + ### `GetDepositRequest` - + ### `GetDepositResponse` - + ### `GetERC20ListAssetBundleRequest` - + ### `GetERC20ListAssetBundleResponse` - + ### `GetERC20SetAssetLimitsBundleRequest` - + ### `GetERC20SetAssetLimitsBundleResponse` - + ### `GetERC20WithdrawalApprovalRequest` - + ### `GetERC20WithdrawalApprovalResponse` - + ### `GetEpochRequest` - + ### `GetEpochResponse` - + ### `GetFeesStatsForPartyRequest` - + ### `GetFeesStatsForPartyResponse` - + ### `GetFeesStatsRequest` - + ### `GetFeesStatsResponse` - + ### `GetGovernanceDataRequest` - + ### `GetGovernanceDataResponse` - + ### `GetLastTradeRequest` - + ### `GetLastTradeResponse` - + ### `GetLatestMarketDataRequest` - + ### `GetLatestMarketDataResponse` - + ### `GetLatestMarketDepthRequest` - + ### `GetLatestMarketDepthResponse` - + ### `GetMarketDataHistoryByIDRequest` - + ### `GetMarketDataHistoryByIDResponse` - + ### `GetMarketRequest` - + ### `GetMarketResponse` - + ### `GetMostRecentNetworkHistorySegmentRequest` - + ### `GetMostRecentNetworkHistorySegmentResponse` - + ### `GetNetworkDataRequest` - + ### `GetNetworkDataResponse` - + ### `GetNetworkHistoryBootstrapPeersRequest` - + ### `GetNetworkHistoryBootstrapPeersResponse` - + ### `GetNetworkHistoryStatusRequest` - + ### `GetNetworkHistoryStatusResponse` - + ### `GetNetworkLimitsRequest` - + ### `GetNetworkLimitsResponse` - + ### `GetNetworkParameterRequest` - + ### `GetNetworkParameterResponse` - + ### `GetNodeRequest` - + ### `GetNodeResponse` - + ### `GetOracleSpecRequest` - + ### `GetOracleSpecResponse` - + ### `GetOrderRequest` - + ### `GetOrderResponse` - + ### `GetPartyActivityStreakRequest` - + ### `GetPartyActivityStreakResponse` - + ### `GetPartyRequest` - + ### `GetPartyResponse` - + ### `GetPartyVestingStatsRequest` - + ### `GetPartyVestingStatsResponse` - + ### `GetProtocolUpgradeStatusRequest` - + ### `GetProtocolUpgradeStatusResponse` - + ### `GetReferralSetStatsRequest` - + ### `GetReferralSetStatsResponse` - + ### `GetRiskFactorsRequest` - + ### `GetRiskFactorsResponse` - + ### `GetStakeRequest` - + ### `GetStakeResponse` - + ### `GetStopOrderRequest` - + ### `GetStopOrderResponse` - + + + +### `GetTotalTransferFeeDiscountRequest` + + + +### `GetTotalTransferFeeDiscountResponse` + ### `GetTransferRequest` - + ### `GetTransferResponse` - + ### `GetVegaTimeRequest` - + ### `GetVegaTimeResponse` - + ### `GetVestingBalancesSummaryRequest` - + ### `GetVestingBalancesSummaryResponse` - + ### `GetVolumeDiscountStatsRequest` - + ### `GetVolumeDiscountStatsResponse` - + ### `GetWithdrawalRequest` - + ### `GetWithdrawalResponse` - + ### `GovernanceDataConnection` - + ### `GovernanceDataEdge` - + ### `HistorySegment` - + + + +### `IndividualGameEntities` + + + +### `IndividualGameEntity` + ### `InfoRequest` - + ### `InfoResponse` - + ### `IntervalToCandleId` - + ### `KeyRotationConnection` - + ### `KeyRotationEdge` - + ### `LedgerEntryFilter` - + ### `LiquidationEstimate` - + ### `LiquidationPrice` - + ### `LiquidityProvider` - + ### `LiquidityProviderConnection` - + ### `LiquidityProviderEdge` - + ### `LiquidityProvision` - + ### `LiquidityProvisionWithPendingEdge` - + ### `LiquidityProvisionsConnection` - + ### `LiquidityProvisionsEdge` - + ### `LiquidityProvisionsWithPendingConnection` - + ### `ListAccountsRequest` - + ### `ListAccountsResponse` - + ### `ListAllLiquidityProvisionsRequest` - + ### `ListAllLiquidityProvisionsResponse` - + ### `ListAllNetworkHistorySegmentsRequest` - + ### `ListAllNetworkHistorySegmentsResponse` - + ### `ListAllPositionsRequest` - + ### `ListAllPositionsResponse` - + ### `ListAssetsRequest` - + ### `ListAssetsResponse` - + ### `ListBalanceChangesRequest` - + ### `ListBalanceChangesResponse` - + ### `ListCandleDataRequest` - + ### `ListCandleDataResponse` - + ### `ListCandleIntervalsRequest` - + ### `ListCandleIntervalsResponse` - `candle ID` for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"interval_to_candle_id","description":"List of the mappings.","label":"repeated","type":"IntervalToCandleId","longType":"IntervalToCandleId","fullType":"datanode.api.v2.IntervalToCandleId","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":"","typeLink":"/testnet/api/grpc/data-node/api/v2/trading_data.proto#intervaltocandleid"}]}} /> + `candle ID` for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"interval_to_candle_id","description":"List of the mappings.","label":"repeated","type":"IntervalToCandleId","longType":"IntervalToCandleId","fullType":"datanode.api.v2.IntervalToCandleId","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":"","typeLink":"/testnet/api/grpc/data-node/api/v2/trading_data.proto#intervaltocandleid"}]}} /> ### `ListCheckpointsRequest` - + ### `ListCheckpointsResponse` - + ### `ListCoreSnapshotsRequest` - + ### `ListCoreSnapshotsResponse` - + ### `ListDelegationsRequest` - + ### `ListDelegationsResponse` - + ### `ListDepositsRequest` - + ### `ListDepositsResponse` - + ### `ListERC20MultiSigSignerAddedBundlesRequest` - + ### `ListERC20MultiSigSignerAddedBundlesResponse` - + ### `ListERC20MultiSigSignerRemovedBundlesRequest` - + ### `ListERC20MultiSigSignerRemovedBundlesResponse` - + ### `ListEntitiesRequest` - + ### `ListEntitiesResponse` - + ### `ListEpochRewardSummariesRequest` - + ### `ListEpochRewardSummariesResponse` - + ### `ListEthereumKeyRotationsRequest` - + ### `ListEthereumKeyRotationsResponse` - + ### `ListFundingPaymentsRequest` - + ### `ListFundingPaymentsResponse` - + ### `ListFundingPeriodDataPointsRequest` - + ### `ListFundingPeriodDataPointsResponse` - + ### `ListFundingPeriodsRequest` - + ### `ListFundingPeriodsResponse` - + + + +### `ListGamesRequest` + + + +### `ListGamesResponse` + ### `ListGovernanceDataRequest` - + ### `ListGovernanceDataResponse` - + ### `ListKeyRotationsRequest` - + ### `ListKeyRotationsResponse` - + ### `ListLatestMarketDataRequest` - + ### `ListLatestMarketDataResponse` - + ### `ListLedgerEntriesRequest` - + ### `ListLedgerEntriesResponse` - + ### `ListLiquidityProvidersRequest` - + ### `ListLiquidityProvidersResponse` - + ### `ListLiquidityProvisionsRequest` - + ### `ListLiquidityProvisionsResponse` - + ### `ListMarginLevelsRequest` - + ### `ListMarginLevelsResponse` - + ### `ListMarketsRequest` - + ### `ListMarketsResponse` - + ### `ListNetworkParametersRequest` - + ### `ListNetworkParametersResponse` - + ### `ListNodeSignaturesRequest` - + ### `ListNodeSignaturesResponse` - + ### `ListNodesRequest` - + ### `ListNodesResponse` - + ### `ListOracleDataRequest` - + ### `ListOracleDataResponse` - + ### `ListOracleSpecsRequest` - + ### `ListOracleSpecsResponse` - + ### `ListOrderVersionsRequest` - + ### `ListOrderVersionsResponse` - + ### `ListOrdersRequest` - + ### `ListOrdersResponse` - + ### `ListPaidLiquidityFeesRequest` - + ### `ListPaidLiquidityFeesResponse` - + + + +### `ListPartiesProfilesRequest` + + + +### `ListPartiesProfilesResponse` + ### `ListPartiesRequest` - + ### `ListPartiesResponse` - + + + +### `ListPartyMarginModesRequest` + + + +### `ListPartyMarginModesResponse` + ### `ListPositionsRequest` - + ### `ListPositionsResponse` - + ### `ListProtocolUpgradeProposalsRequest` - + ### `ListProtocolUpgradeProposalsResponse` - + ### `ListReferralSetRefereesRequest` - + ### `ListReferralSetRefereesResponse` - + ### `ListReferralSetsRequest` - + ### `ListReferralSetsResponse` - + ### `ListRewardSummariesRequest` - + ### `ListRewardSummariesResponse` - + ### `ListRewardsRequest` - + ### `ListRewardsResponse` - + ### `ListStopOrdersRequest` - + ### `ListStopOrdersResponse` - + ### `ListSuccessorMarketsRequest` - + ### `ListSuccessorMarketsResponse` - + + + +### `ListTeamMembersStatisticsRequest` + + + +### `ListTeamMembersStatisticsResponse` + ### `ListTeamRefereeHistoryRequest` - + ### `ListTeamRefereeHistoryResponse` - + ### `ListTeamRefereesRequest` - + ### `ListTeamRefereesResponse` - + ### `ListTeamsRequest` - + ### `ListTeamsResponse` - + + + +### `ListTeamsStatisticsRequest` + + + +### `ListTeamsStatisticsResponse` + ### `ListTradesRequest` - + ### `ListTradesResponse` - + ### `ListTransfersRequest` - + ### `ListTransfersResponse` - + ### `ListVotesRequest` - + ### `ListVotesResponse` - + ### `ListWithdrawalsRequest` - + ### `ListWithdrawalsResponse` - + ### `MarginConnection` - + ### `MarginEdge` - + ### `MarginEstimate` - + ### `MarketConnection` - + ### `MarketDataConnection` - + ### `MarketDataEdge` - + ### `MarketEdge` - + ### `NetworkParameterConnection` - + ### `NetworkParameterEdge` - + ### `NodeBasic` - + ### `NodeEdge` - + ### `NodeSignatureEdge` - + ### `NodeSignaturesConnection` - + ### `NodesConnection` - + ### `ObserveAccountsRequest` - + ### `ObserveAccountsResponse` - + ### `ObserveCandleDataRequest` - + ### `ObserveCandleDataResponse` - + ### `ObserveDelegationsRequest` - + ### `ObserveDelegationsResponse` - + ### `ObserveEventBusRequest` - + ### `ObserveEventBusResponse` - + ### `ObserveGovernanceRequest` - + ### `ObserveGovernanceResponse` - + ### `ObserveLedgerMovementsRequest` - + ### `ObserveLedgerMovementsResponse` - + ### `ObserveLiquidityProvisionsRequest` - + ### `ObserveLiquidityProvisionsResponse` - + ### `ObserveMarginLevelsRequest` - + ### `ObserveMarginLevelsResponse` - + ### `ObserveMarketsDataRequest` - + ### `ObserveMarketsDataResponse` - + ### `ObserveMarketsDepthRequest` - + ### `ObserveMarketsDepthResponse` - + ### `ObserveMarketsDepthUpdatesRequest` - + ### `ObserveMarketsDepthUpdatesResponse` - + ### `ObserveOrdersRequest` - + ### `ObserveOrdersResponse` - + ### `ObservePositionsRequest` - + ### `ObservePositionsResponse` - + ### `ObserveRewardsRequest` - + ### `ObserveRewardsResponse` - + ### `ObserveTradesRequest` - + ### `ObserveTradesResponse` - + + + +### `ObserveTransactionResultsRequest` + + + +### `ObserveTransactionResultsResponse` + ### `ObserveVotesRequest` - + ### `ObserveVotesResponse` - + ### `OracleDataConnection` - + ### `OracleDataEdge` - + ### `OracleSpecEdge` - + ### `OracleSpecsConnection` - + ### `OrderConnection` - + ### `OrderEdge` - + ### `OrderFilter` - + ### `OrderInfo` - + ### `OrderSnapshotPage` - + ### `OrderUpdates` - + ### `PageInfo` - + ### `Pagination` - + ### `PaidLiquidityFeesConnection` - + ### `PaidLiquidityFeesEdge` - + + + +### `PartiesProfilesConnection` + ### `PartyConnection` - + ### `PartyEdge` - + + + +### `PartyMarginMode` + + + +### `PartyMarginModeEdge` + + + +### `PartyMarginModesConnection` + + + +### `PartyProfileEdge` + ### `PingRequest` - + ### `PingResponse` - + ### `PositionConnection` - + ### `PositionEdge` - + ### `PositionSnapshotPage` - + ### `PositionUpdates` - + ### `PositionsFilter` - + ### `ProtocolUpgradeProposalConnection` - + ### `ProtocolUpgradeProposalEdge` - + + + +### `QuantumRewardsPerEpoch` + ### `ReferralProgram` - + ### `ReferralSet` - + ### `ReferralSetConnection` - + ### `ReferralSetEdge` - + ### `ReferralSetReferee` - + ### `ReferralSetRefereeConnection` - + ### `ReferralSetRefereeEdge` - + ### `ReferralSetStats` - + ### `ReferralSetStatsConnection` - + ### `ReferralSetStatsEdge` - + ### `RewardEdge` - + ### `RewardSummaryFilter` - + ### `RewardsConnection` - + ### `StakeLinkingEdge` - + ### `StakesConnection` - + ### `StopOrderConnection` - + ### `StopOrderEdge` - + ### `StopOrderFilter` - + ### `SuccessorMarket` - + ### `SuccessorMarketConnection` - + ### `SuccessorMarketEdge` - + ### `Team` - + ### `TeamConnection` - + ### `TeamEdge` - + + + +### `TeamGameEntities` + + + +### `TeamGameEntity` + + + +### `TeamGameParticipation` + + + +### `TeamMemberStatistics` + + + +### `TeamMemberStatisticsEdge` + + + +### `TeamMembersStatisticsConnection` + ### `TeamReferee` - + ### `TeamRefereeConnection` - + ### `TeamRefereeEdge` - + ### `TeamRefereeHistory` - + ### `TeamRefereeHistoryConnection` - + ### `TeamRefereeHistoryEdge` - + + + +### `TeamStatistics` + + + +### `TeamStatisticsEdge` + + + +### `TeamsStatisticsConnection` + ### `TradeConnection` - + ### `TradeEdge` - + ### `TransferConnection` - + ### `TransferEdge` - + ### `TransferNode` - + ### `VolumeDiscountProgram` - + ### `VolumeDiscountStats` - + ### `VolumeDiscountStatsConnection` - + ### `VolumeDiscountStatsEdge` - + ### `VoteConnection` - + ### `VoteEdge` - + ### `WithdrawalEdge` - + ### `WithdrawalsConnection` - + --- ## Enums @@ -1520,12 +1668,16 @@ _**package** datanode.api.v2_ +### `ListTransfersRequest.Scope` + + + ### `Table` - + ### `TransferDirection` - + --- ## Services @@ -1720,268 +1872,300 @@ _**package** datanode.api.v2_ +#### `ListPartiesProfiles` + + + #### `ListMarginLevels` - + #### `ObserveMarginLevels` - + #### `ListRewards` - + #### `ListRewardSummaries` - + #### `ListEpochRewardSummaries` - + #### `GetDeposit` - + #### `ListDeposits` - + #### `GetWithdrawal` - + #### `ListWithdrawals` - + #### `GetAsset` - + #### `ListAssets` - + #### `ListLiquidityProvisions` - + #### `ListAllLiquidityProvisions` - + #### `ObserveLiquidityProvisions` - + #### `ListLiquidityProviders` - + #### `ListPaidLiquidityFees` - + #### `GetGovernanceData` - + #### `ListGovernanceData` - + #### `ObserveGovernance` - + #### `ListDelegations` - + #### `GetNetworkData` - + #### `GetNode` - + #### `ListNodes` - + #### `ListNodeSignatures` - + #### `GetEpoch` - + #### `EstimateFee` - + #### `EstimateMargin` - + #### `EstimatePosition` - + #### `ListNetworkParameters` - + #### `GetNetworkParameter` - + #### `ListCheckpoints` - + #### `GetStake` - + #### `GetRiskFactors` - + #### `ObserveEventBus` - + #### `ObserveLedgerMovements` - + #### `ListKeyRotations` - + #### `ListEthereumKeyRotations` - + #### `GetVegaTime` - + #### `GetProtocolUpgradeStatus` - + #### `ListProtocolUpgradeProposals` - + #### `ListCoreSnapshots` - + #### `GetMostRecentNetworkHistorySegment` - + #### `ListAllNetworkHistorySegments` - + #### `GetActiveNetworkHistoryPeerAddresses` - + #### `GetNetworkHistoryStatus` - + #### `GetNetworkHistoryBootstrapPeers` - + #### `ListEntities` - + #### `ListFundingPeriods` - + #### `ListFundingPeriodDataPoints` - + #### `ListFundingPayments` - + #### `GetPartyActivityStreak` - + #### `GetCurrentReferralProgram` - + #### `ListReferralSets` - + #### `ListReferralSetReferees` - + #### `GetReferralSetStats` - + #### `ListTeams` - + + + +#### `ListTeamsStatistics` + + + +#### `ListTeamMembersStatistics` + #### `ListTeamReferees` - + #### `ListTeamRefereeHistory` - + #### `GetFeesStats` - + #### `GetFeesStatsForParty` - + #### `GetCurrentVolumeDiscountProgram` - + #### `GetVolumeDiscountStats` - + #### `GetVestingBalancesSummary` - + #### `GetPartyVestingStats` - + + + +#### `ObserveTransactionResults` + + + +#### `EstimateTransferFee` + + + +#### `GetTotalTransferFeeDiscount` + + + +#### `ListGames` + + + +#### `ListPartyMarginModes` + #### `ExportNetworkHistory` - + #### `Ping` - + --- diff --git a/docs/api/grpc/vega/api/v1/corestate.proto.mdx b/docs/api/grpc/vega/api/v1/corestate.proto.mdx index bc213ee87..f3750ca51 100644 --- a/docs/api/grpc/vega/api/v1/corestate.proto.mdx +++ b/docs/api/grpc/vega/api/v1/corestate.proto.mdx @@ -130,51 +130,51 @@ _**package** vega.api.v1_ #### `ListAccounts` - + #### `ListAssets` - + #### `ListNetworkParameters` - + #### `ListNetworkLimits` - + #### `ListParties` - + #### `ListValidators` - + #### `ListMarkets` - + #### `ListProposals` - + #### `ListMarketsData` - + #### `ListVotes` - + #### `ListPartiesStake` - + #### `ListDelegations` - + --- diff --git a/docs/api/grpc/vega/chain_events.proto.mdx b/docs/api/grpc/vega/chain_events.proto.mdx index b5ec78d00..6dfd312df 100644 --- a/docs/api/grpc/vega/chain_events.proto.mdx +++ b/docs/api/grpc/vega/chain_events.proto.mdx @@ -70,7 +70,7 @@ _**package** vega_ ### `EthContractCallEvent` - + ### `StakeDeposited` diff --git a/docs/api/grpc/vega/commands/v1/commands.proto.mdx b/docs/api/grpc/vega/commands/v1/commands.proto.mdx index dc2697311..f79c1b427 100644 --- a/docs/api/grpc/vega/commands/v1/commands.proto.mdx +++ b/docs/api/grpc/vega/commands/v1/commands.proto.mdx @@ -22,103 +22,123 @@ _**package** vega.commands.v1_ ### `BatchMarketInstructions` - + + + +### `BatchProposalSubmission` + + + +### `BatchProposalSubmissionTerms` + ### `CancelTransfer` - + ### `CreateReferralSet` - + ### `CreateReferralSet.Team` - + ### `DelegateSubmission` - + ### `IcebergOpts` - + ### `IssueSignatures` - + + + +### `JoinTeam` + ### `LiquidityProvisionAmendment` - + ### `LiquidityProvisionCancellation` - + ### `LiquidityProvisionSubmission` - + ### `OneOffTransfer` - + ### `OrderAmendment` - + ### `OrderCancellation` - + ### `OrderSubmission` - + ### `ProposalSubmission` - + ### `RecurringTransfer` - + ### `StopOrderSetup` - + ### `StopOrdersCancellation` - + ### `StopOrdersSubmission` - + ### `Transfer` - + ### `UndelegateSubmission` - + + + +### `UpdateMarginMode` + + + +### `UpdatePartyProfile` + ### `UpdateReferralSet` - + ### `UpdateReferralSet.Team` - + ### `VoteSubmission` - + ### `WithdrawSubmission` - + --- ## Enums @@ -127,6 +147,10 @@ _**package** vega.commands.v1_ ### `UndelegateSubmission.Method` + +### `UpdateMarginMode.Mode` + + --- diff --git a/docs/api/grpc/vega/commands/v1/transaction.proto.mdx b/docs/api/grpc/vega/commands/v1/transaction.proto.mdx index c340d7c97..f7ef026aa 100644 --- a/docs/api/grpc/vega/commands/v1/transaction.proto.mdx +++ b/docs/api/grpc/vega/commands/v1/transaction.proto.mdx @@ -18,7 +18,7 @@ _**package** vega.commands.v1_ ### `InputData` - + ### `ProofOfWork` diff --git a/docs/api/grpc/vega/data_source.proto.mdx b/docs/api/grpc/vega/data_source.proto.mdx index 219d6b496..0975313c4 100644 --- a/docs/api/grpc/vega/data_source.proto.mdx +++ b/docs/api/grpc/vega/data_source.proto.mdx @@ -46,7 +46,7 @@ _**package** vega_ ### `EthCallSpec` - + ### `EthCallTrigger` @@ -64,6 +64,10 @@ _**package** vega_ ### `Normaliser` + +### `SpecBindingForCompositePrice` + + --- ## Enums diff --git a/docs/api/grpc/vega/events/v1/events.proto.mdx b/docs/api/grpc/vega/events/v1/events.proto.mdx index a85ac59cb..9876b5daf 100644 --- a/docs/api/grpc/vega/events/v1/events.proto.mdx +++ b/docs/api/grpc/vega/events/v1/events.proto.mdx @@ -26,7 +26,7 @@ _**package** vega.events.v1_ ### `BusEvent` - + ### `CheckpointEvent` @@ -86,7 +86,7 @@ _**package** vega.events.v1_ ### `FeesStats` - + ### `FundingPayment` @@ -138,7 +138,7 @@ _**package** vega.events.v1_ ### `PaidLiquidityFeesStats` - + ### `PartyActivityStreak` @@ -153,203 +153,215 @@ _**package** vega.events.v1_ +### `PartyMarginModeUpdated` + + + +### `PartyProfileUpdated` + + + ### `PartyVestingBalance` - + ### `PartyVestingStats` - + ### `PartyVestingSummary` - + ### `PartyVolumeDiscountStats` - + ### `PositionResolution` - + ### `PositionStateEvent` - + ### `ProtocolUpgradeDataNodeReady` - + ### `ProtocolUpgradeEvent` - + ### `ProtocolUpgradeStarted` - + ### `RecurringGovernanceTransfer` - + ### `RecurringTransfer` - + ### `RefereeJoinedReferralSet` - + ### `RefereeJoinedTeam` - + ### `RefereeStats` - + ### `RefereeSwitchedTeam` - + ### `ReferralProgramEnded` - + ### `ReferralProgramStarted` - + ### `ReferralProgramUpdated` - + ### `ReferralSetCreated` - + ### `ReferralSetStatsUpdated` - + ### `ReferrerRewardsGenerated` - + ### `RewardPayoutEvent` - + ### `SettleDistressed` - + ### `SettleMarket` - + ### `SettlePosition` - + ### `StakeLinking` - + ### `StateVar` - + ### `StopOrderEvent` - + ### `StreamStartEvent` - + ### `TeamCreated` - + ### `TeamUpdated` - + ### `TimeUpdate` - + ### `TradeSettlement` - + ### `TransactionResult` - + ### `TransactionResult.FailureDetails` - + ### `TransactionResult.SuccessDetails` - + ### `Transfer` - + ### `TransferFees` - + + + +### `TransferFeesDiscount` + ### `TxErrorEvent` - + ### `ValidatorRankingEvent` - + ### `ValidatorScoreEvent` - + ### `ValidatorUpdate` - + ### `VestingBalancesSummary` - + ### `VestingStatsUpdated` - + ### `VolumeDiscountProgramEnded` - + ### `VolumeDiscountProgramStarted` - + ### `VolumeDiscountProgramUpdated` - + ### `VolumeDiscountStatsUpdated` - + --- ## Enums ### `BusEventType` - + ### `ERC20MultiSigSignerEvent.Type` diff --git a/docs/api/grpc/vega/governance.proto.mdx b/docs/api/grpc/vega/governance.proto.mdx index 92bffd32a..eeec1f7de 100644 --- a/docs/api/grpc/vega/governance.proto.mdx +++ b/docs/api/grpc/vega/governance.proto.mdx @@ -17,183 +17,203 @@ _**package** vega_ ## Messages +### `BatchProposalTerms` + + + +### `BatchProposalTermsChange` + + + ### `CancelTransfer` - + ### `CancelTransferConfiguration` - + ### `FutureProduct` - + ### `GovernanceData` - + ### `GovernanceData.NoPartyEntry` - + ### `GovernanceData.YesPartyEntry` - + ### `InstrumentConfiguration` - + ### `NewAsset` - + ### `NewFreeform` - + ### `NewMarket` - + ### `NewMarketConfiguration` - + ### `NewSpotMarket` - + ### `NewSpotMarketConfiguration` - + ### `NewTransfer` - + ### `NewTransferConfiguration` - + ### `OneOffTransfer` - + ### `PerpetualProduct` - + ### `Proposal` - + + + +### `ProposalParameters` + ### `ProposalRationale` - + ### `ProposalTerms` - + ### `RecurringTransfer` - + ### `ReferralProgramChanges` - + ### `SpotProduct` - + ### `SuccessorConfiguration` - + ### `UpdateAsset` - + ### `UpdateFutureProduct` - + ### `UpdateInstrumentConfiguration` - + ### `UpdateMarket` - + ### `UpdateMarketConfiguration` - + ### `UpdateMarketState` - + ### `UpdateMarketStateConfiguration` - + ### `UpdateNetworkParameter` - + ### `UpdatePerpetualProduct` - + ### `UpdateReferralProgram` - + ### `UpdateSpotMarket` - + ### `UpdateSpotMarketConfiguration` - + ### `UpdateVolumeDiscountProgram` - + ### `VolumeDiscountProgramChanges` - + ### `Vote` - + + + +### `Vote.PerMarketEquityLikeShareWeightEntry` + --- ## Enums +### `GovernanceData.Type` + + + ### `GovernanceTransferType` - + ### `MarketStateUpdateType` - + ### `Proposal.State` -\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","values":[{"name":"STATE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"STATE_FAILED","number":"1","description":"Proposal enactment has failed - even though proposal has passed, its execution could not be performed"},{"name":"STATE_OPEN","number":"2","description":"Proposal is open for voting"},{"name":"STATE_PASSED","number":"3","description":"Proposal has gained enough support to be executed"},{"name":"STATE_REJECTED","number":"4","description":"Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements."},{"name":"STATE_DECLINED","number":"5","description":"Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level."},{"name":"STATE_ENACTED","number":"6","description":"Proposal enacted"},{"name":"STATE_WAITING_FOR_NODE_VOTE","number":"7","description":"Waiting for node validation of the proposal"}]}} /> +\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","values":[{"name":"STATE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"STATE_FAILED","number":"1","description":"Proposal enactment has failed - even though proposal has passed, its execution could not be performed"},{"name":"STATE_OPEN","number":"2","description":"Proposal is open for voting"},{"name":"STATE_PASSED","number":"3","description":"Proposal has gained enough support to be executed"},{"name":"STATE_REJECTED","number":"4","description":"Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements."},{"name":"STATE_DECLINED","number":"5","description":"Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level."},{"name":"STATE_ENACTED","number":"6","description":"Proposal enacted."},{"name":"STATE_WAITING_FOR_NODE_VOTE","number":"7","description":"Waiting for node validation of the proposal"}]}} /> ### `ProposalError` - + ### `Vote.Value` - + --- diff --git a/docs/api/grpc/vega/markets.proto.mdx b/docs/api/grpc/vega/markets.proto.mdx index 99c2aefa4..17063ba7b 100644 --- a/docs/api/grpc/vega/markets.proto.mdx +++ b/docs/api/grpc/vega/markets.proto.mdx @@ -21,111 +21,131 @@ _**package** vega_ 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"duration","description":"Duration of the auction in seconds.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume","description":"Target uncrossing trading volume.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}} /> +### `CompositePriceConfiguration` + + + ### `DataSourceSpecToFutureBinding` - + ### `DataSourceSpecToPerpetualBinding` - + ### `FeeFactors` - + ### `Fees` - + ### `Future` - + ### `Instrument` - + ### `InstrumentMetadata` - + + + +### `LiquidationStrategy` + + + +### `LiquidityFeeSettings` + ### `LiquidityMonitoringParameters` - + ### `LiquiditySLAParameters` - + ### `LogNormalModelParams` - + ### `LogNormalRiskModel` - + ### `MarginCalculator` - + ### `Market` - + ### `MarketTimestamps` - + ### `Perpetual` - + ### `PriceMonitoringParameters` - + ### `PriceMonitoringSettings` - + ### `PriceMonitoringTrigger` - + ### `ScalingFactors` - + ### `SimpleModelParams` - + ### `SimpleRiskModel` - + ### `Spot` - + ### `TargetStakeParameters` - + ### `TradableInstrument` - + --- ## Enums +### `CompositePriceType` + + + +### `LiquidityFeeSettings.Method` + + + ### `Market.State` - + ### `Market.TradingMode` - + --- diff --git a/docs/api/grpc/vega/vega.proto.mdx b/docs/api/grpc/vega/vega.proto.mdx index 4e435e956..3bc9d403a 100644 --- a/docs/api/grpc/vega/vega.proto.mdx +++ b/docs/api/grpc/vega/vega.proto.mdx @@ -93,235 +93,255 @@ _**package** vega_ +### `EthereumL2Config` + + + +### `EthereumL2Configs` + + + ### `Fee` - + ### `FinancialAmount` - + ### `IcebergOrder` - + ### `KeyValueBundle` - + ### `LedgerEntry` - + ### `LedgerMovement` - + ### `LiquidityOrder` - + ### `LiquidityOrderReference` - + ### `LiquidityProviderFeeShare` - + ### `LiquidityProviderSLA` - + ### `LiquidityProvision` - + ### `MarginLevels` - + ### `MarketData` - + ### `MarketDepth` - + ### `MarketDepthUpdate` - + ### `MatrixValue` - + + + +### `Metadata` + ### `NetworkLimits` - + ### `NetworkParameter` - + ### `Node` - + ### `NodeData` - + ### `NodeSet` - + ### `Order` - + ### `OrderCancellationConfirmation` - + ### `OrderConfirmation` - + ### `Party` - + + + +### `PartyProfile` + ### `PeggedOrder` - + ### `PerpetualData` - + ### `Position` - + ### `PositionTrade` - + ### `PostTransferBalance` - + ### `PriceLevel` - + ### `PriceMonitoringBounds` - + ### `ProductData` - + ### `Rank` - + ### `RankingScore` - + ### `ReferralProgram` - + ### `Reward` - + ### `RewardScore` - + ### `RewardSummary` - + ### `RiskFactor` - + ### `ScalarValue` - + ### `StakingTier` - + ### `StateValueProposal` - + ### `StateVarValue` - + ### `StopOrder` - + + + +### `StopOrder.SizeOverrideValue` + ### `Trade` - + ### `TradeSet` - + ### `Transfer` - + ### `TransferRequest` - + ### `VectorValue` - + ### `VestingBenefitTier` - + ### `VestingBenefitTiers` - + ### `VolumeBenefitTier` - + ### `VolumeDiscountProgram` - + ### `WithdrawExt` - + ### `Withdrawal` - + --- ## Enums ### `AccountType` - + ### `AuctionTrigger` @@ -357,75 +377,83 @@ _**package** vega_ ### `Interval` - + ### `LiquidityProvision.Status` +### `MarginMode` + + + ### `NodeStatus` - + ### `Order.Status` - + ### `Order.TimeInForce` - + ### `Order.Type` - + ### `OrderError` -= 0"},{"name":"ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","number":"41","description":"Sell pegged order cannot reference best bid price"},{"name":"ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","number":"42","description":"Pegged order offset must be > zero"},{"name":"ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","number":"43","description":"Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)"},{"name":"ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","number":"44","description":"Cannot amend details of a non pegged details"},{"name":"ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","number":"45","description":"Could not re-price a pegged order because a market price is unavailable"},{"name":"ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","number":"46","description":"It is not possible to amend the price of an existing pegged order"},{"name":"ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","number":"47","description":"FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds"},{"name":"ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","number":"48","description":"Unable to submit pegged order, temporarily too many pegged orders across all markets"},{"name":"ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","number":"49","description":"Post order would trade"},{"name":"ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","number":"50","description":"Post order would trade"}]}} /> += 0"},{"name":"ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","number":"41","description":"Sell pegged order cannot reference best bid price"},{"name":"ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","number":"42","description":"Pegged order offset must be > zero"},{"name":"ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","number":"43","description":"Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)"},{"name":"ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","number":"44","description":"Cannot amend details of a non pegged details"},{"name":"ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","number":"45","description":"Could not re-price a pegged order because a market price is unavailable"},{"name":"ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","number":"46","description":"It is not possible to amend the price of an existing pegged order"},{"name":"ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","number":"47","description":"FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds"},{"name":"ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","number":"48","description":"Unable to submit pegged order, temporarily too many pegged orders across all markets"},{"name":"ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","number":"49","description":"Post order would trade"},{"name":"ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","number":"50","description":"Post order would trade"},{"name":"ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","number":"51","description":"Isolated margin check failed"},{"name":"ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE","number":"52","description":"In isolated margin pegged orders are rejected"}]}} /> ### `PeggedReference` - + ### `PositionStatus` - + ### `Side` - + ### `StopOrder.ExpiryStrategy` - + ### `StopOrder.RejectionReason` - + + + +### `StopOrder.SizeOverrideSetting` + ### `StopOrder.Status` - + ### `StopOrder.TriggerDirection` - + ### `Trade.Type` - + ### `TransferType` - + ### `ValidatorNodeStatus` - + ### `Withdrawal.Status` - + --- diff --git a/docs/api/grpc/vega/wallet/v1/wallet.proto.mdx b/docs/api/grpc/vega/wallet/v1/wallet.proto.mdx index af4dabf47..6b8ee2801 100644 --- a/docs/api/grpc/vega/wallet/v1/wallet.proto.mdx +++ b/docs/api/grpc/vega/wallet/v1/wallet.proto.mdx @@ -18,7 +18,7 @@ _**package** vega.wallet.v1_ ### `SubmitTransactionRequest` - + --- diff --git a/docs/api/rest/core/core-service-check-raw-transaction.api.mdx b/docs/api/rest/core/core-service-check-raw-transaction.api.mdx index 1649a5a4f..e2dfaba57 100644 --- a/docs/api/rest/core/core-service-check-raw-transaction.api.mdx +++ b/docs/api/rest/core/core-service-check-raw-transaction.api.mdx @@ -6,7 +6,7 @@ This is useful for checking the validity of a potential transaction before submi sidebar_label: "Check raw transaction" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"info":{"title":"Unused","type":"string"},"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully checked.","type":"string"},"gasUsed":{"description":"Unused.","format":"int64","type":"string"},"gasWanted":{"description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction passed the submission checks.","type":"boolean"}},"title":"Response for checking a version agnostic transaction on Vega","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Send a pre-serialised transaction containing a command to the network to be checked, but then not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","operationId":"CoreService_CheckRawTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"format":"byte","required":["tx"],"title":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that would be submitted to the Vega blockchain","type":"string"}},"required":["tx"],"title":"Request for checking a version agnostic transaction on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction/raw/check","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"jsonRequestBodyExample":{"tx":"string"},"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Check raw transaction","description":{"content":"Send a pre-serialised transaction containing a command to the network to be checked, but then not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","type":"text/plain"},"url":{"path":["transaction","raw","check"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"info":{"title":"Unused","type":"string"},"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully checked.","type":"string"},"gasUsed":{"description":"Unused.","format":"int64","type":"string"},"gasWanted":{"description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction passed the submission checks.","type":"boolean"}},"title":"Response for checking a version agnostic transaction on Vega","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Send a pre-serialised transaction containing a command to the network to be checked, but then not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","operationId":"CoreService_CheckRawTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"format":"byte","required":["tx"],"title":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that would be submitted to the Vega blockchain","type":"string"}},"required":["tx"],"title":"Request for checking a version agnostic transaction on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction/raw/check","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"jsonRequestBodyExample":{"tx":"string"},"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Check raw transaction","description":{"content":"Send a pre-serialised transaction containing a command to the network to be checked, but then not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","type":"text/plain"},"url":{"path":["transaction","raw","check"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} sidebar_class_name: "post api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Check raw transaction' (core-service-check-raw-transaction)" diff --git a/docs/api/rest/core/core-service-check-transaction.api.mdx b/docs/api/rest/core/core-service-check-transaction.api.mdx index db9bcaabd..e9c90ec97 100644 --- a/docs/api/rest/core/core-service-check-transaction.api.mdx +++ b/docs/api/rest/core/core-service-check-transaction.api.mdx @@ -6,7 +6,7 @@ This is useful for checking the validity of a potential transaction before submi sidebar_label: "Check transaction" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"info":{"description":"Unused.","type":"string"},"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully checked.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"gasUsed":{"description":"Unused.","format":"int64","type":"string"},"gasWanted":{"description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction passed the submission checks.","type":"boolean"}},"type":"object","title":"v1CheckTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Send a signed transaction containing a command to the network to be checked, but not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","operationId":"CoreService_CheckTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"description":"Transaction containing a command to be checked on the network, and not added to the chain's mempool.","properties":{"address":{"description":"Hex-encoded address of the sender. Not supported yet.","type":"string"},"inputData":{"description":"Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`.","format":"byte","type":"string"},"pow":{"description":"Proof-of-work containing the random transaction ID used by the client and the nonce.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object","title":"v1ProofOfWork"},"pubKey":{"description":"Hex-encoded public key of the sender.","type":"string"},"signature":{"description":"Signature of the input data field, signed by the sender of this transaction.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"version":{"description":"Version of the transaction.","default":"TX_VERSION_UNSPECIFIED","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string","title":"v1TxVersion"}},"type":"object","title":"v1Transaction"}},"title":"Request for checking a transaction v2 on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction/check","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"jsonRequestBodyExample":{"tx":{"address":"string","inputData":"string","pow":{"nonce":"string","tid":"string"},"pubKey":"string","signature":{"algo":"string","value":"string","version":0},"version":"TX_VERSION_UNSPECIFIED"}},"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Check transaction","description":{"content":"Send a signed transaction containing a command to the network to be checked, but not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","type":"text/plain"},"url":{"path":["transaction","check"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"info":{"description":"Unused.","type":"string"},"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully checked.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"gasUsed":{"description":"Unused.","format":"int64","type":"string"},"gasWanted":{"description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction passed the submission checks.","type":"boolean"}},"type":"object","title":"v1CheckTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Send a signed transaction containing a command to the network to be checked, but not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","operationId":"CoreService_CheckTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"description":"Transaction containing a command to be checked on the network, and not added to the chain's mempool.","properties":{"address":{"description":"Hex-encoded address of the sender. Not supported yet.","type":"string"},"inputData":{"description":"Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`.","format":"byte","type":"string"},"pow":{"description":"Proof-of-work containing the random transaction ID used by the client and the nonce.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object","title":"v1ProofOfWork"},"pubKey":{"description":"Hex-encoded public key of the sender.","type":"string"},"signature":{"description":"Signature of the input data field, signed by the sender of this transaction.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"version":{"description":"Version of the transaction.","default":"TX_VERSION_UNSPECIFIED","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string","title":"v1TxVersion"}},"type":"object","title":"v1Transaction"}},"title":"Request for checking a transaction v2 on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction/check","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"jsonRequestBodyExample":{"tx":{"address":"string","inputData":"string","pow":{"nonce":"string","tid":"string"},"pubKey":"string","signature":{"algo":"string","value":"string","version":0},"version":"TX_VERSION_UNSPECIFIED"}},"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Check transaction","description":{"content":"Send a signed transaction containing a command to the network to be checked, but not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","type":"text/plain"},"url":{"path":["transaction","check"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} sidebar_class_name: "post api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Check transaction' (core-service-check-transaction)" diff --git a/docs/api/rest/core/core-service-get-spam-statistics.api.mdx b/docs/api/rest/core/core-service-get-spam-statistics.api.mdx index e3c1e7198..8d998756b 100644 --- a/docs/api/rest/core/core-service-get-spam-statistics.api.mdx +++ b/docs/api/rest/core/core-service-get-spam-statistics.api.mdx @@ -5,7 +5,7 @@ description: "Get the spam statistics for a given party." sidebar_label: "Get Spam statistics" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party ID whose statistics are requested","in":"path","name":"partyId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"chainId":{"description":"Chain ID for which the statistics are captured.","type":"string"},"statistics":{"title":"Spam statistics for the party","properties":{"applyReferralCode":{"description":"Statistics for transactions made by the party to apply referral codes.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"createReferralSet":{"description":"Statistics for transactions made by the party to create referral sets.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"delegations":{"description":"Statistics for delegation transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"epochSeq":{"description":"Epoch in which these statistics apply to.","format":"uint64","type":"string"},"issueSignatures":{"description":"Statistics for multisig signatures issued for the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"nodeAnnouncements":{"description":"Statistics for node announcement transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"pow":{"description":"Statistics for proof of work difficulty observed per block for the party.","properties":{"bannedUntil":{"title":"PoW banned until timestamp as RFC3339Nano","type":"string"},"blockStates":{"items":{"properties":{"blockHash":{"title":"Hash of the current block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height for the current Proof of Work state statistics","type":"string"},"difficulty":{"format":"uint64","title":"Base difficulty for this block for when transactions seen < tx_per_block","type":"string"},"expectedDifficulty":{"description":"This is the minimum required difficulty for the next transaction submitted on this block\nif it is possible to submit more transactions on this block, otherwise nil.","format":"uint64","type":"string"},"hashFunction":{"title":"Hashing function used to calculate the block hash","type":"string"},"increasingDifficulty":{"title":"Whether or not this block allows for increasing proof-of-work difficulty if the\ntx-per-block-hash limit has been reached","type":"boolean"},"transactionsSeen":{"format":"uint64","title":"Total number of transactions seen in the block","type":"string"},"txPerBlock":{"format":"uint64","title":"Number of transactions that can have their proof-of-work calculated with this block hash before\neither the difficulty increases, or no more transactions can use this block hash","type":"string"}},"title":"Proof of Work state for a given block","type":"object"},"title":"Block state for each block in scope for PoW calculation","type":"array"},"numberOfPastBlocks":{"format":"uint64","title":"Number of block behind the current block whose hash can be used for proof-of-work calculations","type":"string"}},"title":"Proof of work statistics for a party","type":"object"},"proposals":{"description":"Statistics for proposal transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"transfers":{"description":"Statistics for transfer transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"updateReferralSet":{"description":"Statistics for transactions made by the party to update referral sets.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"votes":{"description":"Statistics for proposal votes made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of votes per proposal allowed in an epoch","type":"string"},"statistics":{"items":{"description":"Vote statistics for the voting spam policies\nwhich are calculated as a ratio of the total votes\nthat have been rejected.","properties":{"countForEpoch":{"format":"uint64","title":"Current vote count received from the party for the given proposal during this epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to vote on the proposal","type":"string"},"proposal":{"description":"Unique ID of the proposal being voted on by the party.","type":"string"}},"type":"object","title":"v1VoteSpamStatistic"},"title":"List of statistics for proposals voted on by the party","type":"array"}},"title":"Voting statistics by proposal for a given party for the current epoch","type":"object"}},"type":"object"}},"title":"Response containing all the spam statistics of a party for the current epoch","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get the spam statistics for a given party.","operationId":"CoreService_GetSpamStatistics","method":"get","path":"/statistics/spam/{partyId}","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Get Spam statistics","description":{"content":"Get the spam statistics for a given party.","type":"text/plain"},"url":{"path":["statistics","spam",":partyId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID whose statistics are requested","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party ID whose statistics are requested","in":"path","name":"partyId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"chainId":{"description":"Chain ID for which the statistics are captured.","type":"string"},"statistics":{"title":"Spam statistics for the party","properties":{"applyReferralCode":{"description":"Statistics for transactions made by the party to apply referral codes.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"createReferralSet":{"description":"Statistics for transactions made by the party to create referral sets.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"delegations":{"description":"Statistics for delegation transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"epochSeq":{"description":"Epoch in which these statistics apply to.","format":"uint64","type":"string"},"issueSignatures":{"description":"Statistics for multisig signatures issued for the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"nodeAnnouncements":{"description":"Statistics for node announcement transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"pow":{"description":"Statistics for proof of work difficulty observed per block for the party.","properties":{"bannedUntil":{"title":"PoW banned until timestamp as RFC3339Nano","type":"string"},"blockStates":{"items":{"properties":{"blockHash":{"title":"Hash of the current block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height for the current Proof of Work state statistics","type":"string"},"difficulty":{"format":"uint64","title":"Base difficulty for this block for when transactions seen < tx_per_block","type":"string"},"expectedDifficulty":{"description":"This is the minimum required difficulty for the next transaction submitted on this block\nif it is possible to submit more transactions on this block, otherwise nil.","format":"uint64","type":"string"},"hashFunction":{"title":"Hashing function used to calculate the block hash","type":"string"},"increasingDifficulty":{"title":"Whether or not this block allows for increasing proof-of-work difficulty if the\ntx-per-block-hash limit has been reached","type":"boolean"},"transactionsSeen":{"format":"uint64","title":"Total number of transactions seen in the block","type":"string"},"txPerBlock":{"format":"uint64","title":"Number of transactions that can have their proof-of-work calculated with this block hash before\neither the difficulty increases, or no more transactions can use this block hash","type":"string"}},"title":"Proof of Work state for a given block","type":"object"},"title":"Block state for each block in scope for PoW calculation","type":"array"},"numberOfPastBlocks":{"format":"uint64","title":"Number of block behind the current block whose hash can be used for proof-of-work calculations","type":"string"}},"title":"Proof of work statistics for a party","type":"object"},"proposals":{"description":"Statistics for proposal transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"transfers":{"description":"Statistics for transfer transactions made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"updateReferralSet":{"description":"Statistics for transactions made by the party to update referral sets.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"votes":{"description":"Statistics for proposal votes made by the party.","properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of votes per proposal allowed in an epoch","type":"string"},"statistics":{"items":{"description":"Vote statistics for the voting spam policies\nwhich are calculated as a ratio of the total votes\nthat have been rejected.","properties":{"countForEpoch":{"format":"uint64","title":"Current vote count received from the party for the given proposal during this epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to vote on the proposal","type":"string"},"proposal":{"description":"Unique ID of the proposal being voted on by the party.","type":"string"}},"type":"object","title":"v1VoteSpamStatistic"},"title":"List of statistics for proposals voted on by the party","type":"array"}},"title":"Voting statistics by proposal for a given party for the current epoch","type":"object"}},"type":"object"}},"title":"Response containing all the spam statistics of a party for the current epoch","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get the spam statistics for a given party.","operationId":"CoreService_GetSpamStatistics","method":"get","path":"/statistics/spam/{partyId}","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get Spam statistics","description":{"content":"Get the spam statistics for a given party.","type":"text/plain"},"url":{"path":["statistics","spam",":partyId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID whose statistics are requested","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get Spam statistics' (core-service-get-spam-statistics)" diff --git a/docs/api/rest/core/core-service-get-vega-time.api.mdx b/docs/api/rest/core/core-service-get-vega-time.api.mdx index 6b486d988..c11088f74 100644 --- a/docs/api/rest/core/core-service-get-vega-time.api.mdx +++ b/docs/api/rest/core/core-service-get-vega-time.api.mdx @@ -5,7 +5,7 @@ description: "Get current Vega time" sidebar_label: "Vega time" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"timestamp":{"format":"int64","title":"Timestamp representation of current VegaTime as represented in\nUnix nanoseconds, for example `1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`","type":"string"}},"title":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get current Vega time","operationId":"CoreService_GetVegaTime","method":"get","path":"/time","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Vega time","description":{"content":"Get current Vega time","type":"text/plain"},"url":{"path":["time"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"timestamp":{"format":"int64","title":"Timestamp representation of current VegaTime as represented in\nUnix nanoseconds, for example `1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`","type":"string"}},"title":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get current Vega time","operationId":"CoreService_GetVegaTime","method":"get","path":"/time","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Vega time","description":{"content":"Get current Vega time","type":"text/plain"},"url":{"path":["time"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Vega time' (core-service-get-vega-time)" diff --git a/docs/api/rest/core/core-service-last-block-height.api.mdx b/docs/api/rest/core/core-service-last-block-height.api.mdx index 34ce0be95..8b6347871 100644 --- a/docs/api/rest/core/core-service-last-block-height.api.mdx +++ b/docs/api/rest/core/core-service-last-block-height.api.mdx @@ -5,7 +5,7 @@ description: "Get the height of the last tendermint block" sidebar_label: "Blockchain height" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"chainId":{"title":"Network chain id from which the block comes from","type":"string"},"hash":{"title":"Last block hash","type":"string"},"height":{"format":"uint64","title":"Last block height","type":"string"},"spamPowDifficulty":{"format":"int64","title":"Difficulty of the proof of work, i.e. the target number of zeros","type":"integer"},"spamPowHashFunction":{"title":"Supported proof of work hash function","type":"string"},"spamPowIncreasingDifficulty":{"title":"Boolean indicating whether increasing difficulty is allowed for using the\nsame height for more than `spam_pow_number_of_past_blocks` transactions","type":"boolean"},"spamPowNumberOfPastBlocks":{"format":"int64","title":"Supported proof of work number of blocks behind current height allowed","type":"integer"},"spamPowNumberOfTxPerBlock":{"format":"int64","title":"Allowed number of transactions per block","type":"integer"}},"title":"Response with the height of the last block processed by\ntendermint","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get the height of the last tendermint block","operationId":"CoreService_LastBlockHeight","method":"get","path":"/blockchain/height","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Blockchain height","description":{"content":"Get the height of the last tendermint block","type":"text/plain"},"url":{"path":["blockchain","height"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"chainId":{"title":"Network chain id from which the block comes from","type":"string"},"hash":{"title":"Last block hash","type":"string"},"height":{"format":"uint64","title":"Last block height","type":"string"},"spamPowDifficulty":{"format":"int64","title":"Difficulty of the proof of work, i.e. the target number of zeros","type":"integer"},"spamPowHashFunction":{"title":"Supported proof of work hash function","type":"string"},"spamPowIncreasingDifficulty":{"title":"Boolean indicating whether increasing difficulty is allowed for using the\nsame height for more than `spam_pow_number_of_past_blocks` transactions","type":"boolean"},"spamPowNumberOfPastBlocks":{"format":"int64","title":"Supported proof of work number of blocks behind current height allowed","type":"integer"},"spamPowNumberOfTxPerBlock":{"format":"int64","title":"Allowed number of transactions per block","type":"integer"}},"title":"Response with the height of the last block processed by\ntendermint","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get the height of the last tendermint block","operationId":"CoreService_LastBlockHeight","method":"get","path":"/blockchain/height","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Blockchain height","description":{"content":"Get the height of the last tendermint block","type":"text/plain"},"url":{"path":["blockchain","height"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Blockchain height' (core-service-last-block-height)" diff --git a/docs/api/rest/core/core-service-observe-event-bus.api.mdx b/docs/api/rest/core/core-service-observe-event-bus.api.mdx index 6f480cdc0..d619500ce 100644 --- a/docs/api/rest/core/core-service-observe-event-bus.api.mdx +++ b/docs/api/rest/core/core-service-observe-event-bus.api.mdx @@ -5,7 +5,7 @@ description: "Subscribe to a stream of events from the core" sidebar_label: "Events subscription" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","explode":true,"in":"query","name":"type","required":false,"schema":{"items":{"enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"type":"array"}},{"description":"Market ID to filter events for, optional field. If omitted, no markets will be filtered out.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter events for, optional field. If omitted, no parties will be filtered out.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Batch size, optional field -\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","in":"query","name":"batchSize","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"events":{"description":"One or more events that match the subscription request criteria.","items":{"properties":{"account":{"title":"Account events","properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.","type":"string"},"id":{"description":"Unique account ID, used internally by Vega.","type":"string"},"marketId":{"description":"Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.","type":"string"},"owner":{"description":"Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.","type":"string"},"type":{"description":"Account type related to this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"asset":{"title":"Asset events","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"type":"object"},"auction":{"title":"Auction events","properties":{"end":{"format":"int64","title":"Timestamp containing the end time for an auction","type":"string"},"extensionTrigger":{"title":"If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"},"leave":{"title":"True if the event indicates leaving auction mode and False otherwise","type":"boolean"},"marketId":{"title":"Market ID for the event","type":"string"},"openingAuction":{"title":"True if the event indicates an auction opening and False otherwise","type":"boolean"},"start":{"format":"int64","title":"Timestamp containing the start time for an auction","type":"string"},"trigger":{"title":"Reason this market is/was in auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"}},"type":"object"},"beginBlock":{"title":"Core is starting to process a new block","properties":{"hash":{"type":"string"},"height":{"format":"uint64","type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"block":{"title":"The batch or block of transactions that the events relate to","type":"string"},"chainId":{"type":"string"},"checkpoint":{"title":"Checkpoint was created","properties":{"blockHash":{"type":"string"},"blockHeight":{"format":"uint64","type":"string"},"hash":{"type":"string"}},"type":"object"},"coreSnapshotEvent":{"title":"Core snapshot has been taken at the end of the block","description":"CoreSnapshotData represents the core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object"},"delegationBalance":{"title":"Delegation balance events","properties":{"amount":{"type":"string"},"epochSeq":{"type":"string"},"nodeId":{"type":"string"},"party":{"type":"string"}},"type":"object"},"deposit":{"title":"Deposit events","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"type":"object"},"distressedOrders":{"title":"Parties that had their orders closed because they were distressed","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"parties":{"items":{"type":"string"},"title":"Slice of Party IDs i.e. each party's public key for the event","type":"array"}},"type":"object"},"distressedPositions":{"title":"Open positions on the market that are/were distressed","description":"Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.","properties":{"distressedParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, that are distressed but still have open volume","type":"array"},"marketId":{"title":"Market ID for the event","type":"string"},"safeParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position","type":"array"}},"type":"object"},"endBlock":{"title":"Core finished processing a block","properties":{"height":{"format":"uint64","type":"string"}},"type":"object"},"epochEvent":{"title":"Epoch update events","properties":{"action":{"title":"Action tells us what action is taking place","default":"EPOCH_ACTION_UNSPECIFIED","description":"- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.","enum":["EPOCH_ACTION_UNSPECIFIED","EPOCH_ACTION_START","EPOCH_ACTION_END"],"type":"string"},"endTime":{"format":"int64","title":"Vega time at which this epoch actually ended","type":"string"},"expireTime":{"format":"int64","title":"Vega time at which this epoch should end","type":"string"},"seq":{"format":"uint64","title":"Sequence number that increases by one each epoch","type":"string"},"startTime":{"format":"int64","title":"Vega time at which this epoch started","type":"string"}},"type":"object"},"erc20MultisigSetThresholdEvent":{"title":"ERC20 multi sig set threshold event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"newThreshold":{"format":"int64","type":"integer"},"nonce":{"type":"string"},"txHash":{"type":"string"}},"type":"object"},"erc20MultisigSignerAdded":{"title":"ERC20 multi sig signer added","properties":{"epochSeq":{"title":"Epoch that the node was added for","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"signatureId":{"title":"ID of the signature bundle","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node to be added","type":"string"}},"type":"object"},"erc20MultisigSignerEvent":{"title":"ERC20 multi sig signer event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"nonce":{"type":"string"},"signer":{"type":"string"},"txHash":{"type":"string"},"type":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ADDED","TYPE_REMOVED"],"type":"string","title":"v1ERC20MultiSigSignerEventType"}},"type":"object"},"erc20MultisigSignerRemoved":{"title":"ERC20 multi sig signer removed","properties":{"epochSeq":{"title":"Epoch that the node was removed for","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"oldSigner":{"title":"Ethereum address of the signer to be removed","type":"string"},"signatureSubmitters":{"items":{"properties":{"signatureId":{"description":"Signature ID of the signer removed.","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"}},"type":"object","title":"v1ERC20MultiSigSignerRemovedSubmitter"},"title":"List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set","type":"array"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node which is to be removed","type":"string"}},"type":"object"},"ethereumKeyRotation":{"title":"Ethereum key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"type":"object"},"expiredOrders":{"title":"Orders that expired for a given market","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"orderIds":{"items":{"type":"string"},"title":"Slice of expired order IDs","type":"array"}},"type":"object"},"feesStats":{"description":"Event notifying of an update the fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"},"fundingPayments":{"description":"Event notifying of funding payments at the end of a funding period.","properties":{"marketId":{"description":"ID of the market.","type":"string"},"payments":{"description":"List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.","items":{"description":"The amount gained or lost by a party as a result of a funding payment.","properties":{"amount":{"description":"The amount paid, this can be negative for parties who lost at the end of the funding period.","type":"string"},"partyId":{"description":"ID of the party.","type":"string"}},"type":"object","title":"v1FundingPayment"},"type":"array"},"seq":{"description":"Sequence number of the funding period associated with these payments.","format":"uint64","type":"string"}},"type":"object","title":"v1FundingPayments"},"fundingPeriod":{"description":"Start or end of a funding period.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object","title":"v1FundingPeriod"},"fundingPeriodDataPoint":{"description":"Data point within a funding period.","properties":{"dataPointType":{"description":"Origin of the data point.","default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string","title":"FundingPeriodDataPointSource"},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object","title":"v1FundingPeriodDataPoint"},"id":{"title":"Unique event ID for the message","type":"string"},"keyRotation":{"title":"Key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"type":"object"},"ledgerMovements":{"title":"Transfer responses update events","properties":{"ledgerMovements":{"items":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"properties":{"account":{"description":"Account relating to the transfer.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"description":"One or more accounts to transfer from.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"description":"One or more accounts to transfer to.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"type":{"description":"Transfer type for this entry.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents a ledger entry on Vega","type":"object"},"type":"array"}},"type":"object","title":"vegaLedgerMovement"},"title":"One or more entries containing internal transfer information","type":"array"}},"type":"object"},"liquidityProvision":{"title":"LiquidityProvision events","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"type":"object"},"lossSocialization":{"title":"Loss socialization events","properties":{"amount":{"title":"Amount distributed","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"}},"type":"object"},"marginLevels":{"title":"Margin level update events","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"type":"object"},"market":{"title":"Market tick events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"payload":{"title":"Payload is a unique information string","type":"string"}},"type":"object"},"marketCreated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"marketData":{"title":"Market data events","properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"type":"object"},"marketTick":{"title":"Market tick events","properties":{"id":{"title":"Market ID for the event","type":"string"},"time":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"marketUpdated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"networkLimits":{"title":"Network limits events","properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"type":"object"},"networkParameter":{"title":"Network parameter events","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"type":"object"},"nodeSignature":{"title":"Node signature events","description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object"},"oracleData":{"title":"OracleData events","properties":{"externalData":{"properties":{"data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"v1Data"}},"type":"object","title":"v1ExternalData"}},"type":"object"},"oracleSpec":{"title":"OracleSpec events","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"type":"object"},"order":{"title":"Order events","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"type":"object"},"paidLiquidityFeesStats":{"description":"Event notifying of an update to the liqudity fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid accross all parties.","type":"string"}},"type":"object","title":"v1PaidLiquidityFeesStats"},"party":{"title":"Party events","properties":{"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"}},"type":"object"},"partyActivityStreak":{"title":"Event notifying of an update to a party's activity streak","properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"type":"object"},"positionResolution":{"title":"Position resolution events","properties":{"closed":{"format":"int64","title":"Number of close outs","type":"string"},"distressed":{"format":"int64","title":"Number of distressed traders","type":"string"},"markPrice":{"title":"Mark price as a string representing a scaled price","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"}},"type":"object"},"positionStateEvent":{"title":"Position status for a party in a market","properties":{"marketId":{"title":"Market ID for this position update","type":"string"},"partyId":{"title":"Party ID for this position update","type":"string"},"potentialBuys":{"format":"int64","title":"Potential orders","type":"string"},"potentialSells":{"format":"int64","type":"string"},"size":{"format":"int64","title":"Current position","type":"string"},"vwBuyPrice":{"title":"Volume weighted prices","type":"string"},"vwSellPrice":{"type":"string"}},"type":"object"},"proposal":{"title":"Proposal events for governance","properties":{"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"type":"object"},"protocolUpgradeDataNodeReady":{"title":"Core snapshot has been taken at the end of the block","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"protocolUpgradeEvent":{"title":"Protocol upgrade proposal updates","properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"title":"Status of the proposal","default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object"},"protocolUpgradeStarted":{"title":"Core is starting a protocol upgrade","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"rankingEvent":{"title":"Ranking event","properties":{"epochSeq":{"title":"Epoch seq for which the status is valid","type":"string"},"nextStatus":{"title":"Status of the validator in the next epoch","type":"string"},"nodeId":{"type":"string"},"performanceScore":{"title":"Performance base score","type":"string"},"previousStatus":{"title":"Status of the validator in the previous epoch","type":"string"},"rankingScore":{"title":"Final score","type":"string"},"stakeScore":{"title":"Stake based score - no anti-whaling","type":"string"},"tmVotingPower":{"format":"int64","title":"Tendermint voting power of the validator","type":"integer"}},"type":"object"},"refereeJoinedReferralSet":{"description":"Event notifying a referee has joined a referral set.","properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"setId":{"description":"Unique ID of the referral set the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedReferralSet"},"refereeJoinedTeam":{"description":"Event notifying that a referee joined a team.","properties":{"atEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined a team.","format":"int64","type":"string"},"referee":{"description":"The party that joined the team.","type":"string"},"teamId":{"description":"The unique identifier of the team the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedTeam"},"refereeSwitchedTeam":{"description":"Event notifying that a referee switched teams.","properties":{"atEpoch":{"description":"Epoch at which the party switched the team.","format":"uint64","type":"string"},"fromTeamId":{"description":"The unique identifier of the team the referee left.","type":"string"},"referee":{"description":"The party that switched team.","type":"string"},"switchedAt":{"description":"Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.","format":"int64","type":"string"},"toTeamId":{"description":"The unique identifier of the team joined.","type":"string"}},"type":"object","title":"v1RefereeSwitchedTeam"},"referralProgramEnded":{"description":"Event notifying that a referral program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the referral program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1ReferralProgramEnded"},"referralProgramStarted":{"description":"Event notifying that a referral program has started.","properties":{"atEpoch":{"description":"Epoch at which the referral program started.","format":"uint64","type":"string"},"program":{"description":"Referral program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the referral program started.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramStarted"},"referralProgramUpdated":{"description":"Event notifying that a referral program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the referral program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the referral program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramUpdated"},"referralSetCreated":{"description":"Event notifying a referral set has been created.","properties":{"createdAt":{"description":"Time in Unix nanoseconds when the set was created.","format":"int64","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"setId":{"description":"Unique ID of the created set.","type":"string"},"updatedAt":{"description":"Time in Unix nanoseconds when the set was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralSetCreated"},"referralSetStatsUpdated":{"description":"Event notifying of an update to a referral set's statistics.","properties":{"atEpoch":{"description":"Epoch at which the set's statistics are updated.","format":"uint64","type":"string"},"refereesStats":{"description":"Referees' statistics for that epoch.","items":{"properties":{"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"title":"Current referee notional taker volume","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object","title":"v1RefereeStats"},"type":"array"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Taker volume of the referrer","type":"string"},"rewardFactor":{"description":"Reward factor applied to the trades.","type":"string"},"rewardsFactorMultiplier":{"description":"Rewards factor multiplier for the trades.","type":"string"},"rewardsMultiplier":{"description":"Rewards multiplier applied to the trades.","type":"string"},"setId":{"description":"Unique ID of the set.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object","title":"v1ReferralSetStatsUpdated"},"rewardPayout":{"title":"Reward payout event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"epochSeq":{"type":"string"},"lockedUntilEpoch":{"type":"string"},"market":{"type":"string"},"party":{"type":"string"},"percentOfTotalReward":{"type":"string"},"rewardType":{"type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"riskFactor":{"title":"Risk factor events","properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"type":"object"},"settleDistressed":{"title":"Position distressed events","properties":{"margin":{"title":"Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID i.e. a party's public key for the event","type":"string"},"price":{"title":"Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"}},"type":"object"},"settleMarket":{"title":"Settle market event for data-node to update positions for settled markets","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"}},"type":"object"},"settlePosition":{"title":"Position settlement events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"},"tradeSettlements":{"items":{"properties":{"marketPrice":{"title":"Price of settlement as a string (in market decimals)","type":"string"},"price":{"title":"Price of settlement as string (in asset decimals)","type":"string"},"size":{"format":"int64","title":"Size of trade settlement","type":"string"}},"title":"Trade settlement is part of the settle position event","type":"object"},"title":"A collection of 1 or more trade settlements","type":"array"}},"type":"object"},"stakeLinking":{"title":"Staking event","properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"type":"object"},"stateVar":{"title":"State variable consensus state transition update","properties":{"eventId":{"type":"string"},"id":{"type":"string"},"state":{"type":"string"}},"type":"object"},"stopOrder":{"title":"A stop order event","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION"],"type":"string"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object"},"teamCreated":{"title":"Event notifying of the creation of a team.m","properties":{"atEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"createdAt":{"description":"Time in Unix nanoseconds when the team is created.","format":"int64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"The party that created the team.","type":"string"},"teamId":{"description":"The unique identifier of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"teamUpdated":{"description":"Event notifying of an update to a team.","properties":{"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamId":{"description":"The unique identifier for the updated team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object","title":"v1TeamUpdated"},"timeUpdate":{"title":"Time update events","properties":{"timestamp":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"trade":{"title":"Trade events","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"type":"object"},"transactionResult":{"title":"Result of a transaction processed by the network","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"createReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"failure":{"properties":{"error":{"title":"Error message explaining the reason for the transaction failing processing","type":"string"}},"type":"object","title":"TransactionResultFailureDetails"},"hash":{"title":"Hash of the transaction","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"keyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"status":{"description":"Status of the transaction, did it succeed or an error was raised.","type":"boolean"},"stopOrderCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrderSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"success":{"type":"object","title":"TransactionResultSuccessDetails"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"transfer":{"title":"Transfer event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"transferFees":{"description":"Event notifying of fees related to a transfer being paid.","properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"txErrEvent":{"title":"Transaction error events, not included in the ALL event type","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"errMsg":{"title":"Error message describing what went wrong","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"txHash":{"type":"string"},"type":{"title":"The type of bus event. Must be one of the list below:","default":"BUS_EVENT_TYPE_UNSPECIFIED","description":"- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"validatorScore":{"title":"Validator score calculated","properties":{"epochSeq":{"type":"string"},"multisigScore":{"type":"string"},"nodeId":{"type":"string"},"normalisedScore":{"type":"string"},"rawValidatorScore":{"type":"string"},"validatorPerformance":{"type":"string"},"validatorScore":{"type":"string"},"validatorStatus":{"type":"string"}},"type":"object"},"validatorUpdate":{"title":"Validator update events","properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"type":"object"},"version":{"format":"int64","title":"Version of bus event","type":"integer"},"vestingBalancesSummary":{"description":"Event notifying of an update to the vesting and locked balances.","properties":{"epochSeq":{"description":"Epoch for which these balances are valid.","format":"uint64","type":"string"},"partiesVestingSummary":{"description":"Parties' summaries.","items":{"properties":{"party":{"description":"Party ID.","type":"string"},"partyLockedBalances":{"description":"List of locked balances.","items":{"description":"A party's locked balance for a given asset.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Locked balance.","type":"string"},"untilEpoch":{"description":"Epoch in which the balance will be released.","format":"uint64","type":"string"}},"type":"object","title":"v1PartyLockedBalance"},"type":"array"},"partyVestingBalances":{"description":"List of vesting balances.","items":{"description":"Balance that is being vested for the party.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Balance that is vested.","type":"string"}},"type":"object","title":"v1PartyVestingBalance"},"type":"array"}},"title":"Summary of a party's vesting balances","type":"object"},"type":"array"}},"title":"Summary of the vesting and locked balances for an epoch","type":"object"},"vestingStatsUpdated":{"description":"Event notifying of an update to the vesting statistics.","properties":{"atEpoch":{"description":"Epoch at which the vesting statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties stats.","items":{"description":"The vesting stats for a given party.","properties":{"partyId":{"description":"The party.","type":"string"},"quantumBalance":{"description":"The balance of the party, in quantum.","type":"string"},"rewardBonusMultiplier":{"description":"The bonus multiplier applied on the reward.","type":"string"}},"type":"object","title":"v1PartyVestingStats"},"type":"array"}},"type":"object","title":"v1VestingStatsUpdated"},"volumeDiscountProgramEnded":{"description":"Event notifying that a volume discount program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the volume discount program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramEnded"},"volumeDiscountProgramStarted":{"description":"Event notifying that a volume discount program has started.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program started.","format":"uint64","type":"string"},"program":{"description":"Volume discount program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the volume discount program started.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramStarted"},"volumeDiscountProgramUpdated":{"description":"Event notifying that a volume discount program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated volume discount program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the volume discount program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramUpdated"},"volumeDiscountStatsUpdated":{"description":"Event notifying of an update to the volume discount statistics.","properties":{"atEpoch":{"description":"Epoch at which the volume discount statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties' stats.","items":{"description":"Volume discount stats for a given party.","properties":{"discountFactor":{"description":"Discount factor applied to fees.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object","title":"v1PartyVolumeDiscountStats"},"type":"array"}},"type":"object","title":"v1VolumeDiscountStatsUpdated"},"vote":{"title":"Vote events for governance","properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object"},"withdrawal":{"title":"Withdrawal events","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"type":"object"}},"title":"Bus event is a container for event bus events emitted by Vega","type":"object"},"type":"array"}},"title":"Response to a subscribed stream of events from the Vega event bus","type":"object"}},"title":"Stream result of v1ObserveEventBusResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Subscribe to a stream of events from the core","operationId":"CoreService_ObserveEventBus","method":"get","path":"/stream/event/bus","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Events subscription","description":{"content":"Subscribe to a stream of events from the core","type":"text/plain"},"url":{"path":["stream","event","bus"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","type":"text/plain"},"key":"type","value":""},{"disabled":false,"description":{"content":"Market ID to filter events for, optional field. If omitted, no markets will be filtered out.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to filter events for, optional field. If omitted, no parties will be filtered out.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Batch size, optional field -\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","type":"text/plain"},"key":"batchSize","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","explode":true,"in":"query","name":"type","required":false,"schema":{"items":{"enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"type":"array"}},{"description":"Market ID to filter events for, optional field. If omitted, no markets will be filtered out.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter events for, optional field. If omitted, no parties will be filtered out.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Batch size, optional field -\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","in":"query","name":"batchSize","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"events":{"description":"One or more events that match the subscription request criteria.","items":{"properties":{"account":{"title":"Account events","properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.","type":"string"},"id":{"description":"Unique account ID, used internally by Vega.","type":"string"},"marketId":{"description":"Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.","type":"string"},"owner":{"description":"Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.","type":"string"},"type":{"description":"Account type related to this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"asset":{"title":"Asset events","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"type":"object"},"auction":{"title":"Auction events","properties":{"end":{"format":"int64","title":"Timestamp containing the end time for an auction","type":"string"},"extensionTrigger":{"title":"If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"},"leave":{"title":"True if the event indicates leaving auction mode and False otherwise","type":"boolean"},"marketId":{"title":"Market ID for the event","type":"string"},"openingAuction":{"title":"True if the event indicates an auction opening and False otherwise","type":"boolean"},"start":{"format":"int64","title":"Timestamp containing the start time for an auction","type":"string"},"trigger":{"title":"Reason this market is/was in auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"}},"type":"object"},"beginBlock":{"title":"Core is starting to process a new block","properties":{"hash":{"type":"string"},"height":{"format":"uint64","type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"block":{"title":"The batch or block of transactions that the events relate to","type":"string"},"chainId":{"type":"string"},"checkpoint":{"title":"Checkpoint was created","properties":{"blockHash":{"type":"string"},"blockHeight":{"format":"uint64","type":"string"},"hash":{"type":"string"}},"type":"object"},"coreSnapshotEvent":{"title":"Core snapshot has been taken at the end of the block","description":"CoreSnapshotData represents the core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object"},"delegationBalance":{"title":"Delegation balance events","properties":{"amount":{"type":"string"},"epochSeq":{"type":"string"},"nodeId":{"type":"string"},"party":{"type":"string"}},"type":"object"},"deposit":{"title":"Deposit events","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"type":"object"},"distressedOrders":{"title":"Parties that had their orders closed because they were distressed","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"parties":{"items":{"type":"string"},"title":"Slice of Party IDs i.e. each party's public key for the event","type":"array"}},"type":"object"},"distressedPositions":{"title":"Open positions on the market that are/were distressed","description":"Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.","properties":{"distressedParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, that are distressed but still have open volume","type":"array"},"marketId":{"title":"Market ID for the event","type":"string"},"safeParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position","type":"array"}},"type":"object"},"endBlock":{"title":"Core finished processing a block","properties":{"height":{"format":"uint64","type":"string"}},"type":"object"},"epochEvent":{"title":"Epoch update events","properties":{"action":{"title":"Action tells us what action is taking place","default":"EPOCH_ACTION_UNSPECIFIED","description":"- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.","enum":["EPOCH_ACTION_UNSPECIFIED","EPOCH_ACTION_START","EPOCH_ACTION_END"],"type":"string"},"endTime":{"format":"int64","title":"Vega time at which this epoch actually ended","type":"string"},"expireTime":{"format":"int64","title":"Vega time at which this epoch should end","type":"string"},"seq":{"format":"uint64","title":"Sequence number that increases by one each epoch","type":"string"},"startTime":{"format":"int64","title":"Vega time at which this epoch started","type":"string"}},"type":"object"},"erc20MultisigSetThresholdEvent":{"title":"ERC20 multi sig set threshold event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"newThreshold":{"format":"int64","type":"integer"},"nonce":{"type":"string"},"txHash":{"type":"string"}},"type":"object"},"erc20MultisigSignerAdded":{"title":"ERC20 multi sig signer added","properties":{"epochSeq":{"title":"Epoch that the node was added for","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"signatureId":{"title":"ID of the signature bundle","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node to be added","type":"string"}},"type":"object"},"erc20MultisigSignerEvent":{"title":"ERC20 multi sig signer event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"nonce":{"type":"string"},"signer":{"type":"string"},"txHash":{"type":"string"},"type":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ADDED","TYPE_REMOVED"],"type":"string","title":"v1ERC20MultiSigSignerEventType"}},"type":"object"},"erc20MultisigSignerRemoved":{"title":"ERC20 multi sig signer removed","properties":{"epochSeq":{"title":"Epoch that the node was removed for","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"oldSigner":{"title":"Ethereum address of the signer to be removed","type":"string"},"signatureSubmitters":{"items":{"properties":{"signatureId":{"description":"Signature ID of the signer removed.","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"}},"type":"object","title":"v1ERC20MultiSigSignerRemovedSubmitter"},"title":"List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set","type":"array"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node which is to be removed","type":"string"}},"type":"object"},"ethereumKeyRotation":{"title":"Ethereum key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"type":"object"},"expiredOrders":{"title":"Orders that expired for a given market","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"orderIds":{"items":{"type":"string"},"title":"Slice of expired order IDs","type":"array"}},"type":"object"},"feesStats":{"description":"Event notifying of an update the fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"type":"array"},"totalFeesPaidAndReceived":{"description":"Total trading fees received and paid by the party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"},"fundingPayments":{"description":"Event notifying of funding payments at the end of a funding period.","properties":{"marketId":{"description":"ID of the market.","type":"string"},"payments":{"description":"List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.","items":{"description":"The amount gained or lost by a party as a result of a funding payment.","properties":{"amount":{"description":"The amount paid, this can be negative for parties who lost at the end of the funding period.","type":"string"},"partyId":{"description":"ID of the party.","type":"string"}},"type":"object","title":"v1FundingPayment"},"type":"array"},"seq":{"description":"Sequence number of the funding period associated with these payments.","format":"uint64","type":"string"}},"type":"object","title":"v1FundingPayments"},"fundingPeriod":{"description":"Start or end of a funding period.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object","title":"v1FundingPeriod"},"fundingPeriodDataPoint":{"description":"Data point within a funding period.","properties":{"dataPointType":{"description":"Origin of the data point.","default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string","title":"FundingPeriodDataPointSource"},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object","title":"v1FundingPeriodDataPoint"},"id":{"title":"Unique event ID for the message","type":"string"},"keyRotation":{"title":"Key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"type":"object"},"ledgerMovements":{"title":"Transfer responses update events","properties":{"ledgerMovements":{"items":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"properties":{"account":{"description":"Account relating to the transfer.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"description":"One or more accounts to transfer from.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"description":"One or more accounts to transfer to.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"transferId":{"description":"Transfer ID the ledger entry relates to.","type":"string"},"type":{"description":"Transfer type for this entry.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents a ledger entry on Vega","type":"object"},"type":"array"}},"type":"object","title":"vegaLedgerMovement"},"title":"One or more entries containing internal transfer information","type":"array"}},"type":"object"},"liquidityProvision":{"title":"LiquidityProvision events","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"type":"object"},"lossSocialization":{"title":"Loss socialization events","properties":{"amount":{"title":"Amount distributed","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"}},"type":"object"},"marginLevels":{"title":"Margin level update events","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"description":"Margin mode for the party, cross margin or isolated margin.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"type":"object"},"market":{"title":"Market tick events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"payload":{"title":"Payload is a unique information string","type":"string"}},"type":"object"},"marketCreated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"marketData":{"title":"Market data events","properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"description":"The method used for calculating the mark price.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"description":"The method used for calculating the index price (perps only).","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"type":"object"},"marketTick":{"title":"Market tick events","properties":{"id":{"title":"Market ID for the event","type":"string"},"time":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"marketUpdated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"networkLimits":{"title":"Network limits events","properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"type":"object"},"networkParameter":{"title":"Network parameter events","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"type":"object"},"nodeSignature":{"title":"Node signature events","description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object"},"oracleData":{"title":"OracleData events","properties":{"externalData":{"properties":{"data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"v1Data"}},"type":"object","title":"v1ExternalData"}},"type":"object"},"oracleSpec":{"title":"OracleSpec events","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"type":"object"},"order":{"title":"Order events","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"type":"object"},"paidLiquidityFeesStats":{"description":"Event notifying of an update to the liqudity fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid across all parties.","type":"string"}},"type":"object","title":"v1PaidLiquidityFeesStats"},"party":{"title":"Party events","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"type":"object"},"partyActivityStreak":{"title":"Event notifying of an update to a party's activity streak","properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"type":"object"},"partyMarginModeUpdated":{"description":"Event notifying of a party's margin mode update on a market.","properties":{"atEpoch":{"description":"Epoch at which the update happened.","format":"uint64","type":"string"},"marginFactor":{"description":"Margin factor for the market. Isolated mode only.","type":"string"},"marginMode":{"description":"Updated margin mode.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Unique ID of the market in which the update happened.","type":"string"},"maxTheoreticalLeverage":{"description":"Maximum theoretical leverage for the market. Isolated mode only.","type":"string"},"minTheoreticalMarginFactor":{"description":"Minimum theoretical margin factor for the market. Isolated mode only.","type":"string"},"partyId":{"description":"Unique ID of the party that updated their margin mode.","type":"string"}},"type":"object","title":"v1PartyMarginModeUpdated"},"partyProfileUpdated":{"description":"Event notifying of a party's profile update.","properties":{"updatedProfile":{"description":"Party's profile updated.","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"},"partyId":{"description":"Party ID associated to the profile.","type":"string"}},"type":"object","title":"vegaPartyProfile"}},"type":"object","title":"v1PartyProfileUpdated"},"positionResolution":{"title":"Position resolution events","properties":{"closed":{"format":"int64","title":"Number of close outs","type":"string"},"distressed":{"format":"int64","title":"Number of distressed traders","type":"string"},"markPrice":{"title":"Mark price as a string representing a scaled price","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"}},"type":"object"},"positionStateEvent":{"title":"Position status for a party in a market","properties":{"marketId":{"title":"Market ID for this position update","type":"string"},"partyId":{"title":"Party ID for this position update","type":"string"},"potentialBuys":{"format":"int64","title":"Potential orders","type":"string"},"potentialSells":{"format":"int64","type":"string"},"size":{"format":"int64","title":"Current position","type":"string"},"vwBuyPrice":{"title":"Volume weighted prices","type":"string"},"vwSellPrice":{"type":"string"}},"type":"object"},"proposal":{"title":"Proposal events for governance","properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"type":"object"},"protocolUpgradeDataNodeReady":{"title":"Core snapshot has been taken at the end of the block","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"protocolUpgradeEvent":{"title":"Protocol upgrade proposal updates","properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"title":"Status of the proposal","default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object"},"protocolUpgradeStarted":{"title":"Core is starting a protocol upgrade","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"rankingEvent":{"title":"Ranking event","properties":{"epochSeq":{"title":"Epoch seq for which the status is valid","type":"string"},"nextStatus":{"title":"Status of the validator in the next epoch","type":"string"},"nodeId":{"type":"string"},"performanceScore":{"title":"Performance base score","type":"string"},"previousStatus":{"title":"Status of the validator in the previous epoch","type":"string"},"rankingScore":{"title":"Final score","type":"string"},"stakeScore":{"title":"Stake based score - no anti-whaling","type":"string"},"tmVotingPower":{"format":"int64","title":"Tendermint voting power of the validator","type":"integer"}},"type":"object"},"refereeJoinedReferralSet":{"description":"Event notifying a referee has joined a referral set.","properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"setId":{"description":"Unique ID of the referral set the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedReferralSet"},"refereeJoinedTeam":{"description":"Event notifying that a referee joined a team.","properties":{"atEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined a team.","format":"int64","type":"string"},"referee":{"description":"The party that joined the team.","type":"string"},"teamId":{"description":"The unique identifier of the team the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedTeam"},"refereeSwitchedTeam":{"description":"Event notifying that a referee switched teams.","properties":{"atEpoch":{"description":"Epoch at which the party switched the team.","format":"uint64","type":"string"},"fromTeamId":{"description":"The unique identifier of the team the referee left.","type":"string"},"referee":{"description":"The party that switched team.","type":"string"},"switchedAt":{"description":"Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.","format":"int64","type":"string"},"toTeamId":{"description":"The unique identifier of the team joined.","type":"string"}},"type":"object","title":"v1RefereeSwitchedTeam"},"referralProgramEnded":{"description":"Event notifying that a referral program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the referral program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1ReferralProgramEnded"},"referralProgramStarted":{"description":"Event notifying that a referral program has started.","properties":{"atEpoch":{"description":"Epoch at which the referral program started.","format":"uint64","type":"string"},"program":{"description":"Referral program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the referral program started.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramStarted"},"referralProgramUpdated":{"description":"Event notifying that a referral program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the referral program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the referral program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramUpdated"},"referralSetCreated":{"description":"Event notifying a referral set has been created.","properties":{"createdAt":{"description":"Time in Unix nanoseconds when the set was created.","format":"int64","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"setId":{"description":"Unique ID of the created set.","type":"string"},"updatedAt":{"description":"Time in Unix nanoseconds when the set was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralSetCreated"},"referralSetStatsUpdated":{"description":"Event notifying of an update to a referral set's statistics.","properties":{"atEpoch":{"description":"Epoch at which the set's statistics are updated.","format":"uint64","type":"string"},"refereesStats":{"description":"Referees' statistics for that epoch.","items":{"properties":{"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"title":"Current referee notional taker volume","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object","title":"v1RefereeStats"},"type":"array"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Taker volume of the referrer","type":"string"},"rewardFactor":{"description":"Reward factor applied to the trades.","type":"string"},"rewardsFactorMultiplier":{"description":"Rewards factor multiplier for the trades.","type":"string"},"rewardsMultiplier":{"description":"Rewards multiplier applied to the trades.","type":"string"},"setId":{"description":"Unique ID of the set.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object","title":"v1ReferralSetStatsUpdated"},"rewardPayout":{"title":"Reward payout event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"epochSeq":{"type":"string"},"gameId":{"type":"string"},"lockedUntilEpoch":{"type":"string"},"party":{"type":"string"},"percentOfTotalReward":{"type":"string"},"quantumAmount":{"type":"string"},"rewardType":{"type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"riskFactor":{"title":"Risk factor events","properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"type":"object"},"settleDistressed":{"title":"Position distressed events","properties":{"margin":{"title":"Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID i.e. a party's public key for the event","type":"string"},"price":{"title":"Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"}},"type":"object"},"settleMarket":{"title":"Settle market event for data-node to update positions for settled markets","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"}},"type":"object"},"settlePosition":{"title":"Position settlement events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"},"tradeSettlements":{"items":{"properties":{"marketPrice":{"title":"Price of settlement as a string (in market decimals)","type":"string"},"price":{"title":"Price of settlement as string (in asset decimals)","type":"string"},"size":{"format":"int64","title":"Size of trade settlement","type":"string"}},"title":"Trade settlement is part of the settle position event","type":"object"},"title":"A collection of 1 or more trade settlements","type":"array"}},"type":"object"},"stakeLinking":{"title":"Staking event","properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"type":"object"},"stateVar":{"title":"State variable consensus state transition update","properties":{"eventId":{"type":"string"},"id":{"type":"string"},"state":{"type":"string"}},"type":"object"},"stopOrder":{"title":"A stop order event","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION","REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION","REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES"],"type":"string"},"sizeOverrideSetting":{"title":"Size override setting","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"Size override value","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object"},"teamCreated":{"title":"Event notifying of the creation of a team.m","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"atEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"createdAt":{"description":"Time in Unix nanoseconds when the team is created.","format":"int64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"The party that created the team.","type":"string"},"teamId":{"description":"The unique identifier of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"teamUpdated":{"description":"Event notifying of an update to a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamId":{"description":"The unique identifier for the updated team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object","title":"v1TeamUpdated"},"timeUpdate":{"title":"Time update events","properties":{"timestamp":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"trade":{"title":"Trade events","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"type":"object"},"transactionResult":{"title":"Result of a transaction processed by the network","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"batchProposal":{"description":"Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"}},"type":"object","title":"v1BatchProposalSubmission"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"createReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"failure":{"properties":{"error":{"title":"Error message explaining the reason for the transaction failing processing","type":"string"}},"type":"object","title":"TransactionResultFailureDetails"},"hash":{"title":"Hash of the transaction","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"joinTeam":{"description":"Command that allows the submitter to join a team or change teams if they are already a member of a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object","title":"v1JoinTeam"},"keyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"status":{"description":"Status of the transaction, did it succeed or an error was raised.","type":"boolean"},"stopOrderCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrderSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"success":{"type":"object","title":"TransactionResultSuccessDetails"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"v1UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"updatePartyProfile":{"description":"Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"type":"object","title":"v1UpdatePartyProfile"},"updateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"transfer":{"title":"Transfer event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"gameId":{"title":"ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"transferFees":{"description":"Event notifying of fees related to a transfer being paid.","properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"discountApplied":{"description":"Amount that was subtracted from the transfer fee based on available discounts.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"transferFeesDiscount":{"description":"Event notifying of a party's available discounts for transfer fees, per asset.","properties":{"amount":{"description":"Amount that the transfer fee was discounted by.","type":"string"},"asset":{"description":"Asset that the transfer fee discount is relevant to.","type":"string"},"epoch":{"description":"Epoch in which the discount was first available.","format":"uint64","type":"string"},"party":{"description":"Party that the transfer fee discount applies to.","type":"string"}},"type":"object","title":"v1TransferFeesDiscount"},"txErrEvent":{"title":"Transaction error events, not included in the ALL event type","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"errMsg":{"title":"Error message describing what went wrong","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"v1UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"txHash":{"type":"string"},"type":{"title":"The type of bus event. Must be one of the list below:","default":"BUS_EVENT_TYPE_UNSPECIFIED","description":"- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"validatorScore":{"title":"Validator score calculated","properties":{"epochSeq":{"type":"string"},"multisigScore":{"type":"string"},"nodeId":{"type":"string"},"normalisedScore":{"type":"string"},"rawValidatorScore":{"type":"string"},"validatorPerformance":{"type":"string"},"validatorScore":{"type":"string"},"validatorStatus":{"type":"string"}},"type":"object"},"validatorUpdate":{"title":"Validator update events","properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"type":"object"},"version":{"format":"int64","title":"Version of bus event","type":"integer"},"vestingBalancesSummary":{"description":"Event notifying of an update to the vesting and locked balances.","properties":{"epochSeq":{"description":"Epoch for which these balances are valid.","format":"uint64","type":"string"},"partiesVestingSummary":{"description":"Parties' summaries.","items":{"properties":{"party":{"description":"Party ID.","type":"string"},"partyLockedBalances":{"description":"List of locked balances.","items":{"description":"A party's locked balance for a given asset.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Locked balance.","type":"string"},"untilEpoch":{"description":"Epoch in which the balance will be released.","format":"uint64","type":"string"}},"type":"object","title":"v1PartyLockedBalance"},"type":"array"},"partyVestingBalances":{"description":"List of vesting balances.","items":{"description":"Balance that is being vested for the party.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Balance that is vested.","type":"string"}},"type":"object","title":"v1PartyVestingBalance"},"type":"array"}},"title":"Summary of a party's vesting balances","type":"object"},"type":"array"}},"title":"Summary of the vesting and locked balances for an epoch","type":"object"},"vestingStatsUpdated":{"description":"Event notifying of an update to the vesting statistics.","properties":{"atEpoch":{"description":"Epoch at which the vesting statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties stats.","items":{"description":"The vesting stats for a given party.","properties":{"partyId":{"description":"The party.","type":"string"},"quantumBalance":{"description":"The balance of the party, in quantum.","type":"string"},"rewardBonusMultiplier":{"description":"The bonus multiplier applied on the reward.","type":"string"}},"type":"object","title":"v1PartyVestingStats"},"type":"array"}},"type":"object","title":"v1VestingStatsUpdated"},"volumeDiscountProgramEnded":{"description":"Event notifying that a volume discount program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the volume discount program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramEnded"},"volumeDiscountProgramStarted":{"description":"Event notifying that a volume discount program has started.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program started.","format":"uint64","type":"string"},"program":{"description":"Volume discount program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the volume discount program started.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramStarted"},"volumeDiscountProgramUpdated":{"description":"Event notifying that a volume discount program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated volume discount program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the volume discount program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramUpdated"},"volumeDiscountStatsUpdated":{"description":"Event notifying of an update to the volume discount statistics.","properties":{"atEpoch":{"description":"Epoch at which the volume discount statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties' stats.","items":{"description":"Volume discount stats for a given party.","properties":{"discountFactor":{"description":"Discount factor applied to fees.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object","title":"v1PartyVolumeDiscountStats"},"type":"array"}},"type":"object","title":"v1VolumeDiscountStatsUpdated"},"vote":{"title":"Vote events for governance","properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object"},"withdrawal":{"title":"Withdrawal events","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"type":"object"}},"title":"Bus event is a container for event bus events emitted by Vega","type":"object"},"type":"array"}},"title":"Response to a subscribed stream of events from the Vega event bus","type":"object"}},"title":"Stream result of v1ObserveEventBusResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Subscribe to a stream of events from the core","operationId":"CoreService_ObserveEventBus","method":"get","path":"/stream/event/bus","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Events subscription","description":{"content":"Subscribe to a stream of events from the core","type":"text/plain"},"url":{"path":["stream","event","bus"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","type":"text/plain"},"key":"type","value":""},{"disabled":false,"description":{"content":"Market ID to filter events for, optional field. If omitted, no markets will be filtered out.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to filter events for, optional field. If omitted, no parties will be filtered out.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Batch size, optional field -\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","type":"text/plain"},"key":"batchSize","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Events subscription' (core-service-observe-event-bus)" @@ -26,7 +26,7 @@ import TabItem from "@theme/TabItem"; Subscribe to a stream of events from the core -
Query Parameters
+
Query Parameters
A successful response.(streaming responses) @@ -34,7 +34,7 @@ A successful response.(streaming responses) One or more events that match the subscription request criteria. -
  • Array [
  • account object
    asset object
    details object
    +
  • Array [
  • account object
    asset object
    details object
    Definition of the external source for this asset. @@ -81,7 +81,11 @@ Referral rewards generated by all referee taker fees. Amount of rewards generated per party. -
  • Array [
  • ]
  • ]
  • totalMakerFeesReceived object[]
    +
  • Array [
  • ]
  • ]
  • totalFeesPaidAndReceived object[]
    + +Total trading fees received and paid by the party. + +
  • Array [
  • ]
  • totalMakerFeesReceived object[]
    Total maker fees received by the maker side. @@ -117,7 +121,7 @@ Resulting balances once the ledger movement are applied. Account relating to the transfer. -
  • ]
  • entries object[]
    +
  • ]
  • entries object[]
    All the entries for these ledger movements. @@ -125,11 +129,11 @@ All the entries for these ledger movements. One or more accounts to transfer from. -
    toAccount object
    +
    toAccount object
    One or more accounts to transfer to. -
  • ]
  • ]
  • liquidityProvision object
    buys object[]
    +
  • ]
  • ]
  • liquidityProvision object
    buys object[]
    Set of liquidity buy orders to meet the liquidity provision obligation. @@ -145,7 +149,7 @@ Set of liquidity sell orders to meet the liquidity provision obligation. Liquidity order from the original submission. -
  • ]
  • lossSocialization object
    marginLevels object
    market object
    marketCreated object
    fees object
    +
  • ]
  • lossSocialization object
    marginLevels object
    market object
    marketCreated object
    fees object
    Fees configuration that apply to the market. @@ -153,7 +157,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -165,7 +177,111 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    +
    markPriceConfiguration object
    + +Mark price calculation configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    Timestamps for when the market state changes. @@ -237,7 +353,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -343,7 +459,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -422,7 +538,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -461,7 +577,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -567,7 +683,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -634,7 +854,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -670,7 +890,7 @@ Equity like share of liquidity fee for each liquidity provider. SLA performance for each liquidity provider. -
  • Array [
  • ]
  • priceMonitoringBounds object[]
    +
  • Array [
  • ]
  • priceMonitoringBounds object[]
    One or more price monitoring bounds for the current timestamp. @@ -686,7 +906,7 @@ Data related to the particular product type of the market. Represents market data specific to a perpetual market. -
    marketTick object
    marketUpdated object
    fees object
    +
    marketTick object
    marketUpdated object
    fees object
    Fees configuration that apply to the market. @@ -694,7 +914,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -706,50 +934,15 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    - -Timestamps for when the market state changes. - -
    openingAuction object
    - -Auction duration specifies how long the opening auction will run (minimum -duration and optionally a minimum traded volume). - -
    priceMonitoringSettings object
    - -PriceMonitoringSettings for the market. - -
    parameters object
    - -Specifies price monitoring parameters to be used for price monitoring purposes. - -
    triggers object[]
  • Array [
  • ]
  • tradableInstrument object
    - -Tradable instrument configuration. - -
    instrument object
    - -Details for the underlying instrument. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    - -Binding between the data spec and the data source. - -
    dataSourceSpecForSettlementData object
    +
    markPriceConfiguration object
    -Data source specification that describes the settlement data source filter. +Mark price calculation configuration. -
    data object
    +
    dataSourcesSpec object[]
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -778,7 +971,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -845,17 +1038,156 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    -Data source specification that describes the trading termination data source filter. +Timestamps for when the market state changes. -
    data object
    +
    openingAuction object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Auction duration specifies how long the opening auction will run (minimum +duration and optionally a minimum traded volume). -
    external object
    +
    priceMonitoringSettings object
    + +PriceMonitoringSettings for the market. + +
    parameters object
    + +Specifies price monitoring parameters to be used for price monitoring purposes. + +
    triggers object[]
  • Array [
  • ]
  • tradableInstrument object
    + +Tradable instrument configuration. + +
    instrument object
    + +Details for the underlying instrument. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data spec and the data source. + +
    dataSourceSpecForSettlementData object
    + +Data source specification that describes the settlement data source filter. + +
    data object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Data source specification that describes the trading termination data source filter. + +
    data object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -884,7 +1216,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -963,7 +1295,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -1002,7 +1334,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1108,7 +1440,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1175,7 +1611,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -1263,7 +1699,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1334,7 +1770,7 @@ Conditions that the timestamps need to meet in order to be considered. Pegged order details, used only if the order represents a pegged order. -
    paidLiquidityFeesStats object
    +
    paidLiquidityFeesStats object
    Event notifying of an update to the liqudity fees stats for a market. @@ -1342,37 +1778,43 @@ Event notifying of an update to the liqudity fees stats for a market. Fees paid per party. -
  • Array [
  • ]
  • party object
    partyActivityStreak object
    positionResolution object
    positionStateEvent object
    proposal object
    rationale object
    +
  • Array [
  • ]
  • party object
    metadata object[]
    -Rationale behind a proposal. +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. -
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    +
  • Array [
  • ]
  • partyActivityStreak object
    partyMarginModeUpdated object
    -Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Event notifying of a party's margin mode update on a market. -
    cancelTransfer object
    +
    partyProfileUpdated object
    -Cancel a governance transfer. +Event notifying of a party's profile update. -
    changes object
    newAsset object
    +
    updatedProfile object
    -Proposal change for creating new assets on Vega. +Party's profile updated. -
    changes object
    +
    metadata object[]
    -Configuration of the new asset. +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. -
    builtinAsset object
    +
  • Array [
  • ]
  • positionResolution object
    positionStateEvent object
    proposal object
    batchTerms object
    -Vega built-in asset. +Batch proposal terms. -
    erc20 object
    +
    changes object[]
    -Ethereum ERC20 asset. +List of individual changes included in the batch proposal. -
    newMarket object
    +
  • Array [
  • cancelTransfer object
    -Proposal change for creating new futures market on Vega. +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market.
    changes object
    @@ -1425,7 +1867,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1527,7 +1969,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1602,7 +2044,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -1637,7 +2079,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1739,7 +2181,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1806,65 +2248,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Spot. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    liquidityMonitoringParameters object
    +
    dataSourcesSpec object[]
    -Liquidity monitoring parameters. +Additional price sources to be used for index price calculation. -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    successor object
    - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
    newSpotMarket object
    - -Proposal change for creating new spot market on Vega. - -
    changes object
    - -Configuration of the new spot market. - -
    instrument object
    - -New spot market instrument configuration. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    - -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. - -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1893,7 +2285,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1960,13 +2352,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1995,7 +2417,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2062,15 +2484,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Perpetual. +Price monitoring parameters. -
    dataSourceSpecBinding object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -2105,7 +2551,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2172,7 +2618,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -2207,7 +2653,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2274,83 +2720,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    - -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -2385,7 +2763,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2452,7 +2830,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -2487,7 +2865,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2554,21 +2932,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -2597,7 +2969,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2664,76 +3036,5325 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Spot. -
    external object
    +
    liquidityFeeSettings object
    -DataSourceDefinitionExternal is the top level object used for all external -data sources. It contains one of any of the defined `SourceType` variants. +Specifies how the liquidity fee for the market will be calculated. -
    ethOracle object
    +
    logNormal object
    -Contains the data specification that is received from Ethereum sources. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    filters object[]
  • Array [
  • conditions object[]
    +
    params object
    -Conditions that should be matched by the data to be -considered of interest. +Risk model parameters for log normal. -
  • Array [
  • ]
  • key object
    +
    priceMonitoringParameters object
    -Data source's data property key targeted by the filter. +Price monitoring parameters. -
  • ]
  • normalisers object[]
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Normalisers are used to convert the data returned from the contract method -into a standard format. The key of the map is the name of the property, -which identifies the specific piece of data to other parts of the data -sourcing framework, for example filters. The value is a JSONPath expression -for expressing where in the contract call result the required data is -located, for example $[0] indicates the first result. $[1].price would look -in the second result returned from the contract for a structure with a key -called 'price' and use that if it exists. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
  • Array [
  • ]
  • trigger object
    +
    slaParams object
    -Conditions for determining when to call the contract method. +Specifies the liquidity provision SLA parameters. -
    timeTrigger object
    +
    targetStakeParameters object
    -Trigger for an Ethereum call based on the Ethereum block timestamp. Can be -one-off or repeating. +Specifies parameters related to target stake calculation. -
    oracle object
    +
    newTransfer object
    -All types of external data sources use the same configuration set for meeting -requirements in order for the data to be useful for Vega - valid signatures -and matching filters. +Proposal change for a governance initiated transfer. -
    filters object[]
    +
    changes object
    -Filters describes which source data are considered of interest or not for -the product (or the risk model). +Configuration for a new transfer. -
  • Array [
  • conditions object[]
    +
    oneOff object
    recurring object
    dispatchStrategy object
    -Conditions that should be matched by the data to be -considered of interest. +Optional parameter defining how a transfer is dispatched. -
  • Array [
  • ]
  • key object
    +
    rankTable object[]
    -Data source's data property key targeted by the filter. +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • ]
  • signers object[]
    +
  • Array [
  • ]
  • updateAsset object
    -Signers is the list of authorized signatures that signed the data for this -source. All the signatures in the data source data should be contained in -this external source. All the signatures in the data should be contained in -this list. +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market on Vega. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • protocolUpgradeDataNodeReady object
    protocolUpgradeEvent object
    protocolUpgradeStarted object
    rankingEvent object
    refereeJoinedReferralSet object
    + +Event notifying a referee has joined a referral set. + +
    refereeJoinedTeam object
    + +Event notifying that a referee joined a team. + +
    refereeSwitchedTeam object
    + +Event notifying that a referee switched teams. + +
    referralProgramEnded object
    + +Event notifying that a referral program has ended. + +
    referralProgramStarted object
    + +Event notifying that a referral program has started. + +
    program object
    + +Referral program that has started. + +
    benefitTiers object[]
    + +Defined benefit tiers ordered by increasing discounts. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined benefit tiers ordered by increasing reward multiplier. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • referralProgramUpdated object
    + +Event notifying that a referral program has been updated. + +
    program object
    + +The updated referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers ordered by increasing discounts. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined benefit tiers ordered by increasing reward multiplier. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • referralSetCreated object
    + +Event notifying a referral set has been created. + +
    referralSetStatsUpdated object
    + +Event notifying of an update to a referral set's statistics. + +
    refereesStats object[]
    + +Referees' statistics for that epoch. + +
  • Array [
  • ]
  • rewardPayout object
    riskFactor object
    settleDistressed object
    settleMarket object
    settlePosition object
    tradeSettlements object[]
  • Array [
  • ]
  • stakeLinking object
    stateVar object
    stopOrder object
    stopOrder object
    sizeOverrideValue object
    submission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    teamCreated object
    teamUpdated object
    + +Event notifying of an update to a team. + +
    timeUpdate object
    trade object
    buyerFee object
    + +Fee amount charged to the buyer party for the trade. + +
    sellerFee object
    + +Fee amount charged to the seller party for the trade. + +
    transactionResult object
    announceNode object
    + +A command that allows a new node operator to announce themselves to the network as a new validator. + +
    ethereumSignature object
    + +Signature from the node made using the ethereum wallet. + +
    vegaSignature object
    + +Signature from the node made using the Vega wallet. + +
    applyReferralCode object
    + +Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set. +A party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer. +To switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch. + +
    batchMarketInstructions object
    + +A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction. +These instructions are then processed sequentially in the following order: +- OrderCancellation +- OrderAmendment +- OrderSubmission +- StopOrderSubmission +where the maximum allow of instructions in a batch is controlled by the network parameter "spam.protection.max.batchSize". + +
    amendments object[]
    + +List of order amendments to be processed sequentially. + +
  • Array [
  • ]
  • cancellations object[]
    + +List of order cancellations to be processed sequentially. + +
  • Array [
  • ]
  • stopOrdersCancellation object[]
    + +List of stop order cancellations to be processed sequentially. + +
  • Array [
  • ]
  • stopOrdersSubmission object[]
    + +List of stop order submissions to be processed sequentially. + +
  • Array [
  • fallsBelow object
    + +Stop order that will be triggered if the price falls below a given trigger price. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    sizeOverrideValue object
    risesAbove object
    + +Stop order that will be triggered if the price rises above a given trigger price. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    sizeOverrideValue object
  • ]
  • submissions object[]
    + +List of order submissions to be processed sequentially. + +
  • Array [
  • icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
  • ]
  • updateMarginMode object[]
  • Array [
  • ]
  • batchProposal object
    + +Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market and a network parameter change with it. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    changes object[]
    + +List of individual changes included in the batch proposal. + +
  • Array [
  • cancelTransfer object
    + +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • cancelTransfer object
    + +Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction. + +
    createReferralSet object
    + +Command that a party can use to instruct the network to create a new referral set on the network. +The submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set. +A referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set. + +
    team object
    + +Team details, if the referral set is to be considered a team. + +
    delegateSubmission object
    + +Command to allow a token holder to delegate their tokens to a validator to help secure the network. +A token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator. + +
    ethereumKeyRotateSubmission object
    + +A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated. + +
    ethereumSignature object
    + +Signature signed by the new Ethereum key that can be verified to prove ownership. + +
    failure object
    issueSignatures object
    + +Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract. +Signatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected. +The generated signatures can only be submitted to the contract by the Ethereum addresses included in the command. + +
    joinTeam object
    + +Command that allows the submitter to join a team or change teams if they are already a member of a team. + +
    keyRotateSubmission object
    + +A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated. + +
    liquidityProvisionAmendment object
    + +Command that allows a liquidity provider to update the details of their existing liquidity commitment. +Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. + +
    liquidityProvisionCancellation object
    + +Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. + +
    liquidityProvisionSubmission object
    + +A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. +An active liquidity provider for a market will earn fees based on the trades that occur in the market. + +
    oracleDataSubmission object
    orderAmendment object
    + +A command that allows a party to update the details of an existing order. +Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. +It is not possible to change an order's type through this command. + +
    orderCancellation object
    + +A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. +It is not possible to cancel another party's order with this command. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    proposal object
    + +Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list.
  • Array [
  • ethAddress object
    @@ -2766,412 +8387,461 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. -
    params object
    +
    external object
    -Risk model parameters for log normal. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    priceMonitoringParameters object
    +
    ethOracle object
    -Price monitoring parameters. +Contains the data specification that is received from Ethereum sources. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Conditions that should be matched by the data to be +considered of interest. -
    updateMarketState object
    +
  • Array [
  • ]
  • key object
    -Proposal change for updating the state of a market. +Data source's data property key targeted by the filter. -
    changes object
    updateNetworkParameter object
    +
  • ]
  • normalisers object[]
    -Proposal change for updating Vega network parameters. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    changes object
    +
  • Array [
  • ]
  • trigger object
    -The network parameter to update. +Conditions for determining when to call the contract method. -
    updateReferralProgram object
    +
    timeTrigger object
    -Proposal change for updating the referral program. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    changes object
    +
    oracle object
    -Configuration for change to update a referral program. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    benefitTiers object[]
    +
    filters object[]
    -Defined benefit tiers in increasing order. First element will give Tier 1, -second element will give Tier 2, and so on. Determines the level of -benefit a party can expect based on performance criteria. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
  • Array [
  • ]
  • stakingTiers object[]
    +
  • Array [
  • conditions object[]
    -Defined staking tiers in increasing order. First element will give Tier 1, -second element will give Tier 2, and so on. Determines the level of -benefit a party can expect based on their staking. +Conditions that should be matched by the data to be +considered of interest. -
  • Array [
  • ]
  • updateSpotMarket object
    +
  • Array [
  • ]
  • key object
    -Proposal change for modifying an existing spot market on Vega. +Data source's data property key targeted by the filter. -
    changes object
    +
  • ]
  • signers object[]
    -Updated configuration of the spot market. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    logNormal object
    +
  • Array [
  • ethAddress object
    -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. +In case of an open oracle - Ethereum address will be submitted. -
    params object
    +
    pubKey object
    -Risk model parameters for log normal. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    priceMonitoringParameters object
    +
  • ]
  • internal object
    -Price monitoring parameters. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
    time object
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Internal data source used for emitting timestamps. -
    slaParams object
    +
    conditions object[]
    -Specifies the liquidity provision SLA parameters. +Conditions that the timestamps should meet in order to be considered. -
    targetStakeParameters object
    +
  • Array [
  • ]
  • timeTrigger object
    -Specifies parameters related to target stake calculation. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    updateVolumeDiscountProgram object
    +
    conditions object[]
    -Proposal change for updating the volume discount program. +Conditions that the timestamps need to meet in order to be considered. -
    changes object
    benefitTiers object[]
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Defined benefit tiers in increasing order. First element will give Tier 1, -second element will give Tier 2, and so on. Determines the level of -benefit a party can expect based on performance criteria. +Perpetual. -
  • Array [
  • ]
  • protocolUpgradeDataNodeReady object
    protocolUpgradeEvent object
    protocolUpgradeStarted object
    rankingEvent object
    refereeJoinedReferralSet object
    +
    dataSourceSpecBinding object
    -Event notifying a referee has joined a referral set. +Binding between the data source spec and the settlement data. -
    refereeJoinedTeam object
    +
    dataSourceSpecForSettlementData object
    -Event notifying that a referee joined a team. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. -
    refereeSwitchedTeam object
    +
    external object
    -Event notifying that a referee switched teams. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    referralProgramEnded object
    +
    ethOracle object
    -Event notifying that a referral program has ended. +Contains the data specification that is received from Ethereum sources. -
    referralProgramStarted object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Event notifying that a referral program has started. +Conditions that should be matched by the data to be +considered of interest. -
    program object
    +
  • Array [
  • ]
  • key object
    -Referral program that has started. +Data source's data property key targeted by the filter. -
    benefitTiers object[]
    +
  • ]
  • normalisers object[]
    -Defined benefit tiers ordered by increasing discounts. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
  • Array [
  • ]
  • stakingTiers object[]
    +
  • Array [
  • ]
  • trigger object
    -Defined benefit tiers ordered by increasing reward multiplier. Determines the level of -benefit a party can expect based on their staking. +Conditions for determining when to call the contract method. -
  • Array [
  • ]
  • referralProgramUpdated object
    +
    timeTrigger object
    -Event notifying that a referral program has been updated. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    program object
    +
    oracle object
    -The updated referral program. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    benefitTiers object[]
    +
    filters object[]
    -Defined benefit tiers ordered by increasing discounts. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
  • Array [
  • ]
  • stakingTiers object[]
    +
  • Array [
  • conditions object[]
    -Defined benefit tiers ordered by increasing reward multiplier. Determines the level of -benefit a party can expect based on their staking. +Conditions that should be matched by the data to be +considered of interest. -
  • Array [
  • ]
  • referralSetCreated object
    +
  • Array [
  • ]
  • key object
    -Event notifying a referral set has been created. +Data source's data property key targeted by the filter. -
    referralSetStatsUpdated object
    +
  • ]
  • signers object[]
    -Event notifying of an update to a referral set's statistics. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    refereesStats object[]
    +
  • Array [
  • ethAddress object
    -Referees' statistics for that epoch. +In case of an open oracle - Ethereum address will be submitted. -
  • Array [
  • ]
  • rewardPayout object
    riskFactor object
    settleDistressed object
    settleMarket object
    settlePosition object
    tradeSettlements object[]
  • Array [
  • ]
  • stakeLinking object
    stateVar object
    stopOrder object
    stopOrder object
    submission object
    +
    pubKey object
    -A command that submits an order to the Vega network for a given market. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    icebergOpts object
    +
  • ]
  • internal object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    peggedOrder object
    +
    time object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Internal data source used for emitting timestamps. -
    teamCreated object
    teamUpdated object
    +
    conditions object[]
    -Event notifying of an update to a team. +Conditions that the timestamps should meet in order to be considered. -
    timeUpdate object
    trade object
    buyerFee object
    +
  • Array [
  • ]
  • timeTrigger object
    -Fee amount charged to the buyer party for the trade. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    sellerFee object
    +
    conditions object[]
    -Fee amount charged to the seller party for the trade. +Conditions that the timestamps need to meet in order to be considered. -
    transactionResult object
    announceNode object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -A command that allows a new node operator to announce themselves to the network as a new validator. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. -
    ethereumSignature object
    +
    external object
    -Signature from the node made using the ethereum wallet. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    vegaSignature object
    +
    ethOracle object
    -Signature from the node made using the Vega wallet. +Contains the data specification that is received from Ethereum sources. -
    applyReferralCode object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set. -A party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer. -To switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch. +Conditions that should be matched by the data to be +considered of interest. -
    batchMarketInstructions object
    +
  • Array [
  • ]
  • key object
    -A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction. -These instructions are then processed sequentially in the following order: -- OrderCancellation -- OrderAmendment -- OrderSubmission -- StopOrderSubmission -where the maximum allow of instructions in a batch is controlled by the network parameter "spam.protection.max.batchSize". +Data source's data property key targeted by the filter. -
    amendments object[]
    +
  • ]
  • normalisers object[]
    -List of order amendments to be processed sequentially. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
  • Array [
  • ]
  • cancellations object[]
    +
  • Array [
  • ]
  • trigger object
    -List of order cancellations to be processed sequentially. +Conditions for determining when to call the contract method. -
  • Array [
  • ]
  • stopOrdersCancellation object[]
    +
    timeTrigger object
    -List of stop order cancellations to be processed sequentially. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
  • Array [
  • ]
  • stopOrdersSubmission object[]
    +
    oracle object
    -List of stop order submissions to be processed sequentially. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
  • Array [
  • fallsBelow object
    +
    filters object[]
    -Stop order that will be triggered if the price falls below a given trigger price. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    orderSubmission object
    +
  • Array [
  • conditions object[]
    -A command that submits an order to the Vega network for a given market. +Conditions that should be matched by the data to be +considered of interest. -
    icebergOpts object
    +
  • Array [
  • ]
  • key object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Data source's data property key targeted by the filter. -
    peggedOrder object
    +
  • ]
  • signers object[]
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    risesAbove object
    +
  • Array [
  • ethAddress object
    -Stop order that will be triggered if the price rises above a given trigger price. +In case of an open oracle - Ethereum address will be submitted. -
    orderSubmission object
    +
    pubKey object
    -A command that submits an order to the Vega network for a given market. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    icebergOpts object
    +
  • ]
  • internal object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    peggedOrder object
    +
    time object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Internal data source used for emitting timestamps. -
  • ]
  • submissions object[]
    +
    conditions object[]
    -List of order submissions to be processed sequentially. +Conditions that the timestamps should meet in order to be considered. -
  • Array [
  • icebergOpts object
    +
  • Array [
  • ]
  • timeTrigger object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    peggedOrder object
    +
    conditions object[]
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Conditions that the timestamps need to meet in order to be considered. -
  • ]
  • cancelTransfer object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    createReferralSet object
    +
    dataSourcesSpec object[]
    -Command that a party can use to instruct the network to create a new referral set on the network. -The submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set. -A referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set. +Additional price sources to be used for index price calculation. -
    team object
    +
  • Array [
  • external object
    -Team details, if the referral set is to be considered a team. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    delegateSubmission object
    +
    ethOracle object
    -Command to allow a token holder to delegate their tokens to a validator to help secure the network. -A token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator. +Contains the data specification that is received from Ethereum sources. -
    ethereumKeyRotateSubmission object
    +
    filters object[]
  • Array [
  • conditions object[]
    -A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated. +Conditions that should be matched by the data to be +considered of interest. -
    ethereumSignature object
    +
  • Array [
  • ]
  • key object
    -Signature signed by the new Ethereum key that can be verified to prove ownership. +Data source's data property key targeted by the filter. -
    failure object
    issueSignatures object
    +
  • ]
  • normalisers object[]
    -Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract. -Signatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected. -The generated signatures can only be submitted to the contract by the Ethereum addresses included in the command. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    keyRotateSubmission object
    +
  • Array [
  • ]
  • trigger object
    -A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated. +Conditions for determining when to call the contract method. -
    liquidityProvisionAmendment object
    +
    timeTrigger object
    -Command that allows a liquidity provider to update the details of their existing liquidity commitment. -Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    liquidityProvisionCancellation object
    +
    oracle object
    -Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    liquidityProvisionSubmission object
    +
    filters object[]
    -A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. -An active liquidity provider for a market will earn fees based on the trades that occur in the market. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    oracleDataSubmission object
    orderAmendment object
    +
  • Array [
  • conditions object[]
    -A command that allows a party to update the details of an existing order. -Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. -It is not possible to change an order's type through this command. +Conditions that should be matched by the data to be +considered of interest. -
    orderCancellation object
    +
  • Array [
  • ]
  • key object
    -A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. -It is not possible to cancel another party's order with this command. +Data source's data property key targeted by the filter. -
    orderSubmission object
    +
  • ]
  • signers object[]
    -A command that submits an order to the Vega network for a given market. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    icebergOpts object
    +
  • Array [
  • ethAddress object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +In case of an open oracle - Ethereum address will be submitted. -
    peggedOrder object
    +
    pubKey object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    proposal object
    +
  • ]
  • internal object
    -Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. -For example this command can be used to propose a new market. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    rationale object
    +
    time object
    -Rationale behind a proposal. +Internal data source used for emitting timestamps. -
    terms object
    +
    conditions object[]
    -Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. +Conditions that the timestamps should meet in order to be considered. -
    cancelTransfer object
    +
  • Array [
  • ]
  • timeTrigger object
    -Cancel a governance transfer. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    changes object
    newAsset object
    +
    conditions object[]
    -Proposal change for creating new assets on Vega. +Conditions that the timestamps need to meet in order to be considered. -
    changes object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Configuration of the new asset. +Spot. -
    builtinAsset object
    +
    liquidationStrategy object
    -Vega built-in asset. +Liquidation strategy for this market. -
    erc20 object
    +
    liquidityFeeSettings object
    -Ethereum ERC20 asset. +Specifies how the liquidity fee for the market will be calculated. -
    newMarket object
    +
    liquidityMonitoringParameters object
    -Proposal change for creating new futures market on Vega. +Liquidity monitoring parameters. -
    changes object
    +
    targetStakeParameters object
    -Configuration of the new market. +Specifies parameters related to target stake calculation. -
    instrument object
    +
    liquiditySlaParameters object
    logNormal object
    -New futures market instrument configuration. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    future object
    +
    params object
    -Future. +Risk model parameters for log normal. -
    dataSourceSpecBinding object
    +
    markPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Mark price configuration. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -3200,7 +8870,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3267,7 +8937,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -3302,7 +9004,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3369,15 +9071,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -3412,7 +9106,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3479,7 +9173,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -3514,7 +9216,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3581,59 +9283,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    successor object
    - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
    newSpotMarket object
    - -Proposal change for creating new spot market on Vega. - -
    changes object
    - -Configuration of the new spot market. - -
    instrument object
    - -New spot market instrument configuration. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -3668,7 +9318,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3735,13 +9385,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -3770,7 +9422,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3837,15 +9489,87 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Perpetual. +Spot. -
    dataSourceSpecBinding object
    +
    liquidityFeeSettings object
    -Binding between the data source spec and the settlement data. +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -3880,7 +9604,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3947,7 +9671,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -3982,7 +9706,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4049,83 +9773,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    - -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -4160,7 +9816,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4227,7 +9883,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -4262,7 +9918,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4329,21 +9985,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Configuration for the index price used in funding payment calculation. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -4372,7 +10022,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4439,13 +10089,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Liquidation strategy used when the network holds a position resulting from position resolution. -
    external object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -4474,7 +10150,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4541,23 +10217,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -4605,7 +10265,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -4671,7 +10335,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -4687,7 +10351,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    transfer object
    oneOff object
    +
    sizeOverrideValue object
    transfer object
    oneOff object
    Details of a one-off transfer that is executed once at a specified time. @@ -4703,11 +10367,22 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • undelegateSubmission object
    +
  • Array [
  • ]
  • undelegateSubmission object
    Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node. -
    updateReferralSet object
    +
    updateMarginMode object
    updatePartyProfile object
    + +Command to associate metadata to a public key, known as a party ID. +Partial update is not supported, meaning previous values must be included in +the update, otherwise they are removed. + +
    metadata object[]
    + +Freeform data to associate to the party. +Support a maximum of 10 entries. + +
  • Array [
  • ]
  • updateReferralSet object
    A command that allows the referrer of a referral set to update team details for a referral set. Any field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged. @@ -4716,7 +10391,7 @@ Any field that is left unset or has a default value indicates that this field on Team details, if the referral set is to be considered a team. -
    voteSubmission object
    +
    voteSubmission object
    Command that allows a token holder to vote for or against an active governance proposal. @@ -4734,7 +10409,7 @@ Details specific to the foreign chain, such as the receiver address. ERC20 withdrawal details. -
    transfer object
    oneOff object
    oneOffGovernance object
    recurring object
    dispatchStrategy object
    rankTable object[]
    +
    transfer object
    oneOff object
    oneOffGovernance object
    recurring object
    dispatchStrategy object
    rankTable object[]
    Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. @@ -4742,11 +10417,15 @@ Ordered list, using start rank, defining the rank bands and share ratio for each Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • transferFees object
    +
  • Array [
  • ]
  • transferFees object
    Event notifying of fees related to a transfer being paid. -
    txErrEvent object
    announceNode object
    +
    transferFeesDiscount object
    + +Event notifying of a party's available discounts for transfer fees, per asset. + +
    txErrEvent object
    announceNode object
    A command that allows a new node operator to announce themselves to the network as a new validator. @@ -4772,7 +10451,7 @@ where the maximum allow of instructions in a batch is controlled by the network List of order amendments to be processed sequentially. -
  • Array [
  • ]
  • cancellations object[]
    +
  • Array [
  • ]
  • cancellations object[]
    List of order cancellations to be processed sequentially. @@ -4800,7 +10479,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -4816,7 +10495,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • submissions object[]
    +
    sizeOverrideValue object
  • ]
  • submissions object[]
    List of order submissions to be processed sequentially. @@ -4828,7 +10507,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • cancelTransfer object
    +
  • ]
  • updateMarginMode object[]
  • Array [
  • ]
  • cancelTransfer object
    Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction. @@ -4843,97 +10522,309 @@ Command that can be used by a validator to instruct the network to generate sign Signatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected. The generated signatures can only be submitted to the contract by the Ethereum addresses included in the command. -
    liquidityProvisionAmendment object
    +
    liquidityProvisionAmendment object
    + +Command that allows a liquidity provider to update the details of their existing liquidity commitment. +Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. + +
    liquidityProvisionCancellation object
    + +Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. + +
    liquidityProvisionSubmission object
    + +A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. +An active liquidity provider for a market will earn fees based on the trades that occur in the market. + +
    oracleDataSubmission object
    orderAmendment object
    + +A command that allows a party to update the details of an existing order. +Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. +It is not possible to change an order's type through this command. + +
    orderCancellation object
    + +A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. +It is not possible to cancel another party's order with this command. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    proposal object
    + +Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    -Command that allows a liquidity provider to update the details of their existing liquidity commitment. -Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    liquidityProvisionCancellation object
    +
    ethOracle object
    -Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. +Contains the data specification that is received from Ethereum sources. -
    liquidityProvisionSubmission object
    +
    filters object[]
  • Array [
  • conditions object[]
    -A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. -An active liquidity provider for a market will earn fees based on the trades that occur in the market. +Conditions that should be matched by the data to be +considered of interest. -
    oracleDataSubmission object
    orderAmendment object
    +
  • Array [
  • ]
  • key object
    -A command that allows a party to update the details of an existing order. -Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. -It is not possible to change an order's type through this command. +Data source's data property key targeted by the filter. -
    orderCancellation object
    +
  • ]
  • normalisers object[]
    -A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. -It is not possible to cancel another party's order with this command. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    orderSubmission object
    +
  • Array [
  • ]
  • trigger object
    -A command that submits an order to the Vega network for a given market. +Conditions for determining when to call the contract method. -
    icebergOpts object
    +
    timeTrigger object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    peggedOrder object
    +
    oracle object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    proposal object
    +
    filters object[]
    -Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. -For example this command can be used to propose a new market. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    rationale object
    +
  • Array [
  • conditions object[]
    -Rationale behind a proposal. +Conditions that should be matched by the data to be +considered of interest. -
    terms object
    +
  • Array [
  • ]
  • key object
    -Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. +Data source's data property key targeted by the filter. -
    cancelTransfer object
    +
  • ]
  • signers object[]
    -Cancel a governance transfer. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    changes object
    newAsset object
    +
  • Array [
  • ethAddress object
    -Proposal change for creating new assets on Vega. +In case of an open oracle - Ethereum address will be submitted. -
    changes object
    +
    pubKey object
    -Configuration of the new asset. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    builtinAsset object
    +
  • ]
  • internal object
    -Vega built-in asset. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    erc20 object
    +
    time object
    -Ethereum ERC20 asset. +Internal data source used for emitting timestamps. -
    newMarket object
    +
    conditions object[]
    -Proposal change for creating new futures market on Vega. +Conditions that the timestamps should meet in order to be considered. -
    changes object
    +
  • Array [
  • ]
  • timeTrigger object
    -Configuration of the new market. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    instrument object
    +
    conditions object[]
    -New futures market instrument configuration. +Conditions that the timestamps need to meet in order to be considered. -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -4968,7 +10859,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5035,7 +10926,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -5070,7 +10961,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5137,21 +11028,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -5180,7 +11065,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5247,13 +11132,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -5282,7 +11197,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5349,59 +11264,141 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Spot. +Price monitoring parameters. -
    liquidityMonitoringParameters object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Liquidity monitoring parameters. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
    targetStakeParameters object
    +
    successor object
    -Specifies parameters related to target stake calculation. +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. -
    liquiditySlaParameters object
    logNormal object
    +
    newSpotMarket object
    -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. +Proposal change for creating new spot market on Vega. -
    params object
    +
    changes object
    -Risk model parameters for log normal. +Configuration of the new spot market. -
    priceMonitoringParameters object
    +
    instrument object
    -Price monitoring parameters. +New spot market instrument configuration. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
    future object
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Future. -
    successor object
    +
    dataSourceSpecBinding object
    -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    newSpotMarket object
    +
  • ]
  • internal object
    -Proposal change for creating new spot market on Vega. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    changes object
    +
    time object
    -Configuration of the new spot market. +Internal data source used for emitting timestamps. -
    instrument object
    +
    conditions object[]
    -New spot market instrument configuration. +Conditions that the timestamps should meet in order to be considered. -
    future object
    +
  • Array [
  • ]
  • timeTrigger object
    -Future. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    dataSourceSpecBinding object
    +
    conditions object[]
    -Binding between the data source spec and the settlement data. +Conditions that the timestamps need to meet in order to be considered. -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -5436,7 +11433,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5503,7 +11500,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -5538,7 +11543,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5605,15 +11610,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -5648,7 +11645,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5715,13 +11712,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -5750,7 +11749,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5817,11 +11816,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -5853,7 +11856,7 @@ Proposal change for a governance transfer. Configuration for a new transfer. -
    oneOff object
    recurring object
    dispatchStrategy object
    +
    oneOff object
    recurring object
    dispatchStrategy object
    Optional parameter defining how a transfer is dispatched. @@ -5861,7 +11864,7 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • updateAsset object
    +
  • Array [
  • ]
  • updateAsset object
    Proposal change for updating an asset. @@ -5928,7 +11931,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -6030,7 +12033,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -6097,7 +12100,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    Perpetual. @@ -6105,7 +12108,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -6140,7 +12143,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -6242,7 +12245,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -6309,7 +12416,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -6325,7 +12440,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -6373,7 +12592,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -6411,7 +12634,7 @@ benefit a party can expect based on performance criteria. A validator command sent manually by a node operator to propose a protocol upgrade. -
    transfer object
    oneOff object
    +
    transfer object
    oneOff object
    Details of a one-off transfer that is executed once at a specified time. @@ -6427,11 +12650,11 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • undelegateSubmission object
    +
  • Array [
  • ]
  • undelegateSubmission object
    Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node. -
    voteSubmission object
    +
    voteSubmission object
    Command that allows a token holder to vote for or against an active governance proposal. @@ -6449,7 +12672,7 @@ Details specific to the foreign chain, such as the receiver address. ERC20 withdrawal details. -
    validatorScore object
    validatorUpdate object
    vestingBalancesSummary object
    +
    validatorScore object
    validatorUpdate object
    vestingBalancesSummary object
    Event notifying of an update to the vesting and locked balances. @@ -6509,7 +12732,11 @@ Event notifying of an update to the volume discount statistics. All parties' stats. -
  • Array [
  • ]
  • vote object
    withdrawal object
    ext object
    +
  • Array [
  • ]
  • vote object
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
    withdrawal object
    ext object
    Foreign chain specifics. @@ -6517,7 +12744,7 @@ Foreign chain specifics. ERC20 withdrawal details. -
  • ]
  • +
  • ]
  • An unexpected error response. diff --git a/docs/api/rest/core/core-service-statistics.api.mdx b/docs/api/rest/core/core-service-statistics.api.mdx index 859610e23..046743abd 100644 --- a/docs/api/rest/core/core-service-statistics.api.mdx +++ b/docs/api/rest/core/core-service-statistics.api.mdx @@ -5,7 +5,7 @@ description: "Get statistics on Vega" sidebar_label: "Statistics" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"statistics":{"properties":{"accountSubscriptions":{"format":"int64","title":"Current number of stream subscribers to account data","type":"integer"},"appVersion":{"title":"Version of the Vega node software","type":"string"},"appVersionHash":{"title":"Version hash of the Vega node software","type":"string"},"averageOrdersPerBlock":{"format":"uint64","title":"Average orders per block","type":"string"},"averageTxBytes":{"format":"uint64","title":"Average transaction size in bytes","type":"string"},"backlogLength":{"format":"uint64","title":"Current backlog length i.e., number of transactions, that are waiting to be included in a block","type":"string"},"blockDuration":{"format":"uint64","title":"Current block duration, in nanoseconds","type":"string"},"blockHash":{"title":"Current block hash","type":"string"},"blockHeight":{"format":"uint64","title":"Current block height as reported by the Vega blockchain","type":"string"},"candleSubscriptions":{"format":"int64","title":"Current number of stream subscribers to candlestick data","type":"integer"},"chainId":{"title":"Unique ID for the underlying Vega blockchain","type":"string"},"chainVersion":{"title":"Version of the underlying Vega blockchain","type":"string"},"currentTime":{"title":"Current system date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"epochExpiryTime":{"title":"Epoch expected end time","type":"string"},"epochSeq":{"format":"uint64","title":"Current epoch","type":"string"},"epochStartTime":{"title":"Epoch start time","type":"string"},"eventCount":{"format":"uint64","title":"Number of events in the last block","type":"string"},"eventsPerSecond":{"format":"uint64","title":"Rate of events per second in the last block","type":"string"},"genesisTime":{"title":"Genesis block date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"marketDataSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market data","type":"integer"},"marketDepthSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market depth data","type":"integer"},"marketDepthUpdatesSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market depth update data","type":"integer"},"orderSubscriptions":{"format":"int64","title":"Current number of stream subscribers to order data","type":"integer"},"ordersPerSecond":{"format":"uint64","title":"Orders processed per second","type":"string"},"positionsSubscriptions":{"format":"int64","title":"Current number of stream subscribers to positions data","type":"integer"},"status":{"title":"Status of the connection to the Vega blockchain","default":"CHAIN_STATUS_UNSPECIFIED","description":"- CHAIN_STATUS_UNSPECIFIED: Default value, always invalid\n - CHAIN_STATUS_DISCONNECTED: Blockchain is disconnected\n - CHAIN_STATUS_REPLAYING: Blockchain is replaying historic transactions\n - CHAIN_STATUS_CONNECTED: Blockchain is connected and receiving transactions","enum":["CHAIN_STATUS_UNSPECIFIED","CHAIN_STATUS_DISCONNECTED","CHAIN_STATUS_REPLAYING","CHAIN_STATUS_CONNECTED"],"type":"string"},"totalAmendOrder":{"format":"uint64","title":"Total number of order amendments since genesis across all markets","type":"string"},"totalCancelOrder":{"format":"uint64","title":"Total number of order cancellations since genesis across all markets","type":"string"},"totalCreateOrder":{"format":"uint64","title":"Total number of order submissions since genesis across all markets","type":"string"},"totalMarkets":{"format":"uint64","title":"Total markets on this Vega network","type":"string"},"totalOrders":{"format":"uint64","title":"Total number of orders processed since genesis across all markets","type":"string"},"totalPeers":{"format":"uint64","title":"Total number of connected peers to this node","type":"string"},"totalTrades":{"format":"uint64","title":"Total number of trades emitted since genesis across all markets","type":"string"},"tradeSubscriptions":{"format":"int64","title":"Current number of stream subscribers to trade data","type":"integer"},"tradesPerSecond":{"format":"uint64","title":"Trades emitted per second","type":"string"},"txPerBlock":{"format":"uint64","title":"Transactions per block","type":"string"},"uptime":{"title":"Total uptime for this node formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"vegaTime":{"title":"Current Vega date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"}},"title":"Vega domain specific statistics as reported by the node the caller is connected to","type":"object"}},"title":"Response containing statistics about the Vega network","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get statistics on Vega","operationId":"CoreService_Statistics","method":"get","path":"/statistics","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Statistics","description":{"content":"Get statistics on Vega","type":"text/plain"},"url":{"path":["statistics"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"statistics":{"properties":{"accountSubscriptions":{"format":"int64","title":"Current number of stream subscribers to account data","type":"integer"},"appVersion":{"title":"Version of the Vega node software","type":"string"},"appVersionHash":{"title":"Version hash of the Vega node software","type":"string"},"averageOrdersPerBlock":{"format":"uint64","title":"Average orders per block","type":"string"},"averageTxBytes":{"format":"uint64","title":"Average transaction size in bytes","type":"string"},"backlogLength":{"format":"uint64","title":"Current backlog length i.e., number of transactions, that are waiting to be included in a block","type":"string"},"blockDuration":{"format":"uint64","title":"Current block duration, in nanoseconds","type":"string"},"blockHash":{"title":"Current block hash","type":"string"},"blockHeight":{"format":"uint64","title":"Current block height as reported by the Vega blockchain","type":"string"},"candleSubscriptions":{"format":"int64","title":"Current number of stream subscribers to candlestick data","type":"integer"},"chainId":{"title":"Unique ID for the underlying Vega blockchain","type":"string"},"chainVersion":{"title":"Version of the underlying Vega blockchain","type":"string"},"currentTime":{"title":"Current system date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"epochExpiryTime":{"title":"Epoch expected end time","type":"string"},"epochSeq":{"format":"uint64","title":"Current epoch","type":"string"},"epochStartTime":{"title":"Epoch start time","type":"string"},"eventCount":{"format":"uint64","title":"Number of events in the last block","type":"string"},"eventsPerSecond":{"format":"uint64","title":"Rate of events per second in the last block","type":"string"},"genesisTime":{"title":"Genesis block date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"marketDataSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market data","type":"integer"},"marketDepthSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market depth data","type":"integer"},"marketDepthUpdatesSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market depth update data","type":"integer"},"orderSubscriptions":{"format":"int64","title":"Current number of stream subscribers to order data","type":"integer"},"ordersPerSecond":{"format":"uint64","title":"Orders processed per second","type":"string"},"positionsSubscriptions":{"format":"int64","title":"Current number of stream subscribers to positions data","type":"integer"},"status":{"title":"Status of the connection to the Vega blockchain","default":"CHAIN_STATUS_UNSPECIFIED","description":"- CHAIN_STATUS_UNSPECIFIED: Default value, always invalid\n - CHAIN_STATUS_DISCONNECTED: Blockchain is disconnected\n - CHAIN_STATUS_REPLAYING: Blockchain is replaying historic transactions\n - CHAIN_STATUS_CONNECTED: Blockchain is connected and receiving transactions","enum":["CHAIN_STATUS_UNSPECIFIED","CHAIN_STATUS_DISCONNECTED","CHAIN_STATUS_REPLAYING","CHAIN_STATUS_CONNECTED"],"type":"string"},"totalAmendOrder":{"format":"uint64","title":"Total number of order amendments since genesis across all markets","type":"string"},"totalCancelOrder":{"format":"uint64","title":"Total number of order cancellations since genesis across all markets","type":"string"},"totalCreateOrder":{"format":"uint64","title":"Total number of order submissions since genesis across all markets","type":"string"},"totalMarkets":{"format":"uint64","title":"Total markets on this Vega network","type":"string"},"totalOrders":{"format":"uint64","title":"Total number of orders processed since genesis across all markets","type":"string"},"totalPeers":{"format":"uint64","title":"Total number of connected peers to this node","type":"string"},"totalTrades":{"format":"uint64","title":"Total number of trades emitted since genesis across all markets","type":"string"},"tradeSubscriptions":{"format":"int64","title":"Current number of stream subscribers to trade data","type":"integer"},"tradesPerSecond":{"format":"uint64","title":"Trades emitted per second","type":"string"},"txPerBlock":{"format":"uint64","title":"Transactions per block","type":"string"},"uptime":{"title":"Total uptime for this node formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"vegaTime":{"title":"Current Vega date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"}},"title":"Vega domain specific statistics as reported by the node the caller is connected to","type":"object"}},"title":"Response containing statistics about the Vega network","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get statistics on Vega","operationId":"CoreService_Statistics","method":"get","path":"/statistics","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Statistics","description":{"content":"Get statistics on Vega","type":"text/plain"},"url":{"path":["statistics"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Statistics' (core-service-statistics)" diff --git a/docs/api/rest/core/core-service-submit-raw-transaction.api.mdx b/docs/api/rest/core/core-service-submit-raw-transaction.api.mdx index 1c1806e08..8f2689fd2 100644 --- a/docs/api/rest/core/core-service-submit-raw-transaction.api.mdx +++ b/docs/api/rest/core/core-service-submit-raw-transaction.api.mdx @@ -6,7 +6,7 @@ The network will then attempt to execute the transaction in the next available b sidebar_label: "Submit raw transaction" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"height":{"description":"Unused.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction was validated and submitted to the chain's mempool.","type":"boolean"},"txHash":{"description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","type":"string"}},"title":"Response for submitting a version agnostic transaction on Vega","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Submit a pre-serialised signed transaction containing a command to the network to be executed, such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","operationId":"CoreService_SubmitRawTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"format":"byte","required":["tx"],"title":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that will be submitted to the Vega blockchain","type":"string"},"type":{"title":"Type of transaction request, for example ASYNC, meaning the transaction will be submitted and not block on a response","default":"TYPE_UNSPECIFIED","description":"- TYPE_ASYNC: Transaction will be submitted without waiting for response\n - TYPE_SYNC: Transaction will be submitted, and blocking until the\ntendermint mempool returns a response\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the tendermint\nnetwork has committed it into a block. Used only for debugging,\nnot for submitting transactions","enum":["TYPE_UNSPECIFIED","TYPE_ASYNC","TYPE_SYNC","TYPE_COMMIT"],"type":"string"}},"required":["tx"],"title":"Request for submitting a version agnostic transaction on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction/raw","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"jsonRequestBodyExample":{"tx":"string","type":"TYPE_UNSPECIFIED"},"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Submit raw transaction","description":{"content":"Submit a pre-serialised signed transaction containing a command to the network to be executed, such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","type":"text/plain"},"url":{"path":["transaction","raw"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"height":{"description":"Unused.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction was validated and submitted to the chain's mempool.","type":"boolean"},"txHash":{"description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","type":"string"}},"title":"Response for submitting a version agnostic transaction on Vega","type":"object"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Submit a pre-serialised signed transaction containing a command to the network to be executed, such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","operationId":"CoreService_SubmitRawTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"format":"byte","required":["tx"],"title":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that will be submitted to the Vega blockchain","type":"string"},"type":{"title":"Type of transaction request, for example ASYNC, meaning the transaction will be submitted and not block on a response","default":"TYPE_UNSPECIFIED","description":"- TYPE_ASYNC: Transaction will be submitted without waiting for response\n - TYPE_SYNC: Transaction will be submitted, and blocking until the\ntendermint mempool returns a response\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the tendermint\nnetwork has committed it into a block. Used only for debugging,\nnot for submitting transactions","enum":["TYPE_UNSPECIFIED","TYPE_ASYNC","TYPE_SYNC","TYPE_COMMIT"],"type":"string"}},"required":["tx"],"title":"Request for submitting a version agnostic transaction on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction/raw","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"jsonRequestBodyExample":{"tx":"string","type":"TYPE_UNSPECIFIED"},"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Submit raw transaction","description":{"content":"Submit a pre-serialised signed transaction containing a command to the network to be executed, such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","type":"text/plain"},"url":{"path":["transaction","raw"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} sidebar_class_name: "post api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Submit raw transaction' (core-service-submit-raw-transaction)" diff --git a/docs/api/rest/core/core-service-submit-transaction.api.mdx b/docs/api/rest/core/core-service-submit-transaction.api.mdx index bd3420e8a..5a8f6846f 100644 --- a/docs/api/rest/core/core-service-submit-transaction.api.mdx +++ b/docs/api/rest/core/core-service-submit-transaction.api.mdx @@ -6,7 +6,7 @@ The network will then attempt to execute the transaction in the next available b sidebar_label: "Submit transaction" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for submitting a transaction on the network.","properties":{"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"height":{"description":"Unused.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction was validated and submitted to the chain's mempool.","type":"boolean"},"txHash":{"description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","type":"string"}},"type":"object","title":"v1SubmitTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Submit a signed transaction to the network containing a command to be executed such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","operationId":"CoreService_SubmitTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"description":"Transaction containing a command to execute on the network, and a signature to provide authentication.","properties":{"address":{"description":"Hex-encoded address of the sender. Not supported yet.","type":"string"},"inputData":{"description":"Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`.","format":"byte","type":"string"},"pow":{"description":"Proof-of-work containing the random transaction ID used by the client and the nonce.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object","title":"v1ProofOfWork"},"pubKey":{"description":"Hex-encoded public key of the sender.","type":"string"},"signature":{"description":"Signature of the input data field, signed by the sender of this transaction.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"version":{"description":"Version of the transaction.","default":"TX_VERSION_UNSPECIFIED","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string","title":"v1TxVersion"}},"type":"object","title":"v1Transaction"},"type":{"description":"Method of submission.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ASYNC","TYPE_SYNC","TYPE_COMMIT"],"type":"string","title":"v1SubmitTransactionRequestType"}},"title":"Request for submitting a transaction v2 on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"jsonRequestBodyExample":{"tx":{"address":"string","inputData":"string","pow":{"nonce":"string","tid":"string"},"pubKey":"string","signature":{"algo":"string","value":"string","version":0},"version":"TX_VERSION_UNSPECIFIED"},"type":"TYPE_UNSPECIFIED"},"info":{"title":"Vega core APIs","version":"v0.73.1"},"postman":{"name":"Submit transaction","description":{"content":"Submit a signed transaction to the network containing a command to be executed such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","type":"text/plain"},"url":{"path":["transaction"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for submitting a transaction on the network.","properties":{"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"height":{"description":"Unused.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction was validated and submitted to the chain's mempool.","type":"boolean"},"txHash":{"description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","type":"string"}},"type":"object","title":"v1SubmitTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Submit a signed transaction to the network containing a command to be executed such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","operationId":"CoreService_SubmitTransaction","requestBody":{"content":{"application/json":{"schema":{"properties":{"tx":{"description":"Transaction containing a command to execute on the network, and a signature to provide authentication.","properties":{"address":{"description":"Hex-encoded address of the sender. Not supported yet.","type":"string"},"inputData":{"description":"Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`.","format":"byte","type":"string"},"pow":{"description":"Proof-of-work containing the random transaction ID used by the client and the nonce.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object","title":"v1ProofOfWork"},"pubKey":{"description":"Hex-encoded public key of the sender.","type":"string"},"signature":{"description":"Signature of the input data field, signed by the sender of this transaction.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"version":{"description":"Version of the transaction.","default":"TX_VERSION_UNSPECIFIED","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string","title":"v1TxVersion"}},"type":"object","title":"v1Transaction"},"type":{"description":"Method of submission.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ASYNC","TYPE_SYNC","TYPE_COMMIT"],"type":"string","title":"v1SubmitTransactionRequestType"}},"title":"Request for submitting a transaction v2 on Vega","type":"object"}}},"required":true},"method":"post","path":"/transaction","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"jsonRequestBodyExample":{"tx":{"address":"string","inputData":"string","pow":{"nonce":"string","tid":"string"},"pubKey":"string","signature":{"algo":"string","value":"string","version":0},"version":"TX_VERSION_UNSPECIFIED"},"type":"TYPE_UNSPECIFIED"},"info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Submit transaction","description":{"content":"Submit a signed transaction to the network containing a command to be executed such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","type":"text/plain"},"url":{"path":["transaction"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"\"\"","options":{"raw":{"language":"json"}}}}} sidebar_class_name: "post api-method" info_path: api/rest/core/vega-core-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Submit transaction' (core-service-submit-transaction)" diff --git a/docs/api/rest/data-v2/sidebar.js b/docs/api/rest/data-v2/sidebar.js index 9c3cb2035..a295aa44a 100644 --- a/docs/api/rest/data-v2/sidebar.js +++ b/docs/api/rest/data-v2/sidebar.js @@ -1 +1 @@ -module.exports = [{"type":"category","label":"Accounts","link":{"type":"generated-index","title":"Accounts","slug":"/category/api/rest/data-v2/accounts"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-accounts","label":"List accounts","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-balance-changes","label":"List balance changes","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-accounts","label":"Accounts subscription","className":"api-method get"}]},{"type":"category","label":"Assets","link":{"type":"generated-index","title":"Assets","slug":"/category/api/rest/data-v2/assets"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-asset","label":"Get asset","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-assets","label":"List assets","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-deposit","label":"Get deposit","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-deposits","label":"List deposits","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-withdrawal","label":"Get withdrawal","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-withdrawals","label":"List withdrawals","className":"api-method get"}]},{"type":"category","label":"Candles","link":{"type":"generated-index","title":"Candles","slug":"/category/api/rest/data-v2/candles"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-candle-data","label":"List candle data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-candle-intervals","label":"List candle intervals","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-candle-data","label":"Observe candle data","className":"api-method get"}]},{"type":"category","label":"Network","link":{"type":"generated-index","title":"Network","slug":"/category/api/rest/data-v2/network"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-checkpoints","label":"List checkpoints","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-delegations","label":"List delegations","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-epoch","label":"Get epoch","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-data","label":"Get network data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-limits","label":"Get network limits","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-network-parameters","label":"List network parameters","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-parameter","label":"Get network parameter","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-node","label":"Get node","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-nodes","label":"List nodes","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-stake","label":"Get stake","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-core-snapshots","label":"List snapshots","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-protocol-upgrade-proposals","label":"List protocol upgrade proposals","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-protocol-upgrade-status","label":"Get protocol upgrade status","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-ethereum-key-rotations","label":"List Ethereum key rotations","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-key-rotations","label":"List key rotations","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-vega-time","label":"Get Vega time","className":"api-method get"}]},{"type":"category","label":"ERC20 bridge","link":{"type":"generated-index","title":"ERC20 bridge","slug":"/category/api/rest/data-v2/erc-20-bridge"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-erc-20-set-asset-limits-bundle","label":"Get ERC20 set asset limits bundle","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-erc-20-list-asset-bundle","label":"Get ERC20 list asset bundle","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-erc-20-withdrawal-approval","label":"Get ERC20 withdrawal approval","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-added-bundles","label":"List ERC20 multi-sig signer added bundles","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-removed-bundles","label":"List ERC20 multi-sig signer removed bundles","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-node-signatures","label":"List node signatures","className":"api-method get"}]},{"type":"category","label":"Orders","link":{"type":"generated-index","title":"Orders","slug":"/category/api/rest/data-v2/orders"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-estimate-fee","label":"Estimate fee","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-estimate-margin","label":"Estimate margin","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-order-versions","label":"List order versions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-order","label":"Get order","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-orders","label":"List orders","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-stop-order","label":"Get stop order","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-stop-orders","label":"List stop orders","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-orders","label":"Observe orders","className":"api-method get"}]},{"type":"category","label":"Positions","link":{"type":"generated-index","title":"Positions","slug":"/category/api/rest/data-v2/positions"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-estimate-position","label":"Estimate position","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-all-positions","label":"List positions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-positions","label":"Observe positions","className":"api-method get"}]},{"type":"category","label":"Fees","link":{"type":"generated-index","title":"Fees","slug":"/category/api/rest/data-v2/fees"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-fees-stats","label":"Get fees statistics","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-fees-stats-for-party","label":"Get fees statistics for a party","className":"api-method get"}]},{"type":"category","label":"Markets","link":{"type":"generated-index","title":"Markets","slug":"/category/api/rest/data-v2/markets"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-funding-payments","label":"List funding payments","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-funding-period-data-points","label":"List funding period data points","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-funding-periods","label":"List funding periods","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-market-data-history-by-id","label":"Get market data history","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-latest-market-data","label":"Get latest market data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-latest-market-depth","label":"Get latest market depth","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-market","label":"Get market","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-risk-factors","label":"Get risk factors","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-markets","label":"List markets","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-latest-market-data","label":"List latest market data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-markets-data","label":"Observe markets data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-markets-depth","label":"Observe markets depth","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-markets-depth-updates","label":"Observe markets depth updates","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-successor-markets","label":"List successor markets","className":"api-method get"}]},{"type":"category","label":"Governance","link":{"type":"generated-index","title":"Governance","slug":"/category/api/rest/data-v2/governance"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-governance-data","label":"Get governance data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-governance-data","label":"List governance data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-governance","label":"Observe governance","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-votes","label":"Observe votes","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-votes","label":"List votes","className":"api-method get"}]},{"type":"category","label":"Node information","link":{"type":"generated-index","title":"Node information","slug":"/category/api/rest/data-v2/node-information"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-info","label":"Data node information","className":"api-method get"}]},{"type":"category","label":"Ledger entries","link":{"type":"generated-index","title":"Ledger entries","slug":"/category/api/rest/data-v2/ledger-entries"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-export-ledger-entries","label":"Export ledger entries","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-ledger-entries","label":"List ledger entries","className":"api-method get"}]},{"type":"category","label":"Liquidity","link":{"type":"generated-index","title":"Liquidity","slug":"/category/api/rest/data-v2/liquidity"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-all-liquidity-provisions","label":"List liquidity provisions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-paid-liquidity-fees","label":"List paid liquidity fees data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-liquidity-providers","label":"List liquidity providers data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-liquidity-provisions","label":"List liquidity provisions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-liquidity-provisions","label":"Observe liquidity provisions","className":"api-method get"}]},{"type":"category","label":"Margin levels","link":{"type":"generated-index","title":"Margin levels","slug":"/category/api/rest/data-v2/margin-levels"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-margin-levels","label":"List margin levels","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-margin-levels","label":"Observe margin levels","className":"api-method get"}]},{"type":"category","label":"Trades","link":{"type":"generated-index","title":"Trades","slug":"/category/api/rest/data-v2/trades"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-last-trade","label":"Get last trade","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-trades","label":"Observe trades","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-trades","label":"List trades","className":"api-method get"}]},{"type":"category","label":"Network history","link":{"type":"generated-index","title":"Network history","slug":"/category/api/rest/data-v2/network-history"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-history-status","label":"Network history status","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-history-bootstrap-peers","label":"Network history bootstrap peers","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-export-network-history","label":"Export network history as CSV","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-all-network-history-segments","label":"List all network history segments","className":"api-method get"}]},{"type":"category","label":"Data sources","link":{"type":"generated-index","title":"Data sources","slug":"/category/api/rest/data-v2/data-sources"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-oracle-data","label":"List oracle data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-oracle-spec","label":"Get oracle spec","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-oracle-specs","label":"List oracle specs","className":"api-method get"}]},{"type":"category","label":"Parties","link":{"type":"generated-index","title":"Parties","slug":"/category/api/rest/data-v2/parties"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-parties","label":"List parties","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-party","label":"Get party","className":"api-method get"}]},{"type":"category","label":"Referral program","link":{"type":"generated-index","title":"Referral program","slug":"/category/api/rest/data-v2/referral-program"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-party-activity-streak","label":"List party activity streak","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-current-referral-program","label":"Get current referral program","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-referral-sets","label":"List referral sets","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-referral-set-referees","label":"List referral set referees","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-referral-set-stats","label":"Get referral set statistics","className":"api-method get"}]},{"type":"category","label":"Rewards","link":{"type":"generated-index","title":"Rewards","slug":"/category/api/rest/data-v2/rewards"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-rewards","label":"List rewards","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-epoch-reward-summaries","label":"List epoch reward summaries","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-reward-summaries","label":"List reward summaries","className":"api-method get"}]},{"type":"category","label":"Events","link":{"type":"generated-index","title":"Events","slug":"/category/api/rest/data-v2/events"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-event-bus","label":"Observe event bus","className":"api-method get"}]},{"type":"category","label":"Ledger movements","link":{"type":"generated-index","title":"Ledger movements","slug":"/category/api/rest/data-v2/ledger-movements"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-ledger-movements","label":"Observe ledger movements","className":"api-method get"}]},{"type":"category","label":"Teams","link":{"type":"generated-index","title":"Teams","slug":"/category/api/rest/data-v2/teams"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-teams","label":"List teams","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-team-referee-history","label":"List referee team history","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-team-referees","label":"List team referees","className":"api-method get"}]},{"type":"category","label":"Transfers","link":{"type":"generated-index","title":"Transfers","slug":"/category/api/rest/data-v2/transfers"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-transfer","label":"Get transfer by ID","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-transfers","label":"List transfers","className":"api-method get"}]},{"type":"category","label":"Volume discount program","link":{"type":"generated-index","title":"Volume discount program","slug":"/category/api/rest/data-v2/volume-discount-program"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-current-volume-discount-program","label":"Get current volume discount program","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-volume-discount-stats","label":"Get volume discount statistics","className":"api-method get"}]}]; \ No newline at end of file +module.exports = [{"type":"category","label":"Accounts","link":{"type":"generated-index","title":"Accounts","slug":"/category/api/rest/data-v2/accounts"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-accounts","label":"List accounts","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-balance-changes","label":"List balance changes","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-accounts","label":"Accounts subscription","className":"api-method get"}]},{"type":"category","label":"Assets","link":{"type":"generated-index","title":"Assets","slug":"/category/api/rest/data-v2/assets"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-asset","label":"Get asset","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-assets","label":"List assets","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-deposit","label":"Get deposit","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-deposits","label":"List deposits","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-withdrawal","label":"Get withdrawal","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-withdrawals","label":"List withdrawals","className":"api-method get"}]},{"type":"category","label":"Candles","link":{"type":"generated-index","title":"Candles","slug":"/category/api/rest/data-v2/candles"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-candle-data","label":"List candle data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-candle-intervals","label":"List candle intervals","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-candle-data","label":"Observe candle data","className":"api-method get"}]},{"type":"category","label":"Network","link":{"type":"generated-index","title":"Network","slug":"/category/api/rest/data-v2/network"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-checkpoints","label":"List checkpoints","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-delegations","label":"List delegations","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-epoch","label":"Get epoch","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-data","label":"Get network data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-limits","label":"Get network limits","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-network-parameters","label":"List network parameters","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-parameter","label":"Get network parameter","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-node","label":"Get node","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-nodes","label":"List nodes","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-stake","label":"Get stake","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-core-snapshots","label":"List snapshots","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-protocol-upgrade-proposals","label":"List protocol upgrade proposals","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-protocol-upgrade-status","label":"Get protocol upgrade status","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-ethereum-key-rotations","label":"List Ethereum key rotations","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-key-rotations","label":"List key rotations","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-vega-time","label":"Get Vega time","className":"api-method get"}]},{"type":"category","label":"ERC20 bridge","link":{"type":"generated-index","title":"ERC20 bridge","slug":"/category/api/rest/data-v2/erc-20-bridge"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-erc-20-set-asset-limits-bundle","label":"Get ERC20 set asset limits bundle","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-erc-20-list-asset-bundle","label":"Get ERC20 list asset bundle","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-erc-20-withdrawal-approval","label":"Get ERC20 withdrawal approval","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-added-bundles","label":"List ERC20 multi-sig signer added bundles","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-removed-bundles","label":"List ERC20 multi-sig signer removed bundles","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-node-signatures","label":"List node signatures","className":"api-method get"}]},{"type":"category","label":"Orders","link":{"type":"generated-index","title":"Orders","slug":"/category/api/rest/data-v2/orders"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-estimate-fee","label":"Estimate fee","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-estimate-margin","label":"Estimate margin","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-order-versions","label":"List order versions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-order","label":"Get order","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-orders","label":"List orders","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-stop-order","label":"Get stop order","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-stop-orders","label":"List stop orders","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-orders","label":"Observe orders","className":"api-method get"}]},{"type":"category","label":"Positions","link":{"type":"generated-index","title":"Positions","slug":"/category/api/rest/data-v2/positions"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-estimate-position","label":"Estimate position","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-all-positions","label":"List positions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-positions","label":"Observe positions","className":"api-method get"}]},{"type":"category","label":"Fees","link":{"type":"generated-index","title":"Fees","slug":"/category/api/rest/data-v2/fees"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-fees-stats","label":"Get fees statistics","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-fees-stats-for-party","label":"Get fees statistics for a party","className":"api-method get"}]},{"type":"category","label":"Markets","link":{"type":"generated-index","title":"Markets","slug":"/category/api/rest/data-v2/markets"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-funding-payments","label":"List funding payments","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-funding-period-data-points","label":"List funding period data points","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-funding-periods","label":"List funding periods","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-market-data-history-by-id","label":"Get market data history","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-latest-market-data","label":"Get latest market data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-latest-market-depth","label":"Get latest market depth","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-market","label":"Get market","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-risk-factors","label":"Get risk factors","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-markets","label":"List markets","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-latest-market-data","label":"List latest market data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-markets-data","label":"Observe markets data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-markets-depth","label":"Observe markets depth","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-markets-depth-updates","label":"Observe markets depth updates","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-successor-markets","label":"List successor markets","className":"api-method get"}]},{"type":"category","label":"Games","link":{"type":"generated-index","title":"Games","slug":"/category/api/rest/data-v2/games"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-games","label":"List games","className":"api-method get"}]},{"type":"category","label":"Governance","link":{"type":"generated-index","title":"Governance","slug":"/category/api/rest/data-v2/governance"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-governance-data","label":"Get governance data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-governance-data","label":"List governance data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-governance","label":"Observe governance","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-votes","label":"Observe votes","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-votes","label":"List votes","className":"api-method get"}]},{"type":"category","label":"Node information","link":{"type":"generated-index","title":"Node information","slug":"/category/api/rest/data-v2/node-information"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-info","label":"Data node information","className":"api-method get"}]},{"type":"category","label":"Ledger entries","link":{"type":"generated-index","title":"Ledger entries","slug":"/category/api/rest/data-v2/ledger-entries"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-export-ledger-entries","label":"Export ledger entries","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-ledger-entries","label":"List ledger entries","className":"api-method get"}]},{"type":"category","label":"Liquidity","link":{"type":"generated-index","title":"Liquidity","slug":"/category/api/rest/data-v2/liquidity"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-all-liquidity-provisions","label":"List liquidity provisions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-paid-liquidity-fees","label":"List paid liquidity fees data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-liquidity-providers","label":"List liquidity providers data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-liquidity-provisions","label":"List liquidity provisions","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-liquidity-provisions","label":"Observe liquidity provisions","className":"api-method get"}]},{"type":"category","label":"MarginModes","link":{"type":"generated-index","title":"MarginModes","slug":"/category/api/rest/data-v2/margin-modes"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-party-margin-modes","label":"List margin modes per party per market","className":"api-method get"}]},{"type":"category","label":"Margin levels","link":{"type":"generated-index","title":"Margin levels","slug":"/category/api/rest/data-v2/margin-levels"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-margin-levels","label":"List margin levels","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-margin-levels","label":"Observe margin levels","className":"api-method get"}]},{"type":"category","label":"Trades","link":{"type":"generated-index","title":"Trades","slug":"/category/api/rest/data-v2/trades"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-last-trade","label":"Get last trade","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-trades","label":"Observe trades","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-trades","label":"List trades","className":"api-method get"}]},{"type":"category","label":"Network history","link":{"type":"generated-index","title":"Network history","slug":"/category/api/rest/data-v2/network-history"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-history-status","label":"Network history status","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-network-history-bootstrap-peers","label":"Network history bootstrap peers","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-export-network-history","label":"Export network history as CSV","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-all-network-history-segments","label":"List all network history segments","className":"api-method get"}]},{"type":"category","label":"Data sources","link":{"type":"generated-index","title":"Data sources","slug":"/category/api/rest/data-v2/data-sources"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-oracle-data","label":"List oracle data","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-oracle-spec","label":"Get oracle spec","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-oracle-specs","label":"List oracle specs","className":"api-method get"}]},{"type":"category","label":"Parties","link":{"type":"generated-index","title":"Parties","slug":"/category/api/rest/data-v2/parties"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-parties","label":"List parties","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-parties-profiles","label":"List parties' profiles","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-party","label":"Get party","className":"api-method get"}]},{"type":"category","label":"Referral program","link":{"type":"generated-index","title":"Referral program","slug":"/category/api/rest/data-v2/referral-program"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-party-activity-streak","label":"List party activity streak","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-current-referral-program","label":"Get current referral program","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-referral-sets","label":"List referral sets","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-referral-set-referees","label":"List referral set referees","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-referral-set-stats","label":"Get referral set statistics","className":"api-method get"}]},{"type":"category","label":"Rewards","link":{"type":"generated-index","title":"Rewards","slug":"/category/api/rest/data-v2/rewards"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-rewards","label":"List rewards","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-epoch-reward-summaries","label":"List epoch reward summaries","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-reward-summaries","label":"List reward summaries","className":"api-method get"}]},{"type":"category","label":"Events","link":{"type":"generated-index","title":"Events","slug":"/category/api/rest/data-v2/events"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-event-bus","label":"Observe event bus","className":"api-method get"}]},{"type":"category","label":"Ledger movements","link":{"type":"generated-index","title":"Ledger movements","slug":"/category/api/rest/data-v2/ledger-movements"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-ledger-movements","label":"Observe ledger movements","className":"api-method get"}]},{"type":"category","label":"TransactionResults","link":{"type":"generated-index","title":"TransactionResults","slug":"/category/api/rest/data-v2/transaction-results"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-observe-transaction-results","label":"Observe transaction results","className":"api-method get"}]},{"type":"category","label":"Teams","link":{"type":"generated-index","title":"Teams","slug":"/category/api/rest/data-v2/teams"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-teams","label":"List teams","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-team-referee-history","label":"List referee team history","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-team-referees","label":"List team referees","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-teams-statistics","label":"List teams statistics","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-team-members-statistics","label":"List team members' statistics","className":"api-method get"}]},{"type":"category","label":"Transfers","link":{"type":"generated-index","title":"Transfers","slug":"/category/api/rest/data-v2/transfers"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-transfer","label":"Get transfer by ID","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-list-transfers","label":"List transfers","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-estimate-transfer-fee","label":"Estimate transfer fee costs","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-total-transfer-fee-discount","label":"Available transfer fee discount","className":"api-method get"}]},{"type":"category","label":"Volume discount program","link":{"type":"generated-index","title":"Volume discount program","slug":"/category/api/rest/data-v2/volume-discount-program"},"items":[{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-current-volume-discount-program","label":"Get current volume discount program","className":"api-method get"},{"type":"doc","id":"api/rest/data-v2/trading-data-service-get-volume-discount-stats","label":"Get volume discount statistics","className":"api-method get"}]}]; \ No newline at end of file diff --git a/docs/api/rest/data-v2/trading-data-service-estimate-fee.api.mdx b/docs/api/rest/data-v2/trading-data-service-estimate-fee.api.mdx index e2d54e482..cafd74163 100644 --- a/docs/api/rest/data-v2/trading-data-service-estimate-fee.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-estimate-fee.api.mdx @@ -6,7 +6,7 @@ with the specified price and size on the market." sidebar_label: "Estimate fee" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID, used to specify the fee factors.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Price at which the potential order is expected to trade.","in":"query","name":"price","required":true,"schema":{"type":"string"}},{"description":"Size at which the potential order is expected to trade.","in":"query","name":"size","required":true,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"fee":{"description":"Summary of the estimated fees for this order if it were to trade now.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"}},"title":"Response that is received from EstimateFeeRequest, contains the estimated fees for a given order","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Estimate the fee that would be incurred for submitting an order\nwith the specified price and size on the market.","operationId":"TradingDataService_EstimateFee","method":"get","path":"/api/v2/estimate/fee","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Estimate fee","description":{"content":"Estimate the fee that would be incurred for submitting an order\nwith the specified price and size on the market.","type":"text/plain"},"url":{"path":["api","v2","estimate","fee"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Market ID, used to specify the fee factors.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"(Required) Price at which the potential order is expected to trade.","type":"text/plain"},"key":"price","value":""},{"disabled":false,"description":{"content":"(Required) Size at which the potential order is expected to trade.","type":"text/plain"},"key":"size","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID, used to specify the fee factors.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Price at which the potential order is expected to trade.","in":"query","name":"price","required":true,"schema":{"type":"string"}},{"description":"Size at which the potential order is expected to trade.","in":"query","name":"size","required":true,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"fee":{"description":"Summary of the estimated fees for this order if it were to trade now.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"}},"title":"Response that is received from EstimateFeeRequest, contains the estimated fees for a given order","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Estimate the fee that would be incurred for submitting an order\nwith the specified price and size on the market.","operationId":"TradingDataService_EstimateFee","method":"get","path":"/api/v2/estimate/fee","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Estimate fee","description":{"content":"Estimate the fee that would be incurred for submitting an order\nwith the specified price and size on the market.","type":"text/plain"},"url":{"path":["api","v2","estimate","fee"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Market ID, used to specify the fee factors.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"(Required) Price at which the potential order is expected to trade.","type":"text/plain"},"key":"price","value":""},{"disabled":false,"description":{"content":"(Required) Size at which the potential order is expected to trade.","type":"text/plain"},"key":"size","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Estimate fee' (trading-data-service-estimate-fee)" diff --git a/docs/api/rest/data-v2/trading-data-service-estimate-margin.api.mdx b/docs/api/rest/data-v2/trading-data-service-estimate-margin.api.mdx index 1c61f41ed..2acb6676c 100644 --- a/docs/api/rest/data-v2/trading-data-service-estimate-margin.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-estimate-margin.api.mdx @@ -5,7 +5,7 @@ description: "Estimate the margin that would be required for submitting this ord sidebar_label: "Estimate margin" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID for the order.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Party ID of the order.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Order side - indicator for Seller or Buyer side.\n\n - SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","in":"query","name":"side","required":false,"schema":{"default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"type":"string"}},{"description":"Type of the order.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","in":"query","name":"type","required":false,"schema":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"type":"string"}},{"description":"Size of order.","in":"query","name":"size","required":true,"schema":{"format":"uint64","type":"string"}},{"description":"Price of the asset.","in":"query","name":"price","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marginLevels":{"description":"Summary of the estimated margins for this order if it were to trade now.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"title":"Response to an estimate margin request, containing the estimated margin levels for a given order","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Estimate the margin that would be required for submitting this order","operationId":"TradingDataService_EstimateMargin","method":"get","path":"/api/v2/estimate/margin","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Estimate margin","description":{"content":"Estimate the margin that would be required for submitting this order","type":"text/plain"},"url":{"path":["api","v2","estimate","margin"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Market ID for the order.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"(Required) Party ID of the order.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Order side - indicator for Seller or Buyer side.\n\n - SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","type":"text/plain"},"key":"side","value":""},{"disabled":false,"description":{"content":"Type of the order.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","type":"text/plain"},"key":"type","value":""},{"disabled":false,"description":{"content":"(Required) Size of order.","type":"text/plain"},"key":"size","value":""},{"disabled":false,"description":{"content":"(Required) Price of the asset.","type":"text/plain"},"key":"price","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID for the order.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Party ID of the order.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Order side - indicator for Seller or Buyer side.\n\n - SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","in":"query","name":"side","required":false,"schema":{"default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"type":"string"}},{"description":"Type of the order.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","in":"query","name":"type","required":false,"schema":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"type":"string"}},{"description":"Size of order.","in":"query","name":"size","required":true,"schema":{"format":"uint64","type":"string"}},{"description":"Price of the asset.","in":"query","name":"price","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marginLevels":{"description":"Summary of the estimated margins for this order if it were to trade now.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"description":"Margin mode for the party, cross margin or isolated margin.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"title":"Response to an estimate margin request, containing the estimated margin levels for a given order","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Estimate the margin that would be required for submitting this order","operationId":"TradingDataService_EstimateMargin","method":"get","path":"/api/v2/estimate/margin","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Estimate margin","description":{"content":"Estimate the margin that would be required for submitting this order","type":"text/plain"},"url":{"path":["api","v2","estimate","margin"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Market ID for the order.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"(Required) Party ID of the order.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Order side - indicator for Seller or Buyer side.\n\n - SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","type":"text/plain"},"key":"side","value":""},{"disabled":false,"description":{"content":"Type of the order.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","type":"text/plain"},"key":"type","value":""},{"disabled":false,"description":{"content":"(Required) Size of order.","type":"text/plain"},"key":"size","value":""},{"disabled":false,"description":{"content":"(Required) Price of the asset.","type":"text/plain"},"key":"price","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Estimate margin' (trading-data-service-estimate-margin)" @@ -34,7 +34,7 @@ A successful response. Summary of the estimated margins for this order if it were to trade now. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-estimate-position.api.mdx b/docs/api/rest/data-v2/trading-data-service-estimate-position.api.mdx index 450a80bdf..f256c136a 100644 --- a/docs/api/rest/data-v2/trading-data-service-estimate-position.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-estimate-position.api.mdx @@ -1,13 +1,13 @@ --- id: trading-data-service-estimate-position title: "Estimate position" -description: "Estimate the margin that would be required for maintaining the specified position. Margin estimates are scaled to asset decimal places. -If the optional collateral available argument is supplied, the response also contains the estimate of the liquidation price. +description: "Estimate the margin that would be required for maintaining the specified position, collateral increase needed to open the specified position and the liquidation price estimate. +Margin estimates are scaled to asset decimal places. Liquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request." sidebar_label: "Estimate position" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to estimate position for.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Open volume. This field is a signed integer scaled to the market's position decimal places.\nA negative number denotes a short position.","in":"query","name":"openVolume","required":true,"schema":{"format":"int64","type":"string"}},{"description":"Collateral available for the position. If provided then response will contain the liquidation price estimate.\nCollateral available needs to be provided scaled to asset decimal places. Liquidation price returned is scaled to asset decimal places by default.","in":"query","name":"collateralAvailable","required":false,"schema":{"type":"string"}},{"description":"Whether the liquidation price estimates should be scaled to market decimal places or by asset decimal places. If not set, asset decimal places are used.","in":"query","name":"scaleLiquidationPriceToMarketDecimals","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for the estimate of the margin level and, if available collateral was provided in the request, liquidation price for the specified position.","properties":{"liquidation":{"description":"Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request.","properties":{"bestCase":{"description":"Liquidation price estimate assuming no slippage.","properties":{"includingBuyOrders":{"description":"Liquidation price assuming buy orders start getting filled.","type":"string"},"includingSellOrders":{"description":"Liquidation price assuming sell orders start getting filled.","type":"string"},"openVolumeOnly":{"description":"Liquidation price for current open volume ignoring any active orders.","type":"string"}},"type":"object","title":"v2LiquidationPrice"},"worstCase":{"description":"Liquidation price estimate assuming slippage cap is applied.","properties":{"includingBuyOrders":{"description":"Liquidation price assuming buy orders start getting filled.","type":"string"},"includingSellOrders":{"description":"Liquidation price assuming sell orders start getting filled.","type":"string"},"openVolumeOnly":{"description":"Liquidation price for current open volume ignoring any active orders.","type":"string"}},"type":"object","title":"v2LiquidationPrice"}},"type":"object","title":"v2LiquidationEstimate"},"margin":{"description":"Margin level range estimate for the specified position.","properties":{"bestCase":{"description":"Margin level estimate assuming no slippage.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"},"worstCase":{"description":"Margin level estimate assuming slippage cap is applied.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"type":"object","title":"v2MarginEstimate"}},"type":"object","title":"v2EstimatePositionResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Estimate the margin that would be required for maintaining the specified position. Margin estimates are scaled to asset decimal places.\nIf the optional collateral available argument is supplied, the response also contains the estimate of the liquidation price.\nLiquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request.","operationId":"TradingDataService_EstimatePosition","method":"get","path":"/api/v2/estimate/position","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Estimate position","description":{"content":"Estimate the margin that would be required for maintaining the specified position. Margin estimates are scaled to asset decimal places.\nIf the optional collateral available argument is supplied, the response also contains the estimate of the liquidation price.\nLiquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request.","type":"text/plain"},"url":{"path":["api","v2","estimate","position"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Market ID to estimate position for.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"(Required) Open volume. This field is a signed integer scaled to the market's position decimal places.\nA negative number denotes a short position.","type":"text/plain"},"key":"openVolume","value":""},{"disabled":false,"description":{"content":"Collateral available for the position. If provided then response will contain the liquidation price estimate.\nCollateral available needs to be provided scaled to asset decimal places. Liquidation price returned is scaled to asset decimal places by default.","type":"text/plain"},"key":"collateralAvailable","value":""},{"disabled":false,"description":{"content":"Whether the liquidation price estimates should be scaled to market decimal places or by asset decimal places. If not set, asset decimal places are used.","type":"text/plain"},"key":"scaleLiquidationPriceToMarketDecimals","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to estimate position for.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Open volume. This field is a signed integer scaled to the market's position decimal places.\nA negative number denotes a short position.","in":"query","name":"openVolume","required":true,"schema":{"format":"int64","type":"string"}},{"description":"Average entry price corresponding to the open volume. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","in":"query","name":"averageEntryPrice","required":true,"schema":{"type":"string"}},{"description":"Margin account balance. Needs to be provided scaled to asset decimal places.","in":"query","name":"marginAccountBalance","required":true,"schema":{"type":"string"}},{"description":"General account balance. Needs to be provided scaled to asset decimal places.","in":"query","name":"generalAccountBalance","required":true,"schema":{"type":"string"}},{"description":"Order margin account balance. Needs to be provided scaled to asset decimal places.","in":"query","name":"orderMarginAccountBalance","required":true,"schema":{"type":"string"}},{"description":"Margin mode for the party, cross margin or isolated margin.\n\n - MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","in":"query","name":"marginMode","required":false,"schema":{"default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"type":"string"}},{"description":"Margin factor to be used along with isolated margin mode.","in":"query","name":"marginFactor","required":false,"schema":{"type":"string"}},{"description":"Whether the estimated collateral increase should be included in available collateral for liquidation price calculation in isolated margin mode.","in":"query","name":"includeCollateralIncreaseInAvailableCollateral","required":false,"schema":{"type":"boolean"}},{"description":"Whether the liquidation price estimates should be scaled to market decimal places or by asset decimal places. If not set, asset decimal places are used.","in":"query","name":"scaleLiquidationPriceToMarketDecimals","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for the estimated margin level, margin account balance change, and liquidation price for the specified position.","properties":{"collateralIncreaseEstimate":{"description":"Estimated margin account balance increase.","properties":{"bestCase":{"title":"Estimate assuming no slippage","type":"string"},"worstCase":{"title":"Estimate assuming slippage cap is applied","type":"string"}},"title":"Estimates the additional funds needed to support the specified position","type":"object"},"liquidation":{"description":"Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request.","properties":{"bestCase":{"description":"Liquidation price estimate assuming no slippage.","properties":{"includingBuyOrders":{"description":"Liquidation price assuming buy orders start getting filled.","type":"string"},"includingSellOrders":{"description":"Liquidation price assuming sell orders start getting filled.","type":"string"},"openVolumeOnly":{"description":"Liquidation price for current open volume ignoring any active orders.","type":"string"}},"type":"object","title":"v2LiquidationPrice"},"worstCase":{"description":"Liquidation price estimate assuming slippage cap is applied.","properties":{"includingBuyOrders":{"description":"Liquidation price assuming buy orders start getting filled.","type":"string"},"includingSellOrders":{"description":"Liquidation price assuming sell orders start getting filled.","type":"string"},"openVolumeOnly":{"description":"Liquidation price for current open volume ignoring any active orders.","type":"string"}},"type":"object","title":"v2LiquidationPrice"}},"type":"object","title":"v2LiquidationEstimate"},"margin":{"description":"Margin level range estimate for the specified position.","properties":{"bestCase":{"description":"Margin level estimate assuming no slippage.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"description":"Margin mode for the party, cross margin or isolated margin.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"},"worstCase":{"description":"Margin level estimate assuming slippage cap is applied.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"description":"Margin mode for the party, cross margin or isolated margin.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"type":"object","title":"v2MarginEstimate"}},"type":"object","title":"v2EstimatePositionResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Estimate the margin that would be required for maintaining the specified position, collateral increase needed to open the specified position and the liquidation price estimate.\nMargin estimates are scaled to asset decimal places.\nLiquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request.","operationId":"TradingDataService_EstimatePosition","method":"get","path":"/api/v2/estimate/position","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Estimate position","description":{"content":"Estimate the margin that would be required for maintaining the specified position, collateral increase needed to open the specified position and the liquidation price estimate.\nMargin estimates are scaled to asset decimal places.\nLiquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request.","type":"text/plain"},"url":{"path":["api","v2","estimate","position"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Market ID to estimate position for.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"(Required) Open volume. This field is a signed integer scaled to the market's position decimal places.\nA negative number denotes a short position.","type":"text/plain"},"key":"openVolume","value":""},{"disabled":false,"description":{"content":"(Required) Average entry price corresponding to the open volume. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"text/plain"},"key":"averageEntryPrice","value":""},{"disabled":false,"description":{"content":"(Required) Margin account balance. Needs to be provided scaled to asset decimal places.","type":"text/plain"},"key":"marginAccountBalance","value":""},{"disabled":false,"description":{"content":"(Required) General account balance. Needs to be provided scaled to asset decimal places.","type":"text/plain"},"key":"generalAccountBalance","value":""},{"disabled":false,"description":{"content":"(Required) Order margin account balance. Needs to be provided scaled to asset decimal places.","type":"text/plain"},"key":"orderMarginAccountBalance","value":""},{"disabled":false,"description":{"content":"Margin mode for the party, cross margin or isolated margin.\n\n - MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"text/plain"},"key":"marginMode","value":""},{"disabled":false,"description":{"content":"Margin factor to be used along with isolated margin mode.","type":"text/plain"},"key":"marginFactor","value":""},{"disabled":false,"description":{"content":"Whether the estimated collateral increase should be included in available collateral for liquidation price calculation in isolated margin mode.","type":"text/plain"},"key":"includeCollateralIncreaseInAvailableCollateral","value":""},{"disabled":false,"description":{"content":"Whether the liquidation price estimates should be scaled to market decimal places or by asset decimal places. If not set, asset decimal places are used.","type":"text/plain"},"key":"scaleLiquidationPriceToMarketDecimals","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Estimate position' (trading-data-service-estimate-position)" @@ -26,15 +26,19 @@ import TabItem from "@theme/TabItem"; -Estimate the margin that would be required for maintaining the specified position. Margin estimates are scaled to asset decimal places. -If the optional collateral available argument is supplied, the response also contains the estimate of the liquidation price. +Estimate the margin that would be required for maintaining the specified position, collateral increase needed to open the specified position and the liquidation price estimate. +Margin estimates are scaled to asset decimal places. Liquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request. -
    Query Parameters
    +
    Query Parameters
    A successful response. -
    Schema
      liquidation object
      +
      Schema
        collateralIncreaseEstimate object
        + +Estimated margin account balance increase. + +
        liquidation object
        Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request. @@ -54,11 +58,11 @@ Margin level range estimate for the specified position. Margin level estimate assuming no slippage. -
        worstCase object
        +
        worstCase object
        Margin level estimate assuming slippage cap is applied. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-estimate-transfer-fee.api.mdx b/docs/api/rest/data-v2/trading-data-service-estimate-transfer-fee.api.mdx new file mode 100644 index 000000000..480529b68 --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-estimate-transfer-fee.api.mdx @@ -0,0 +1,41 @@ +--- +id: trading-data-service-estimate-transfer-fee +title: "Estimate transfer fee costs" +description: "Estimate transfer fee costs with potential discount applied" +sidebar_label: "Estimate transfer fee costs" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"Sender's ID.","in":"query","name":"fromAccount","required":false,"schema":{"type":"string"}},{"description":"Type of account sent from.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","in":"query","name":"fromAccountType","required":false,"schema":{"default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"}},{"description":"Receiver's ID.","in":"query","name":"toAccount","required":false,"schema":{"type":"string"}},{"description":"Amount to be transferred.","in":"query","name":"amount","required":false,"schema":{"type":"string"}},{"description":"Asset ID for the asset associated with the transaction.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"discount":{"description":"Discount applied to the fee.","type":"string"},"fee":{"description":"Estimated fee for the transfer.","type":"string"}},"title":"Results of estimation of transfer fee and the fee discount","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Estimate transfer fee costs with potential discount applied","operationId":"TradingDataService_EstimateTransferFee","method":"get","path":"/api/v2/transfers/estimate-fee","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Estimate transfer fee costs","description":{"content":"Estimate transfer fee costs with potential discount applied","type":"text/plain"},"url":{"path":["api","v2","transfers","estimate-fee"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Sender's ID.","type":"text/plain"},"key":"fromAccount","value":""},{"disabled":false,"description":{"content":"Type of account sent from.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","type":"text/plain"},"key":"fromAccountType","value":""},{"disabled":false,"description":{"content":"Receiver's ID.","type":"text/plain"},"key":"toAccount","value":""},{"disabled":false,"description":{"content":"Amount to be transferred.","type":"text/plain"},"key":"amount","value":""},{"disabled":false,"description":{"content":"Asset ID for the asset associated with the transaction.","type":"text/plain"},"key":"assetId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Estimate transfer fee costs' (trading-data-service-estimate-transfer-fee)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## Estimate transfer fee costs + + + +Estimate transfer fee costs with potential discount applied + +
    Query Parameters
    + +A successful response. + +
    Schema
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-export-ledger-entries.api.mdx b/docs/api/rest/data-v2/trading-data-service-export-ledger-entries.api.mdx index 6f63fe162..1ec2360d9 100644 --- a/docs/api/rest/data-v2/trading-data-service-export-ledger-entries.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-export-ledger-entries.api.mdx @@ -1,4 +1,5 @@ --- +hide_send_button: true id: trading-data-service-export-ledger-entries title: "Export ledger entries" description: "Export ledger entries records ledger entries to a csv file. @@ -11,9 +12,8 @@ buf:lint:ignore RPC_RESPONSE_STANDARD_NAME buf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE" sidebar_label: "Export ledger entries" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict exported ledger entries to those relating to the given party ID.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict exported ledger entries to those relating to the given asset ID.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.","properties":{"contentType":{"description":"The HTTP Content-Type header value specifying the content type of the body.","type":"string"},"data":{"description":"The HTTP request/response body as raw binary.","format":"byte","type":"string"},"extensions":{"description":"Application specific response metadata. Must be set in the first response\nfor streaming APIs.","items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"}},"type":"object","title":"apiHttpBody"}},"title":"Stream result of apiHttpBody","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger entries"],"description":"Export ledger entries records ledger entries to a csv file.\nMay or may not contain a date range - if no date range is provided, list all records for all times.\n\nLedger entries can be exported by:\n - export ledger entries for a single party for a given asset within a given time range\n - export ledger entries for a single party for a given asset for all times\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","operationId":"TradingDataService_ExportLedgerEntries","method":"get","path":"/api/v2/ledgerentry/export","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Export ledger entries","description":{"content":"Export ledger entries records ledger entries to a csv file.\nMay or may not contain a date range - if no date range is provided, list all records for all times.\n\nLedger entries can be exported by:\n - export ledger entries for a single party for a given asset within a given time range\n - export ledger entries for a single party for a given asset for all times\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","type":"text/plain"},"url":{"path":["api","v2","ledgerentry","export"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Restrict exported ledger entries to those relating to the given party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict exported ledger entries to those relating to the given asset ID.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict exported ledger entries to those relating to the given party ID.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict exported ledger entries to those relating to the given asset ID.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.","properties":{"contentType":{"description":"The HTTP Content-Type header value specifying the content type of the body.","type":"string"},"data":{"description":"The HTTP request/response body as raw binary.","format":"byte","type":"string"},"extensions":{"description":"Application specific response metadata. Must be set in the first response\nfor streaming APIs.","items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"}},"type":"object","title":"apiHttpBody"}},"title":"Stream result of apiHttpBody","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger entries"],"description":"Export ledger entries records ledger entries to a csv file.\nMay or may not contain a date range - if no date range is provided, list all records for all times.\n\nLedger entries can be exported by:\n - export ledger entries for a single party for a given asset within a given time range\n - export ledger entries for a single party for a given asset for all times\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","operationId":"TradingDataService_ExportLedgerEntries","method":"get","path":"/api/v2/ledgerentry/export","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Export ledger entries","description":{"content":"Export ledger entries records ledger entries to a csv file.\nMay or may not contain a date range - if no date range is provided, list all records for all times.\n\nLedger entries can be exported by:\n - export ledger entries for a single party for a given asset within a given time range\n - export ledger entries for a single party for a given asset for all times\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","type":"text/plain"},"url":{"path":["api","v2","ledgerentry","export"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Restrict exported ledger entries to those relating to the given party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict exported ledger entries to those relating to the given asset ID.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Export ledger entries' (trading-data-service-export-ledger-entries)" diff --git a/docs/api/rest/data-v2/trading-data-service-export-network-history.api.mdx b/docs/api/rest/data-v2/trading-data-service-export-network-history.api.mdx index fbb27b97e..f8f99f6ba 100644 --- a/docs/api/rest/data-v2/trading-data-service-export-network-history.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-export-network-history.api.mdx @@ -63,7 +63,7 @@ buf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE" sidebar_label: "Export network history as CSV" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Block to begin exporting from. Must be the first block of a history segment,\nwhich by default are 1000 blocks each; in that case - 1, 1001, 2001 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","in":"query","name":"fromBlock","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Last block to export up to and including. Must be the last block of a history segment\nwhich by default are 1000 blocks each; in that case - 1000, 2000, 3000 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","in":"query","name":"toBlock","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Table to export data from.","in":"query","name":"table","required":false,"schema":{"default":"TABLE_UNSPECIFIED","enum":["TABLE_UNSPECIFIED","TABLE_BALANCES","TABLE_CHECKPOINTS","TABLE_DELEGATIONS","TABLE_LEDGER","TABLE_ORDERS","TABLE_TRADES","TABLE_MARKET_DATA","TABLE_MARGIN_LEVELS","TABLE_POSITIONS","TABLE_LIQUIDITY_PROVISIONS","TABLE_MARKETS","TABLE_DEPOSITS","TABLE_WITHDRAWALS","TABLE_BLOCKS","TABLE_REWARDS"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.","properties":{"contentType":{"description":"The HTTP Content-Type header value specifying the content type of the body.","type":"string"},"data":{"description":"The HTTP request/response body as raw binary.","format":"byte","type":"string"},"extensions":{"description":"Application specific response metadata. Must be set in the first response\nfor streaming APIs.","items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"}},"type":"object","title":"apiHttpBody"}},"title":"Stream result of apiHttpBody","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Export CSV table data from network history between two block heights.\n\nThe requested block heights must fall on network history segment boundaries, which can\nbe discovered by calling the API to list all network history segments. By default\nsegments contain 1000 blocks. In that case ranges such as (1, 1000), (1001, 2000), (1, 3000)\nwould all fall on segment boundaries and be valid.\n\nThe generated CSV file is compressed into a ZIP file and returned, with the file name\nin the following format: `[chain id]-[table name]-[start block]-[end block].zip`\n\nIn gRPC, results are returned in a chunked stream of base64 encoded data.\n\nThrough the REST gateway, the base64 data chunks are decoded and streamed as a\n`content-type: application/zip` HTTP response.\n\nThe CSV exported data uses a comma as a DELIMITER between fields, and \" for QUOTE-ing fields.\n\nIf a value contains any of: DELIMITER, QUOTE, carriage return, or line feed then the whole\nvalue is prefixed and suffixed by the QUOTE character and any occurrence within\nthe value of a QUOTE character preceded by another QUOTE.\n\nA NULL is output as the NULL parameter string and is not quoted, while a non-NULL value\nmatching the NULL parameter string is quoted.\n\nFor example, with the default settings, a NULL is written as an unquoted empty string,\nwhile an empty string data value is written with double quotes.\n\nNote that CSV files produced may contain quoted values containing embedded carriage returns and line feeds.\nThus the files are not strictly one line per table row like text-format files.\n\nThe first row of the CSV file is a header that describes the contents of each column\nin subsequent rows.\n\nUsually the ZIP file will contain only a single CSV file. However it is possible that\nthe (from_block, to_block) request spans over a range of blocks in which the underlying\nschema of the database changes. For example, a column may have been added, removed, or renamed.\n\nIf this happens, the CSV file will be split at the point of the schema change and the zip\nfile will contain multiple CSV files, with a potentially different set of headers. The\n'version' number of the database schema is part of the in the CSV filename:\n\n `[chain id]-[table name]-[schema version]-[start block]-[end block].zip`\n\nFor example, a zip file might be called mainnet-sometable-000001-003000.zip\n\nAnd contain two CSV files: `mainnet-sometable-1-000001-002000.csv`:\n\ntimestamp, value\n1, foo\n2, bar\n\nAnd `mainnet-sometable-2-002001-003000.csv`:\n\ntimestamp, value, extra_value\n3, baz, apple\n\nIt is worth noting that the schema will not change within a single network history segment.\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","operationId":"TradingDataService_ExportNetworkHistory","method":"get","path":"/api/v2/networkhistory/export","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Export network history as CSV","description":{"content":"Export CSV table data from network history between two block heights.\n\nThe requested block heights must fall on network history segment boundaries, which can\nbe discovered by calling the API to list all network history segments. By default\nsegments contain 1000 blocks. In that case ranges such as (1, 1000), (1001, 2000), (1, 3000)\nwould all fall on segment boundaries and be valid.\n\nThe generated CSV file is compressed into a ZIP file and returned, with the file name\nin the following format: `[chain id]-[table name]-[start block]-[end block].zip`\n\nIn gRPC, results are returned in a chunked stream of base64 encoded data.\n\nThrough the REST gateway, the base64 data chunks are decoded and streamed as a\n`content-type: application/zip` HTTP response.\n\nThe CSV exported data uses a comma as a DELIMITER between fields, and \" for QUOTE-ing fields.\n\nIf a value contains any of: DELIMITER, QUOTE, carriage return, or line feed then the whole\nvalue is prefixed and suffixed by the QUOTE character and any occurrence within\nthe value of a QUOTE character preceded by another QUOTE.\n\nA NULL is output as the NULL parameter string and is not quoted, while a non-NULL value\nmatching the NULL parameter string is quoted.\n\nFor example, with the default settings, a NULL is written as an unquoted empty string,\nwhile an empty string data value is written with double quotes.\n\nNote that CSV files produced may contain quoted values containing embedded carriage returns and line feeds.\nThus the files are not strictly one line per table row like text-format files.\n\nThe first row of the CSV file is a header that describes the contents of each column\nin subsequent rows.\n\nUsually the ZIP file will contain only a single CSV file. However it is possible that\nthe (from_block, to_block) request spans over a range of blocks in which the underlying\nschema of the database changes. For example, a column may have been added, removed, or renamed.\n\nIf this happens, the CSV file will be split at the point of the schema change and the zip\nfile will contain multiple CSV files, with a potentially different set of headers. The\n'version' number of the database schema is part of the in the CSV filename:\n\n `[chain id]-[table name]-[schema version]-[start block]-[end block].zip`\n\nFor example, a zip file might be called mainnet-sometable-000001-003000.zip\n\nAnd contain two CSV files: `mainnet-sometable-1-000001-002000.csv`:\n\ntimestamp, value\n1, foo\n2, bar\n\nAnd `mainnet-sometable-2-002001-003000.csv`:\n\ntimestamp, value, extra_value\n3, baz, apple\n\nIt is worth noting that the schema will not change within a single network history segment.\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","type":"text/plain"},"url":{"path":["api","v2","networkhistory","export"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Block to begin exporting from. Must be the first block of a history segment,\nwhich by default are 1000 blocks each; in that case - 1, 1001, 2001 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","type":"text/plain"},"key":"fromBlock","value":""},{"disabled":false,"description":{"content":"Last block to export up to and including. Must be the last block of a history segment\nwhich by default are 1000 blocks each; in that case - 1000, 2000, 3000 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","type":"text/plain"},"key":"toBlock","value":""},{"disabled":false,"description":{"content":"Table to export data from.","type":"text/plain"},"key":"table","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Block to begin exporting from. Must be the first block of a history segment,\nwhich by default are 1000 blocks each; in that case - 1, 1001, 2001 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","in":"query","name":"fromBlock","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Last block to export up to and including. Must be the last block of a history segment\nwhich by default are 1000 blocks each; in that case - 1000, 2000, 3000 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","in":"query","name":"toBlock","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Table to export data from.","in":"query","name":"table","required":false,"schema":{"default":"TABLE_UNSPECIFIED","enum":["TABLE_UNSPECIFIED","TABLE_BALANCES","TABLE_CHECKPOINTS","TABLE_DELEGATIONS","TABLE_LEDGER","TABLE_ORDERS","TABLE_TRADES","TABLE_MARKET_DATA","TABLE_MARGIN_LEVELS","TABLE_POSITIONS","TABLE_LIQUIDITY_PROVISIONS","TABLE_MARKETS","TABLE_DEPOSITS","TABLE_WITHDRAWALS","TABLE_BLOCKS","TABLE_REWARDS"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.","properties":{"contentType":{"description":"The HTTP Content-Type header value specifying the content type of the body.","type":"string"},"data":{"description":"The HTTP request/response body as raw binary.","format":"byte","type":"string"},"extensions":{"description":"Application specific response metadata. Must be set in the first response\nfor streaming APIs.","items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"}},"type":"object","title":"apiHttpBody"}},"title":"Stream result of apiHttpBody","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Export CSV table data from network history between two block heights.\n\nThe requested block heights must fall on network history segment boundaries, which can\nbe discovered by calling the API to list all network history segments. By default\nsegments contain 1000 blocks. In that case ranges such as (1, 1000), (1001, 2000), (1, 3000)\nwould all fall on segment boundaries and be valid.\n\nThe generated CSV file is compressed into a ZIP file and returned, with the file name\nin the following format: `[chain id]-[table name]-[start block]-[end block].zip`\n\nIn gRPC, results are returned in a chunked stream of base64 encoded data.\n\nThrough the REST gateway, the base64 data chunks are decoded and streamed as a\n`content-type: application/zip` HTTP response.\n\nThe CSV exported data uses a comma as a DELIMITER between fields, and \" for QUOTE-ing fields.\n\nIf a value contains any of: DELIMITER, QUOTE, carriage return, or line feed then the whole\nvalue is prefixed and suffixed by the QUOTE character and any occurrence within\nthe value of a QUOTE character preceded by another QUOTE.\n\nA NULL is output as the NULL parameter string and is not quoted, while a non-NULL value\nmatching the NULL parameter string is quoted.\n\nFor example, with the default settings, a NULL is written as an unquoted empty string,\nwhile an empty string data value is written with double quotes.\n\nNote that CSV files produced may contain quoted values containing embedded carriage returns and line feeds.\nThus the files are not strictly one line per table row like text-format files.\n\nThe first row of the CSV file is a header that describes the contents of each column\nin subsequent rows.\n\nUsually the ZIP file will contain only a single CSV file. However it is possible that\nthe (from_block, to_block) request spans over a range of blocks in which the underlying\nschema of the database changes. For example, a column may have been added, removed, or renamed.\n\nIf this happens, the CSV file will be split at the point of the schema change and the zip\nfile will contain multiple CSV files, with a potentially different set of headers. The\n'version' number of the database schema is part of the in the CSV filename:\n\n `[chain id]-[table name]-[schema version]-[start block]-[end block].zip`\n\nFor example, a zip file might be called mainnet-sometable-000001-003000.zip\n\nAnd contain two CSV files: `mainnet-sometable-1-000001-002000.csv`:\n\ntimestamp, value\n1, foo\n2, bar\n\nAnd `mainnet-sometable-2-002001-003000.csv`:\n\ntimestamp, value, extra_value\n3, baz, apple\n\nIt is worth noting that the schema will not change within a single network history segment.\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","operationId":"TradingDataService_ExportNetworkHistory","method":"get","path":"/api/v2/networkhistory/export","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Export network history as CSV","description":{"content":"Export CSV table data from network history between two block heights.\n\nThe requested block heights must fall on network history segment boundaries, which can\nbe discovered by calling the API to list all network history segments. By default\nsegments contain 1000 blocks. In that case ranges such as (1, 1000), (1001, 2000), (1, 3000)\nwould all fall on segment boundaries and be valid.\n\nThe generated CSV file is compressed into a ZIP file and returned, with the file name\nin the following format: `[chain id]-[table name]-[start block]-[end block].zip`\n\nIn gRPC, results are returned in a chunked stream of base64 encoded data.\n\nThrough the REST gateway, the base64 data chunks are decoded and streamed as a\n`content-type: application/zip` HTTP response.\n\nThe CSV exported data uses a comma as a DELIMITER between fields, and \" for QUOTE-ing fields.\n\nIf a value contains any of: DELIMITER, QUOTE, carriage return, or line feed then the whole\nvalue is prefixed and suffixed by the QUOTE character and any occurrence within\nthe value of a QUOTE character preceded by another QUOTE.\n\nA NULL is output as the NULL parameter string and is not quoted, while a non-NULL value\nmatching the NULL parameter string is quoted.\n\nFor example, with the default settings, a NULL is written as an unquoted empty string,\nwhile an empty string data value is written with double quotes.\n\nNote that CSV files produced may contain quoted values containing embedded carriage returns and line feeds.\nThus the files are not strictly one line per table row like text-format files.\n\nThe first row of the CSV file is a header that describes the contents of each column\nin subsequent rows.\n\nUsually the ZIP file will contain only a single CSV file. However it is possible that\nthe (from_block, to_block) request spans over a range of blocks in which the underlying\nschema of the database changes. For example, a column may have been added, removed, or renamed.\n\nIf this happens, the CSV file will be split at the point of the schema change and the zip\nfile will contain multiple CSV files, with a potentially different set of headers. The\n'version' number of the database schema is part of the in the CSV filename:\n\n `[chain id]-[table name]-[schema version]-[start block]-[end block].zip`\n\nFor example, a zip file might be called mainnet-sometable-000001-003000.zip\n\nAnd contain two CSV files: `mainnet-sometable-1-000001-002000.csv`:\n\ntimestamp, value\n1, foo\n2, bar\n\nAnd `mainnet-sometable-2-002001-003000.csv`:\n\ntimestamp, value, extra_value\n3, baz, apple\n\nIt is worth noting that the schema will not change within a single network history segment.\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","type":"text/plain"},"url":{"path":["api","v2","networkhistory","export"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Block to begin exporting from. Must be the first block of a history segment,\nwhich by default are 1000 blocks each; in that case - 1, 1001, 2001 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","type":"text/plain"},"key":"fromBlock","value":""},{"disabled":false,"description":{"content":"Last block to export up to and including. Must be the last block of a history segment\nwhich by default are 1000 blocks each; in that case - 1000, 2000, 3000 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","type":"text/plain"},"key":"toBlock","value":""},{"disabled":false,"description":{"content":"Table to export data from.","type":"text/plain"},"key":"table","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Export network history as CSV' (trading-data-service-export-network-history)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-asset.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-asset.api.mdx index fb02f0ff2..bcd3ff1cd 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-asset.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-asset.api.mdx @@ -5,7 +5,7 @@ description: "Get a single asset using its ID. Use the assets list query to get sidebar_label: "Get asset" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Asset ID to get data for.","in":"path","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"asset":{"description":"Asset information that is returned.","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"Response from getting an asset","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a single asset using its ID. Use the assets list query to get an asset's ID","operationId":"TradingDataService_GetAsset","method":"get","path":"/api/v2/asset/{assetId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get asset","description":{"content":"Get a single asset using its ID. Use the assets list query to get an asset's ID","type":"text/plain"},"url":{"path":["api","v2","asset",":assetId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Asset ID to get data for.","type":"text/plain"},"type":"any","value":"","key":"assetId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Asset ID to get data for.","in":"path","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"asset":{"description":"Asset information that is returned.","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"Response from getting an asset","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a single asset using its ID. Use the assets list query to get an asset's ID","operationId":"TradingDataService_GetAsset","method":"get","path":"/api/v2/asset/{assetId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get asset","description":{"content":"Get a single asset using its ID. Use the assets list query to get an asset's ID","type":"text/plain"},"url":{"path":["api","v2","asset",":assetId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Asset ID to get data for.","type":"text/plain"},"type":"any","value":"","key":"assetId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get asset' (trading-data-service-get-asset)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-current-referral-program.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-current-referral-program.api.mdx index f9708e4cf..725b575e6 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-current-referral-program.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-current-referral-program.api.mdx @@ -6,7 +6,7 @@ and has not been replaced by another." sidebar_label: "Get current referral program" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"currentReferralProgram":{"description":"Referral program currently activated on the network.","properties":{"benefitTiers":{"description":"Defined tiers in increasing order. First element will give Tier 1, second\nelement will give Tier 2, and so on.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends, the\nprogram will end and benefits will be disabled.","format":"int64","type":"string"},"endedAt":{"description":"Timestamp, in Unix nanoseconds, when the program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"apiv2ReferralProgram"}},"title":"Response containing the current referral program","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get the current referral program for the network. This program may not be active if it has ended\nand has not been replaced by another.","operationId":"TradingDataService_GetCurrentReferralProgram","method":"get","path":"/api/v2/referral-programs/current","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get current referral program","description":{"content":"Get the current referral program for the network. This program may not be active if it has ended\nand has not been replaced by another.","type":"text/plain"},"url":{"path":["api","v2","referral-programs","current"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"currentReferralProgram":{"description":"Referral program currently activated on the network.","properties":{"benefitTiers":{"description":"Defined tiers in increasing order. First element will give Tier 1, second\nelement will give Tier 2, and so on.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends, the\nprogram will end and benefits will be disabled.","format":"int64","type":"string"},"endedAt":{"description":"Timestamp, in Unix nanoseconds, when the program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"apiv2ReferralProgram"}},"title":"Response containing the current referral program","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get the current referral program for the network. This program may not be active if it has ended\nand has not been replaced by another.","operationId":"TradingDataService_GetCurrentReferralProgram","method":"get","path":"/api/v2/referral-programs/current","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get current referral program","description":{"content":"Get the current referral program for the network. This program may not be active if it has ended\nand has not been replaced by another.","type":"text/plain"},"url":{"path":["api","v2","referral-programs","current"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get current referral program' (trading-data-service-get-current-referral-program)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-current-volume-discount-program.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-current-volume-discount-program.api.mdx index 3493feb97..b68592d46 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-current-volume-discount-program.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-current-volume-discount-program.api.mdx @@ -6,7 +6,7 @@ and has not been replaced by another." sidebar_label: "Get current volume discount program" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"currentVolumeDiscountProgram":{"description":"Volume discount program currently activated on the network.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"endedAt":{"description":"Timestamp in Unix nanoseconds, at which the program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a volume discount statistics' running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"apiv2VolumeDiscountProgram"}},"title":"Response containing the current referral program","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Volume discount program"],"description":"Get the current volume discount program for the network. This program may not be active if it has ended\nand has not been replaced by another.","operationId":"TradingDataService_GetCurrentVolumeDiscountProgram","method":"get","path":"/api/v2/volume-discount-programs/current","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get current volume discount program","description":{"content":"Get the current volume discount program for the network. This program may not be active if it has ended\nand has not been replaced by another.","type":"text/plain"},"url":{"path":["api","v2","volume-discount-programs","current"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"currentVolumeDiscountProgram":{"description":"Volume discount program currently activated on the network.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"endedAt":{"description":"Timestamp in Unix nanoseconds, at which the program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a volume discount statistics' running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"apiv2VolumeDiscountProgram"}},"title":"Response containing the current referral program","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Volume discount program"],"description":"Get the current volume discount program for the network. This program may not be active if it has ended\nand has not been replaced by another.","operationId":"TradingDataService_GetCurrentVolumeDiscountProgram","method":"get","path":"/api/v2/volume-discount-programs/current","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get current volume discount program","description":{"content":"Get the current volume discount program for the network. This program may not be active if it has ended\nand has not been replaced by another.","type":"text/plain"},"url":{"path":["api","v2","volume-discount-programs","current"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get current volume discount program' (trading-data-service-get-current-volume-discount-program)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-deposit.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-deposit.api.mdx index ede12a648..b7b87edc5 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-deposit.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-deposit.api.mdx @@ -5,7 +5,7 @@ description: "Get a deposit by its ID" sidebar_label: "Get deposit" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Deposit ID to return data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"deposit":{"description":"Deposit matching the ID from the request.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"title":"Deposit on to the Vega network","type":"object"}},"title":"Response that is received from getting deposit data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a deposit by its ID","operationId":"TradingDataService_GetDeposit","method":"get","path":"/api/v2/deposit/{id}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get deposit","description":{"content":"Get a deposit by its ID","type":"text/plain"},"url":{"path":["api","v2","deposit",":id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Deposit ID to return data for.","type":"text/plain"},"type":"any","value":"","key":"id"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Deposit ID to return data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"deposit":{"description":"Deposit matching the ID from the request.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"title":"Deposit on to the Vega network","type":"object"}},"title":"Response that is received from getting deposit data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a deposit by its ID","operationId":"TradingDataService_GetDeposit","method":"get","path":"/api/v2/deposit/{id}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get deposit","description":{"content":"Get a deposit by its ID","type":"text/plain"},"url":{"path":["api","v2","deposit",":id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Deposit ID to return data for.","type":"text/plain"},"type":"any","value":"","key":"id"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get deposit' (trading-data-service-get-deposit)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-epoch.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-epoch.api.mdx index b0383ab5d..a603eee94 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-epoch.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-epoch.api.mdx @@ -5,7 +5,7 @@ description: "Get data for a specific epoch, if ID is omitted, it retrieves the sidebar_label: "Get epoch" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Epoch ID. If provided, returns the epoch with the given ID.","in":"query","name":"id","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Block height. If provided, returns the epoch that the given block is in.","in":"query","name":"block","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"epoch":{"description":"Data specific to a single epoch on the Vega network. This includes the epoch number,\nstart and end times, and the nodes that participated in the epoch.","properties":{"delegations":{"description":"List of all delegations in epoch.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"seq":{"description":"Sequence is used as epoch ID.","format":"uint64","type":"string"},"timestamps":{"description":"Timestamps for start/end etc.","properties":{"endTime":{"description":"Timestamp in Unix nanoseconds for when the epoch ended, empty if not ended.","format":"int64","type":"string"},"expiryTime":{"description":"Timestamp in Unix nanoseconds for the epoch's expiry.","format":"int64","type":"string"},"firstBlock":{"description":"Height of first block in the epoch.","format":"uint64","type":"string"},"lastBlock":{"description":"Height of last block in the epoch, empty if not ended.","format":"uint64","type":"string"},"startTime":{"description":"Timestamp in Unix nanoseconds for when epoch started.","format":"int64","type":"string"}},"title":"Describes in both human readable and block time when an epoch spans","type":"object"},"validators":{"description":"Validators that participated in this epoch.","items":{"properties":{"avatarUrl":{"description":"Avatar url.","type":"string"},"delegations":{"description":"Node's delegations.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"epochData":{"description":"Information about epoch.","properties":{"offline":{"description":"Total number of offline epochs since node was created.","format":"int32","type":"integer"},"online":{"description":"Total number of online epochs since node was created.","format":"int32","type":"integer"},"total":{"description":"Total number of epochs since node was created.","format":"int32","type":"integer"}},"type":"object","title":"vegaEpochData"},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Node ID i.e. the node's wallet ID.","type":"string"},"infoUrl":{"description":"URL where users can find out more information on the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"maxIntendedStake":{"description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"name":{"description":"Node name.","type":"string"},"pendingStake":{"description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"pubKey":{"description":"Public key of the node operator.","type":"string"},"rankingScore":{"description":"Node ranking information.","properties":{"performanceScore":{"description":"Performance based score.","type":"string"},"previousStatus":{"description":"Status of the validator in the previous epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"rankingScore":{"description":"Final score.","type":"string"},"stakeScore":{"description":"Stake based score - no anti-whaling.","type":"string"},"status":{"description":"Status of the validator in the current epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"votingPower":{"description":"Tendermint voting power of the validator.","format":"int64","type":"integer"}},"type":"object","title":"vegaRankingScore"},"rewardScore":{"description":"Node reward score.","properties":{"multisigScore":{"description":"Multisig score.","type":"string"},"normalisedScore":{"description":"Normalised validator score for rewards.","type":"string"},"performanceScore":{"description":"Performance based score.","type":"string"},"rawValidatorScore":{"description":"Stake based score - with anti-whaling.","type":"string"},"validatorScore":{"description":"Un-normalised score.","type":"string"},"validatorStatus":{"description":"Status of the validator for reward.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"}},"type":"object","title":"vegaRewardScore"},"stakedByDelegates":{"description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedByOperator":{"description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedTotal":{"description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"status":{"description":"Node status.","default":"NODE_STATUS_UNSPECIFIED","enum":["NODE_STATUS_UNSPECIFIED","NODE_STATUS_VALIDATOR","NODE_STATUS_NON_VALIDATOR"],"title":"Node status type","type":"string"},"tmPubKey":{"description":"Public key of Tendermint.","type":"string"}},"type":"object","title":"vegaNode"},"type":"array"}},"type":"object","title":"vegaEpoch"}},"title":"Response from getting epoch","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get data for a specific epoch, if ID is omitted, it retrieves the current epoch","operationId":"TradingDataService_GetEpoch","method":"get","path":"/api/v2/epoch","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get epoch","description":{"content":"Get data for a specific epoch, if ID is omitted, it retrieves the current epoch","type":"text/plain"},"url":{"path":["api","v2","epoch"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Epoch ID. If provided, returns the epoch with the given ID.","type":"text/plain"},"key":"id","value":""},{"disabled":false,"description":{"content":"Block height. If provided, returns the epoch that the given block is in.","type":"text/plain"},"key":"block","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Epoch ID. If provided, returns the epoch with the given ID.","in":"query","name":"id","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Block height. If provided, returns the epoch that the given block is in.","in":"query","name":"block","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"epoch":{"description":"Data specific to a single epoch on the Vega network. This includes the epoch number,\nstart and end times, and the nodes that participated in the epoch.","properties":{"delegations":{"description":"List of all delegations in epoch.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"seq":{"description":"Sequence is used as epoch ID.","format":"uint64","type":"string"},"timestamps":{"description":"Timestamps for start/end etc.","properties":{"endTime":{"description":"Timestamp in Unix nanoseconds for when the epoch ended, empty if not ended.","format":"int64","type":"string"},"expiryTime":{"description":"Timestamp in Unix nanoseconds for the epoch's expiry.","format":"int64","type":"string"},"firstBlock":{"description":"Height of first block in the epoch.","format":"uint64","type":"string"},"lastBlock":{"description":"Height of last block in the epoch, empty if not ended.","format":"uint64","type":"string"},"startTime":{"description":"Timestamp in Unix nanoseconds for when epoch started.","format":"int64","type":"string"}},"title":"Describes in both human readable and block time when an epoch spans","type":"object"},"validators":{"description":"Validators that participated in this epoch.","items":{"properties":{"avatarUrl":{"description":"Avatar url.","type":"string"},"delegations":{"description":"Node's delegations.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"epochData":{"description":"Information about epoch.","properties":{"offline":{"description":"Total number of offline epochs since node was created.","format":"int32","type":"integer"},"online":{"description":"Total number of online epochs since node was created.","format":"int32","type":"integer"},"total":{"description":"Total number of epochs since node was created.","format":"int32","type":"integer"}},"type":"object","title":"vegaEpochData"},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Node ID i.e. the node's wallet ID.","type":"string"},"infoUrl":{"description":"URL where users can find out more information on the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"maxIntendedStake":{"description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"name":{"description":"Node name.","type":"string"},"pendingStake":{"description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"pubKey":{"description":"Public key of the node operator.","type":"string"},"rankingScore":{"description":"Node ranking information.","properties":{"performanceScore":{"description":"Performance based score.","type":"string"},"previousStatus":{"description":"Status of the validator in the previous epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"rankingScore":{"description":"Final score.","type":"string"},"stakeScore":{"description":"Stake based score - no anti-whaling.","type":"string"},"status":{"description":"Status of the validator in the current epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"votingPower":{"description":"Tendermint voting power of the validator.","format":"int64","type":"integer"}},"type":"object","title":"vegaRankingScore"},"rewardScore":{"description":"Node reward score.","properties":{"multisigScore":{"description":"Multisig score.","type":"string"},"normalisedScore":{"description":"Normalised validator score for rewards.","type":"string"},"performanceScore":{"description":"Performance based score.","type":"string"},"rawValidatorScore":{"description":"Stake based score - with anti-whaling.","type":"string"},"validatorScore":{"description":"Un-normalised score.","type":"string"},"validatorStatus":{"description":"Status of the validator for reward.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"}},"type":"object","title":"vegaRewardScore"},"stakedByDelegates":{"description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedByOperator":{"description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedTotal":{"description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"status":{"description":"Node status.","default":"NODE_STATUS_UNSPECIFIED","enum":["NODE_STATUS_UNSPECIFIED","NODE_STATUS_VALIDATOR","NODE_STATUS_NON_VALIDATOR"],"title":"Node status type","type":"string"},"tmPubKey":{"description":"Public key of Tendermint.","type":"string"}},"type":"object","title":"vegaNode"},"type":"array"}},"type":"object","title":"vegaEpoch"}},"title":"Response from getting epoch","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get data for a specific epoch, if ID is omitted, it retrieves the current epoch","operationId":"TradingDataService_GetEpoch","method":"get","path":"/api/v2/epoch","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get epoch","description":{"content":"Get data for a specific epoch, if ID is omitted, it retrieves the current epoch","type":"text/plain"},"url":{"path":["api","v2","epoch"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Epoch ID. If provided, returns the epoch with the given ID.","type":"text/plain"},"key":"id","value":""},{"disabled":false,"description":{"content":"Block height. If provided, returns the epoch that the given block is in.","type":"text/plain"},"key":"block","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get epoch' (trading-data-service-get-epoch)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-erc-20-list-asset-bundle.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-erc-20-list-asset-bundle.api.mdx index b3b874179..784f9c32d 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-erc-20-list-asset-bundle.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-erc-20-list-asset-bundle.api.mdx @@ -5,7 +5,7 @@ description: "Get the signatures bundle to allowlist an ERC20 token in the colla sidebar_label: "Get ERC20 list asset bundle" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Asset ID of the asset bundle requested.","in":"query","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assetSource":{"description":"Address of the asset on Ethereum.","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","type":"string"},"vegaAssetId":{"description":"Asset ID for the underlying Vega asset.","type":"string"}},"title":"Response from listing the signature bundle to an ERC-20 token in the collateral bridge","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signatures bundle to allowlist an ERC20 token in the collateral bridge","operationId":"TradingDataService_GetERC20ListAssetBundle","method":"get","path":"/api/v2/erc20/asset/list/bundle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get ERC20 list asset bundle","description":{"content":"Get the signatures bundle to allowlist an ERC20 token in the collateral bridge","type":"text/plain"},"url":{"path":["api","v2","erc20","asset","list","bundle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Asset ID of the asset bundle requested.","type":"text/plain"},"key":"assetId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Asset ID of the asset bundle requested.","in":"query","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assetSource":{"description":"Address of the asset on Ethereum.","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","type":"string"},"vegaAssetId":{"description":"Asset ID for the underlying Vega asset.","type":"string"}},"title":"Response from listing the signature bundle to an ERC-20 token in the collateral bridge","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signatures bundle to allowlist an ERC20 token in the collateral bridge","operationId":"TradingDataService_GetERC20ListAssetBundle","method":"get","path":"/api/v2/erc20/asset/list/bundle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get ERC20 list asset bundle","description":{"content":"Get the signatures bundle to allowlist an ERC20 token in the collateral bridge","type":"text/plain"},"url":{"path":["api","v2","erc20","asset","list","bundle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Asset ID of the asset bundle requested.","type":"text/plain"},"key":"assetId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get ERC20 list asset bundle' (trading-data-service-get-erc-20-list-asset-bundle)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-erc-20-set-asset-limits-bundle.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-erc-20-set-asset-limits-bundle.api.mdx index 005bafd82..33da41d68 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-erc-20-set-asset-limits-bundle.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-erc-20-set-asset-limits-bundle.api.mdx @@ -6,7 +6,7 @@ already allowlisted in the collateral bridge." sidebar_label: "Get ERC20 set asset limits bundle" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Proposal ID of the asset update proposal.","in":"query","name":"proposalId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assetSource":{"description":"Address of the asset on Ethereum.","type":"string"},"lifetimeLimit":{"description":"Lifetime limit deposit for this asset.","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","type":"string"},"threshold":{"description":"Threshold withdraw for this asset.","type":"string"},"vegaAssetId":{"description":"Asset ID for the underlying Vega asset.","type":"string"}},"title":"Response for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signature bundle to update the token limits. These are `maxLifetimeDeposit` and `withdrawThreshold` for a given ERC20 token that is\nalready allowlisted in the collateral bridge.","operationId":"TradingDataService_GetERC20SetAssetLimitsBundle","method":"get","path":"/api/v2/erc20/asset/limits/bundle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get ERC20 set asset limits bundle","description":{"content":"Get the signature bundle to update the token limits. These are `maxLifetimeDeposit` and `withdrawThreshold` for a given ERC20 token that is\nalready allowlisted in the collateral bridge.","type":"text/plain"},"url":{"path":["api","v2","erc20","asset","limits","bundle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Proposal ID of the asset update proposal.","type":"text/plain"},"key":"proposalId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Proposal ID of the asset update proposal.","in":"query","name":"proposalId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assetSource":{"description":"Address of the asset on Ethereum.","type":"string"},"lifetimeLimit":{"description":"Lifetime limit deposit for this asset.","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","type":"string"},"threshold":{"description":"Threshold withdraw for this asset.","type":"string"},"vegaAssetId":{"description":"Asset ID for the underlying Vega asset.","type":"string"}},"title":"Response for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signature bundle to update the token limits. These are `maxLifetimeDeposit` and `withdrawThreshold` for a given ERC20 token that is\nalready allowlisted in the collateral bridge.","operationId":"TradingDataService_GetERC20SetAssetLimitsBundle","method":"get","path":"/api/v2/erc20/asset/limits/bundle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get ERC20 set asset limits bundle","description":{"content":"Get the signature bundle to update the token limits. These are `maxLifetimeDeposit` and `withdrawThreshold` for a given ERC20 token that is\nalready allowlisted in the collateral bridge.","type":"text/plain"},"url":{"path":["api","v2","erc20","asset","limits","bundle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Proposal ID of the asset update proposal.","type":"text/plain"},"key":"proposalId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get ERC20 set asset limits bundle' (trading-data-service-get-erc-20-set-asset-limits-bundle)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-erc-20-withdrawal-approval.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-erc-20-withdrawal-approval.api.mdx index 896bffb7d..523ca57de 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-erc-20-withdrawal-approval.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-erc-20-withdrawal-approval.api.mdx @@ -5,7 +5,7 @@ description: "Get the signature bundle to finalise a withdrawal on Ethereum" sidebar_label: "Get ERC20 withdrawal approval" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Withdrawal ID to retrieve.","in":"query","name":"withdrawalId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"amount":{"description":"Amount to be withdrawn.","type":"string"},"assetSource":{"description":"Address of asset on Ethereum.","type":"string"},"creation":{"description":"Creation timestamps.","format":"int64","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: 0x + sig1 + sig2 + ... + sixN.","type":"string"},"targetAddress":{"description":"Ethereum address, prefixed with `0x`, that will receive the withdrawn assets.","type":"string"}},"title":"Response with all information required to bundle the call to finalise the withdrawal on the erc20 bridge\nfunction withdraw_asset(address asset_source, uint256 asset_id, uint256 amount, uint256 expiry, uint256 nonce, bytes memory signatures)","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signature bundle to finalise a withdrawal on Ethereum","operationId":"TradingDataService_GetERC20WithdrawalApproval","method":"get","path":"/api/v2/erc20/asset/withdrawal/bundle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get ERC20 withdrawal approval","description":{"content":"Get the signature bundle to finalise a withdrawal on Ethereum","type":"text/plain"},"url":{"path":["api","v2","erc20","asset","withdrawal","bundle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Withdrawal ID to retrieve.","type":"text/plain"},"key":"withdrawalId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Withdrawal ID to retrieve.","in":"query","name":"withdrawalId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"amount":{"description":"Amount to be withdrawn.","type":"string"},"assetSource":{"description":"Address of asset on Ethereum.","type":"string"},"creation":{"description":"Creation timestamps.","format":"int64","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: 0x + sig1 + sig2 + ... + sixN.","type":"string"},"targetAddress":{"description":"Ethereum address, prefixed with `0x`, that will receive the withdrawn assets.","type":"string"}},"title":"Response with all information required to bundle the call to finalise the withdrawal on the erc20 bridge\nfunction withdraw_asset(address asset_source, uint256 asset_id, uint256 amount, uint256 expiry, uint256 nonce, bytes memory signatures)","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signature bundle to finalise a withdrawal on Ethereum","operationId":"TradingDataService_GetERC20WithdrawalApproval","method":"get","path":"/api/v2/erc20/asset/withdrawal/bundle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get ERC20 withdrawal approval","description":{"content":"Get the signature bundle to finalise a withdrawal on Ethereum","type":"text/plain"},"url":{"path":["api","v2","erc20","asset","withdrawal","bundle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Withdrawal ID to retrieve.","type":"text/plain"},"key":"withdrawalId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get ERC20 withdrawal approval' (trading-data-service-get-erc-20-withdrawal-approval)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-fees-stats-for-party.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-fees-stats-for-party.api.mdx index 141c66e26..cb23b384f 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-fees-stats-for-party.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-fees-stats-for-party.api.mdx @@ -5,7 +5,7 @@ description: "Get accumulated fees, rewards, and applied discount information. A sidebar_label: "Get fees statistics for a party" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict fees statistics to those for the given party.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict fees statistics to those related to the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to filter from (included). If omitted, `to epoch` must not be set. If both omitted, the most recent epoch's data is returned.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when requesting fees statistics for a given party.","properties":{"feesStatsForParty":{"description":"Fees statistics for the given request.","items":{"properties":{"assetId":{"description":"Settlement asset of the market.","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to referee fees.","type":"string"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","type":"string"},"totalRewardsReceived":{"description":"Total referral rewards received by referrer of the referral set.","type":"string"},"volumeDiscountApplied":{"description":"Total volume discounts applied to referee fees.","type":"string"}},"type":"object","title":"v2FeesStatsForParty"},"type":"array"}},"type":"object","title":"v2GetFeesStatsForPartyResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Fees"],"description":"Get accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter.","operationId":"TradingDataService_GetFeesStatsForParty","method":"get","path":"/api/v2/fees/stats/parties/{partyId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get fees statistics for a party","description":{"content":"Get accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter.","type":"text/plain"},"url":{"path":["api","v2","fees","stats","parties",":partyId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict fees statistics to those related to the given asset.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Epoch to filter from (included). If omitted, `to epoch` must not be set. If both omitted, the most recent epoch's data is returned.","type":"text/plain"},"key":"fromEpoch","value":""},{"disabled":false,"description":{"content":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","type":"text/plain"},"key":"toEpoch","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Restrict fees statistics to those for the given party.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict fees statistics to those for the given party.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict fees statistics to those related to the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when requesting fees statistics for a given party.","properties":{"feesStatsForParty":{"description":"Fees statistics for the given request.","items":{"properties":{"assetId":{"description":"Settlement asset of the market.","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to referee fees.","type":"string"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","type":"string"},"totalRewardsReceived":{"description":"Total referral rewards received by referrer of the referral set.","type":"string"},"volumeDiscountApplied":{"description":"Total volume discounts applied to referee fees.","type":"string"}},"type":"object","title":"v2FeesStatsForParty"},"type":"array"}},"type":"object","title":"v2GetFeesStatsForPartyResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Fees"],"description":"Get accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter.","operationId":"TradingDataService_GetFeesStatsForParty","method":"get","path":"/api/v2/fees/stats/parties/{partyId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get fees statistics for a party","description":{"content":"Get accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter.","type":"text/plain"},"url":{"path":["api","v2","fees","stats","parties",":partyId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict fees statistics to those related to the given asset.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","type":"text/plain"},"key":"fromEpoch","value":""},{"disabled":false,"description":{"content":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","type":"text/plain"},"key":"toEpoch","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Restrict fees statistics to those for the given party.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get fees statistics for a party' (trading-data-service-get-fees-stats-for-party)" @@ -26,7 +26,7 @@ import TabItem from "@theme/TabItem"; Get accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter. -
    Path Parameters
    Query Parameters
    +
    Path Parameters
    Query Parameters
    A successful response. diff --git a/docs/api/rest/data-v2/trading-data-service-get-fees-stats.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-fees-stats.api.mdx index 9f9f770c4..455633d9d 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-fees-stats.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-fees-stats.api.mdx @@ -5,7 +5,7 @@ description: "Get accumulated fees, rewards, and applied discount information. E sidebar_label: "Get fees statistics" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict fee statistics to those related for the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict fee statistics to those related for the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get referral fee statistics for. If not set, the last complete epoch is used.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict fee statistics to those for the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when requesting fees statistics.","properties":{"feesStats":{"description":"Fees statistics for the given request.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"}},"type":"object","title":"v2GetFeesStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Fees"],"description":"Get accumulated fees, rewards, and applied discount information. Either a market or an asset must be supplied as filter.","operationId":"TradingDataService_GetFeesStats","method":"get","path":"/api/v2/fees/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get fees statistics","description":{"content":"Get accumulated fees, rewards, and applied discount information. Either a market or an asset must be supplied as filter.","type":"text/plain"},"url":{"path":["api","v2","fees","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict fee statistics to those related for the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict fee statistics to those related for the given asset.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Epoch to get referral fee statistics for. If not set, the last complete epoch is used.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Restrict fee statistics to those for the given party.","type":"text/plain"},"key":"partyId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict fee statistics to those related for the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict fee statistics to those related for the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get referral fee statistics for. If not set, the last complete epoch is used.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict fee statistics to those for the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when requesting fees statistics.","properties":{"feesStats":{"description":"Fees statistics for the given request.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"type":"array"},"totalFeesPaidAndReceived":{"description":"Total trading fees received and paid by the party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"}},"type":"object","title":"v2GetFeesStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Fees"],"description":"Get accumulated fees, rewards, and applied discount information. Either a market or an asset must be supplied as filter.","operationId":"TradingDataService_GetFeesStats","method":"get","path":"/api/v2/fees/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get fees statistics","description":{"content":"Get accumulated fees, rewards, and applied discount information. Either a market or an asset must be supplied as filter.","type":"text/plain"},"url":{"path":["api","v2","fees","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict fee statistics to those related for the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict fee statistics to those related for the given asset.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Epoch to get referral fee statistics for. If not set, the last complete epoch is used.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Restrict fee statistics to those for the given party.","type":"text/plain"},"key":"partyId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get fees statistics' (trading-data-service-get-fees-stats)" @@ -54,7 +54,11 @@ Referral rewards generated by all referee taker fees. Amount of rewards generated per party. -
  • Array [
  • ]
  • ]
  • totalMakerFeesReceived object[]
    +
  • Array [
  • ]
  • ]
  • totalFeesPaidAndReceived object[]
    + +Total trading fees received and paid by the party. + +
  • Array [
  • ]
  • totalMakerFeesReceived object[]
    Total maker fees received by the maker side. @@ -66,7 +70,7 @@ Total referral rewards received by the referrer of the referral set. Total volume discounts applied to all referee taker fees. -
  • Array [
  • ]
  • +
  • Array [
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-governance-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-governance-data.api.mdx index c1af4e706..1f0d31c5f 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-governance-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-governance-data.api.mdx @@ -5,7 +5,7 @@ description: "Get a single proposal's details either by proposal ID or by refere sidebar_label: "Get governance data" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Proposal ID to get governance data for, if provided.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}},{"description":"Reference to get proposal data for, if provided.","in":"query","name":"reference","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"description":"Governance data content, i.e. proposal and votes for and against.","properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"}},"title":"Response from getting governance data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a single proposal's details either by proposal ID or by reference","operationId":"TradingDataService_GetGovernanceData","method":"get","path":"/api/v2/governance","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get governance data","description":{"content":"Get a single proposal's details either by proposal ID or by reference","type":"text/plain"},"url":{"path":["api","v2","governance"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Proposal ID to get governance data for, if provided.","type":"text/plain"},"key":"proposalId","value":""},{"disabled":false,"description":{"content":"Reference to get proposal data for, if provided.","type":"text/plain"},"key":"reference","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Proposal ID to get governance data for, if provided.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}},{"description":"Reference to get proposal data for, if provided.","in":"query","name":"reference","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"description":"Governance data content, i.e. proposal and votes for and against.","properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"proposalType":{"description":"Type of proposal this data is for.","default":"TYPE_SINGLE_OR_UNSPECIFIED","enum":["TYPE_SINGLE_OR_UNSPECIFIED","TYPE_BATCH"],"title":"Proposal type","type":"string"},"proposals":{"description":"If proposal type is batch, proposals will contain all the proposals that are make up the batch.","items":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"type":"array"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"}},"title":"Response from getting governance data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a single proposal's details either by proposal ID or by reference","operationId":"TradingDataService_GetGovernanceData","method":"get","path":"/api/v2/governance","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get governance data","description":{"content":"Get a single proposal's details either by proposal ID or by reference","type":"text/plain"},"url":{"path":["api","v2","governance"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Proposal ID to get governance data for, if provided.","type":"text/plain"},"key":"proposalId","value":""},{"disabled":false,"description":{"content":"Reference to get proposal data for, if provided.","type":"text/plain"},"key":"reference","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get governance data' (trading-data-service-get-governance-data)" @@ -38,47 +38,39 @@ Governance data content, i.e. proposal and votes for and against. All NO votes against the proposal above. -
  • Array [
  • ]
  • noParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • noParty object
    All latest NO votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
    proposal object
    - -Governance proposal that is being voted on. - -
    rationale object
    - -Rationale behind a proposal. - -
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    -Proposal configuration and the actual change that is meant to be executed when proposal is enacted. - -
    cancelTransfer object
    - -Cancel a governance transfer. +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. -
    changes object
    newAsset object
    +
    proposal object
    -Proposal change for creating new assets on Vega. +Governance proposal that is being voted on. -
    changes object
    +
    batchTerms object
    -Configuration of the new asset. +Batch proposal terms. -
    builtinAsset object
    +
    changes object[]
    -Vega built-in asset. +List of individual changes included in the batch proposal. -
    erc20 object
    +
  • Array [
  • cancelTransfer object
    -Ethereum ERC20 asset. +Proposal change to cancel a governance initiated transfe. -
    newMarket object
    +
    changes object
    newMarket object
    -Proposal change for creating new futures market on Vega. +Proposal change for creating new futures market.
    changes object
    @@ -129,7 +121,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -229,7 +221,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -304,7 +296,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -337,7 +329,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -437,7 +429,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -504,63 +496,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    successor object
    - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
    newSpotMarket object
    - -Proposal change for creating new spot market on Vega. - -
    changes object
    - -Configuration of the new spot market. - -
    instrument object
    - -New spot market instrument configuration. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -589,7 +533,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -656,11 +600,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -The external data source spec describing the data source of trading termination. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -689,7 +665,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -756,15 +732,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Perpetual. +Price monitoring parameters. -
    dataSourceSpecBinding object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -797,7 +797,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -864,9 +864,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement schedule. +The external data source spec describing the data source of trading termination.
    external object
    @@ -897,7 +897,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -964,85 +964,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    - -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Data source spec describing the data source for settlement.
    external object
    @@ -1073,7 +1005,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1140,9 +1072,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -The data source spec describing the data source for trading termination. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -1173,7 +1105,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1240,19 +1172,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1281,7 +1209,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1348,49 +1276,6697 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Data source spec describing the data source for settlement schedule. +Spot. -
    external object
    +
    liquidityFeeSettings object
    -DataSourceDefinitionExternal is the top level object used for all external -data sources. It contains one of any of the defined `SourceType` variants. +Specifies how the liquidity fee for the market will be calculated. -
    ethOracle object
    +
    logNormal object
    -Contains the data specification that is received from Ethereum sources. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    filters object[]
  • Array [
  • conditions object[]
    +
    params object
    -Conditions that should be matched by the data to be -considered of interest. +Risk model parameters for log normal. -
  • Array [
  • ]
  • key object
    +
    priceMonitoringParameters object
    -Data source's data property key targeted by the filter. +Price monitoring parameters. -
  • ]
  • normalisers object[]
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Normalisers are used to convert the data returned from the contract method -into a standard format. The key of the map is the name of the property, -which identifies the specific piece of data to other parts of the data -sourcing framework, for example filters. The value is a JSONPath expression -for expressing where in the contract call result the required data is -located, for example $[0] indicates the first result. $[1].price would look -in the second result returned from the contract for a structure with a key -called 'price' and use that if it exists. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
  • Array [
  • ]
  • trigger object
    +
    slaParams object
    -Conditions for determining when to call the contract method. +Specifies the liquidity provision SLA parameters. -
    timeTrigger object
    +
    targetStakeParameters object
    -Trigger for an Ethereum call based on the Ethereum block timestamp. Can be -one-off or repeating. +Specifies parameters related to target stake calculation. -
    oracle object
    +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market on Vega. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • proposals object[]
    + +If proposal type is batch, proposals will contain all the proposals that are make up the batch. + +
  • Array [
  • batchTerms object
    + +Batch proposal terms. + +
    changes object[]
    + +List of individual changes included in the batch proposal. + +
  • Array [
  • cancelTransfer object
    + +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures @@ -1448,7 +8024,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -1464,7 +8048,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -1512,7 +8200,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1546,17 +8238,25 @@ Defined benefit tiers in increasing order. First element will give Tier 1, second element will give Tier 2, and so on. Determines the level of benefit a party can expect based on performance criteria. -
  • Array [
  • ]
  • yes object[]
    +
  • Array [
  • ]
  • ]
  • yes object[]
    All YES votes in favour of the proposal above. -
  • Array [
  • ]
  • yesParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • yesParty object
    All latest YES votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
    +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-last-trade.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-last-trade.api.mdx index 2c1f1809a..629ffb3b8 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-last-trade.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-last-trade.api.mdx @@ -5,7 +5,7 @@ description: "Get the last trade made for a given market." sidebar_label: "Get last trade" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to retrieve the last trade for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"trade":{"description":"Information about the trade, if one is found.","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"}},"title":"Response for the latest trade that occurred on Vega for a given market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Get the last trade made for a given market.","operationId":"TradingDataService_GetLastTrade","method":"get","path":"/api/v2/market/{marketId}/trade/latest","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get last trade","description":{"content":"Get the last trade made for a given market.","type":"text/plain"},"url":{"path":["api","v2","market",":marketId","trade","latest"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to retrieve the last trade for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to retrieve the last trade for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"trade":{"description":"Information about the trade, if one is found.","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"}},"title":"Response for the latest trade that occurred on Vega for a given market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Get the last trade made for a given market.","operationId":"TradingDataService_GetLastTrade","method":"get","path":"/api/v2/market/{marketId}/trade/latest","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get last trade","description":{"content":"Get the last trade made for a given market.","type":"text/plain"},"url":{"path":["api","v2","market",":marketId","trade","latest"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to retrieve the last trade for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get last trade' (trading-data-service-get-last-trade)" @@ -34,7 +34,7 @@ A successful response. Information about the trade, if one is found. -
    buyerFee object
    +
    buyerFee object
    Fee amount charged to the buyer party for the trade. @@ -42,7 +42,7 @@ Fee amount charged to the buyer party for the trade. Fee amount charged to the seller party for the trade. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-latest-market-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-latest-market-data.api.mdx index 2092cf05d..095297c16 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-latest-market-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-latest-market-data.api.mdx @@ -5,7 +5,7 @@ description: "Get the latest market data for a given market" sidebar_label: "Get latest market data" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to retrieve market data for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketData":{"description":"Market data that was requested.","properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"}},"title":"Response that is received when listing the latest market data for a given market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get the latest market data for a given market","operationId":"TradingDataService_GetLatestMarketData","method":"get","path":"/api/v2/market/data/{marketId}/latest","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get latest market data","description":{"content":"Get the latest market data for a given market","type":"text/plain"},"url":{"path":["api","v2","market","data",":marketId","latest"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to retrieve market data for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to retrieve market data for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketData":{"description":"Market data that was requested.","properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"description":"The method used for calculating the mark price.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"description":"The method used for calculating the index price (perps only).","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"}},"title":"Response that is received when listing the latest market data for a given market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get the latest market data for a given market","operationId":"TradingDataService_GetLatestMarketData","method":"get","path":"/api/v2/market/data/{marketId}/latest","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get latest market data","description":{"content":"Get the latest market data for a given market","type":"text/plain"},"url":{"path":["api","v2","market","data",":marketId","latest"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to retrieve market data for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get latest market data' (trading-data-service-get-latest-market-data)" @@ -42,7 +42,7 @@ Equity like share of liquidity fee for each liquidity provider. SLA performance for each liquidity provider. -
  • Array [
  • ]
  • priceMonitoringBounds object[]
    +
  • Array [
  • ]
  • priceMonitoringBounds object[]
    One or more price monitoring bounds for the current timestamp. @@ -58,7 +58,7 @@ Data related to the particular product type of the market. Represents market data specific to a perpetual market. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-latest-market-depth.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-latest-market-depth.api.mdx index 09264956e..c2236eec6 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-latest-market-depth.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-latest-market-depth.api.mdx @@ -5,7 +5,7 @@ description: "Get the latest market depth for a given market" sidebar_label: "Get latest market depth" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to request market depth for, required field.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Maximum market depth.","in":"query","name":"maxDepth","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"buy":{"description":"Zero or more price levels for the buy side of the market depth data.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"lastTrade":{"description":"Last trade recorded on Vega.","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"},"marketId":{"description":"Market ID of the depth levels returned.","type":"string"},"sell":{"description":"Zero or more price levels for the sell side of the market depth data.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"sequenceNumber":{"description":"Sequence number incremented after each update.","format":"uint64","type":"string"}},"title":"Response that is received when latest market depth data is queried","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get the latest market depth for a given market","operationId":"TradingDataService_GetLatestMarketDepth","method":"get","path":"/api/v2/market/depth/{marketId}/latest","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get latest market depth","description":{"content":"Get the latest market depth for a given market","type":"text/plain"},"url":{"path":["api","v2","market","depth",":marketId","latest"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Maximum market depth.","type":"text/plain"},"key":"maxDepth","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to request market depth for, required field.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to request market depth for, required field.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Maximum market depth.","in":"query","name":"maxDepth","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"buy":{"description":"Zero or more price levels for the buy side of the market depth data.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"lastTrade":{"description":"Last trade recorded on Vega.","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"},"marketId":{"description":"Market ID of the depth levels returned.","type":"string"},"sell":{"description":"Zero or more price levels for the sell side of the market depth data.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"sequenceNumber":{"description":"Sequence number incremented after each update.","format":"uint64","type":"string"}},"title":"Response that is received when latest market depth data is queried","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get the latest market depth for a given market","operationId":"TradingDataService_GetLatestMarketDepth","method":"get","path":"/api/v2/market/depth/{marketId}/latest","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get latest market depth","description":{"content":"Get the latest market depth for a given market","type":"text/plain"},"url":{"path":["api","v2","market","depth",":marketId","latest"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Maximum market depth.","type":"text/plain"},"key":"maxDepth","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to request market depth for, required field.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get latest market depth' (trading-data-service-get-latest-market-depth)" @@ -38,7 +38,7 @@ Zero or more price levels for the buy side of the market depth data. Last trade recorded on Vega. -
    buyerFee object
    +
    buyerFee object
    Fee amount charged to the buyer party for the trade. @@ -50,7 +50,7 @@ Fee amount charged to the seller party for the trade. Zero or more price levels for the sell side of the market depth data. -
  • Array [
  • ]
  • +
  • Array [
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-market-data-history-by-id.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-market-data-history-by-id.api.mdx index 268765420..3a721b984 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-market-data-history-by-id.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-market-data-history-by-id.api.mdx @@ -5,7 +5,7 @@ description: "Get market data history for a market ID from between a given date sidebar_label: "Get market data history" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to request data history for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketData":{"description":"Page of market data history with the corresponding page information.","properties":{"edges":{"description":"Page of market data items and their corresponding cursors.","items":{"description":"Market data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data generated by a market when open.","properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"}},"type":"object","title":"v2MarketDataEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of market data items and corresponding page information","type":"object"}},"title":"Response that is received when querying Market Data History","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get market data history for a market ID from between a given date range","operationId":"TradingDataService_GetMarketDataHistoryByID","method":"get","path":"/api/v2/market/data/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get market data history","description":{"content":"Get market data history for a market ID from between a given date range","type":"text/plain"},"url":{"path":["api","v2","market","data",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"endTimestamp","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to request data history for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to request data history for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketData":{"description":"Page of market data history with the corresponding page information.","properties":{"edges":{"description":"Page of market data items and their corresponding cursors.","items":{"description":"Market data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data generated by a market when open.","properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"description":"The method used for calculating the mark price.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"description":"The method used for calculating the index price (perps only).","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"}},"type":"object","title":"v2MarketDataEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of market data items and corresponding page information","type":"object"}},"title":"Response that is received when querying Market Data History","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get market data history for a market ID from between a given date range","operationId":"TradingDataService_GetMarketDataHistoryByID","method":"get","path":"/api/v2/market/data/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get market data history","description":{"content":"Get market data history for a market ID from between a given date range","type":"text/plain"},"url":{"path":["api","v2","market","data",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"endTimestamp","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to request data history for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get market data history' (trading-data-service-get-market-data-history-by-id)" @@ -50,7 +50,7 @@ Equity like share of liquidity fee for each liquidity provider. SLA performance for each liquidity provider. -
  • Array [
  • ]
  • priceMonitoringBounds object[]
    +
  • Array [
  • ]
  • priceMonitoringBounds object[]
    One or more price monitoring bounds for the current timestamp. @@ -66,11 +66,11 @@ Data related to the particular product type of the market. Represents market data specific to a perpetual market. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-market.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-market.api.mdx index c6f77313f..03cb5d605 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-market.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-market.api.mdx @@ -6,7 +6,7 @@ generated it" sidebar_label: "Get market" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID of the market to retrieve data for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"market":{"description":"Information about the market requested.","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"}},"title":"Response from getting a market by ID","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get information about a specific market using its ID. A market's ID will be the same as the ID of the proposal that\ngenerated it","operationId":"TradingDataService_GetMarket","method":"get","path":"/api/v2/market/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get market","description":{"content":"Get information about a specific market using its ID. A market's ID will be the same as the ID of the proposal that\ngenerated it","type":"text/plain"},"url":{"path":["api","v2","market",":marketId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID of the market to retrieve data for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID of the market to retrieve data for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"market":{"description":"Information about the market requested.","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"}},"title":"Response from getting a market by ID","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get information about a specific market using its ID. A market's ID will be the same as the ID of the proposal that\ngenerated it","operationId":"TradingDataService_GetMarket","method":"get","path":"/api/v2/market/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get market","description":{"content":"Get information about a specific market using its ID. A market's ID will be the same as the ID of the proposal that\ngenerated it","type":"text/plain"},"url":{"path":["api","v2","market",":marketId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID of the market to retrieve data for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get market' (trading-data-service-get-market)" @@ -44,7 +44,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -56,7 +64,111 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    +
    markPriceConfiguration object
    + +Mark price calculation configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    Timestamps for when the market state changes. @@ -128,7 +240,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -234,7 +346,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -313,7 +425,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -352,7 +464,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -458,7 +570,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -525,7 +741,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -553,7 +769,7 @@ Simple. Risk model params for simple modelling. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-network-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-network-data.api.mdx index 06d1c9b55..257d49c94 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-network-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-network-data.api.mdx @@ -5,7 +5,7 @@ description: "Get data regarding the nodes of the network" sidebar_label: "Get network data" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"nodeData":{"description":"Summary of information with respect to nodes on the Vega network.","properties":{"ersatzNodes":{"description":"Details on the set of ersatz (standby) nodes in the network.","properties":{"demoted":{"description":"IDs of nodes that were demoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"inactive":{"description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"maximum":{"description":"Total number of nodes allowed in the node set.","format":"int64","type":"integer"},"promoted":{"description":"IDs of nodes that were promoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of nodes in the node set.","format":"int64","type":"integer"}},"title":"Details on the collection of nodes for a particular validator status","type":"object"},"inactiveNodes":{"description":"Total number of nodes that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"pendingNodes":{"description":"Details on the set of pending nodes in the network.","properties":{"demoted":{"description":"IDs of nodes that were demoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"inactive":{"description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"maximum":{"description":"Total number of nodes allowed in the node set.","format":"int64","type":"integer"},"promoted":{"description":"IDs of nodes that were promoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of nodes in the node set.","format":"int64","type":"integer"}},"title":"Details on the collection of nodes for a particular validator status","type":"object"},"stakedTotal":{"description":"Total staked amount across all nodes. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"tendermintNodes":{"description":"Details on the set of consensus nodes in the network.","properties":{"demoted":{"description":"IDs of nodes that were demoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"inactive":{"description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"maximum":{"description":"Total number of nodes allowed in the node set.","format":"int64","type":"integer"},"promoted":{"description":"IDs of nodes that were promoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of nodes in the node set.","format":"int64","type":"integer"}},"title":"Details on the collection of nodes for a particular validator status","type":"object"},"totalNodes":{"description":"Total number of nodes across all node sets.","format":"int64","type":"integer"},"uptime":{"description":"Total uptime for all epochs across all nodes.","format":"float","type":"number"}},"type":"object","title":"vegaNodeData"}},"title":"Response from getting network data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get data regarding the nodes of the network","operationId":"TradingDataService_GetNetworkData","method":"get","path":"/api/v2/network/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get network data","description":{"content":"Get data regarding the nodes of the network","type":"text/plain"},"url":{"path":["api","v2","network","data"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"nodeData":{"description":"Summary of information with respect to nodes on the Vega network.","properties":{"ersatzNodes":{"description":"Details on the set of ersatz (standby) nodes in the network.","properties":{"demoted":{"description":"IDs of nodes that were demoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"inactive":{"description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"maximum":{"description":"Total number of nodes allowed in the node set.","format":"int64","type":"integer"},"promoted":{"description":"IDs of nodes that were promoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of nodes in the node set.","format":"int64","type":"integer"}},"title":"Details on the collection of nodes for a particular validator status","type":"object"},"inactiveNodes":{"description":"Total number of nodes that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"pendingNodes":{"description":"Details on the set of pending nodes in the network.","properties":{"demoted":{"description":"IDs of nodes that were demoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"inactive":{"description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"maximum":{"description":"Total number of nodes allowed in the node set.","format":"int64","type":"integer"},"promoted":{"description":"IDs of nodes that were promoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of nodes in the node set.","format":"int64","type":"integer"}},"title":"Details on the collection of nodes for a particular validator status","type":"object"},"stakedTotal":{"description":"Total staked amount across all nodes. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"tendermintNodes":{"description":"Details on the set of consensus nodes in the network.","properties":{"demoted":{"description":"IDs of nodes that were demoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"inactive":{"description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"maximum":{"description":"Total number of nodes allowed in the node set.","format":"int64","type":"integer"},"promoted":{"description":"IDs of nodes that were promoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of nodes in the node set.","format":"int64","type":"integer"}},"title":"Details on the collection of nodes for a particular validator status","type":"object"},"totalNodes":{"description":"Total number of nodes across all node sets.","format":"int64","type":"integer"},"uptime":{"description":"Total uptime for all epochs across all nodes.","format":"float","type":"number"}},"type":"object","title":"vegaNodeData"}},"title":"Response from getting network data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get data regarding the nodes of the network","operationId":"TradingDataService_GetNetworkData","method":"get","path":"/api/v2/network/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get network data","description":{"content":"Get data regarding the nodes of the network","type":"text/plain"},"url":{"path":["api","v2","network","data"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get network data' (trading-data-service-get-network-data)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-network-history-bootstrap-peers.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-network-history-bootstrap-peers.api.mdx index fd4b2f506..ce84dc631 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-network-history-bootstrap-peers.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-network-history-bootstrap-peers.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of IPFS peers that can be used to initialise a new data sidebar_label: "Network history bootstrap peers" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"bootstrapPeers":{"description":"List of peers that can be used to bootstrap a Vega data node.","items":{"type":"string"},"type":"array"}},"title":"Response containing the nodes network history bootstrap peers","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get a list of IPFS peers that can be used to initialise a new data node with network history","operationId":"TradingDataService_GetNetworkHistoryBootstrapPeers","method":"get","path":"/api/v2/networkhistory/bootstrap","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Network history bootstrap peers","description":{"content":"Get a list of IPFS peers that can be used to initialise a new data node with network history","type":"text/plain"},"url":{"path":["api","v2","networkhistory","bootstrap"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"bootstrapPeers":{"description":"List of peers that can be used to bootstrap a Vega data node.","items":{"type":"string"},"type":"array"}},"title":"Response containing the nodes network history bootstrap peers","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get a list of IPFS peers that can be used to initialise a new data node with network history","operationId":"TradingDataService_GetNetworkHistoryBootstrapPeers","method":"get","path":"/api/v2/networkhistory/bootstrap","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Network history bootstrap peers","description":{"content":"Get a list of IPFS peers that can be used to initialise a new data node with network history","type":"text/plain"},"url":{"path":["api","v2","networkhistory","bootstrap"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Network history bootstrap peers' (trading-data-service-get-network-history-bootstrap-peers)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-network-history-status.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-network-history-status.api.mdx index c9a7b1b24..2529104a5 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-network-history-status.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-network-history-status.api.mdx @@ -5,7 +5,7 @@ description: "Get information about the current state of network history's IPFS sidebar_label: "Network history status" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"connectedPeers":{"description":"List of peers connected to the IPFS swarm.","items":{"type":"string"},"type":"array"},"ipfsAddress":{"description":"IPFS address of the data node currently connected to.","type":"string"},"swarmKey":{"description":"Swarm key used by the IPFS swarm.","type":"string"},"swarmKeySeed":{"description":"Swarm key seed used by the IPFS swarm.","type":"string"}},"title":"Response containing the status of network history","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get information about the current state of network history's IPFS swarm","operationId":"TradingDataService_GetNetworkHistoryStatus","method":"get","path":"/api/v2/networkhistory","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Network history status","description":{"content":"Get information about the current state of network history's IPFS swarm","type":"text/plain"},"url":{"path":["api","v2","networkhistory"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"connectedPeers":{"description":"List of peers connected to the IPFS swarm.","items":{"type":"string"},"type":"array"},"ipfsAddress":{"description":"IPFS address of the data node currently connected to.","type":"string"},"swarmKey":{"description":"Swarm key used by the IPFS swarm.","type":"string"},"swarmKeySeed":{"description":"Swarm key seed used by the IPFS swarm.","type":"string"}},"title":"Response containing the status of network history","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get information about the current state of network history's IPFS swarm","operationId":"TradingDataService_GetNetworkHistoryStatus","method":"get","path":"/api/v2/networkhistory","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Network history status","description":{"content":"Get information about the current state of network history's IPFS swarm","type":"text/plain"},"url":{"path":["api","v2","networkhistory"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Network history status' (trading-data-service-get-network-history-status)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-network-limits.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-network-limits.api.mdx index 7f9108548..2540e8ceb 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-network-limits.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-network-limits.api.mdx @@ -5,7 +5,7 @@ description: "Get the network limits relating to asset and market creation" sidebar_label: "Get network limits" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"limits":{"description":"List of received network limits.","properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"title":"Network limits, defined in the genesis file","type":"object"}},"title":"Response received when querying the current network limits","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get the network limits relating to asset and market creation","operationId":"TradingDataService_GetNetworkLimits","method":"get","path":"/api/v2/network/limits","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get network limits","description":{"content":"Get the network limits relating to asset and market creation","type":"text/plain"},"url":{"path":["api","v2","network","limits"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"limits":{"description":"List of received network limits.","properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"title":"Network limits, defined in the genesis file","type":"object"}},"title":"Response received when querying the current network limits","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get the network limits relating to asset and market creation","operationId":"TradingDataService_GetNetworkLimits","method":"get","path":"/api/v2/network/limits","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get network limits","description":{"content":"Get the network limits relating to asset and market creation","type":"text/plain"},"url":{"path":["api","v2","network","limits"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get network limits' (trading-data-service-get-network-limits)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-network-parameter.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-network-parameter.api.mdx index 6741fc5ba..6165adabb 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-network-parameter.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-network-parameter.api.mdx @@ -5,7 +5,7 @@ description: "Get a network parameter's value by its key" sidebar_label: "Get network parameter" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Key identifying the network parameter.","in":"path","name":"key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkParameter":{"description":"Network parameter key and value.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Response that is received when getting a network parameter","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a network parameter's value by its key","operationId":"TradingDataService_GetNetworkParameter","method":"get","path":"/api/v2/network/parameters/{key}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get network parameter","description":{"content":"Get a network parameter's value by its key","type":"text/plain"},"url":{"path":["api","v2","network","parameters",":key"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Key identifying the network parameter.","type":"text/plain"},"type":"any","value":"","key":"key"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Key identifying the network parameter.","in":"path","name":"key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkParameter":{"description":"Network parameter key and value.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Response that is received when getting a network parameter","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a network parameter's value by its key","operationId":"TradingDataService_GetNetworkParameter","method":"get","path":"/api/v2/network/parameters/{key}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get network parameter","description":{"content":"Get a network parameter's value by its key","type":"text/plain"},"url":{"path":["api","v2","network","parameters",":key"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Key identifying the network parameter.","type":"text/plain"},"type":"any","value":"","key":"key"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get network parameter' (trading-data-service-get-network-parameter)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-node.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-node.api.mdx index 7be29ab7f..2a7f572b8 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-node.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-node.api.mdx @@ -5,7 +5,7 @@ description: "Get information about a given node" sidebar_label: "Get node" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Node ID to get data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"node":{"properties":{"avatarUrl":{"description":"Avatar url.","type":"string"},"delegations":{"description":"Node's delegations.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"epochData":{"description":"Information about epoch.","properties":{"offline":{"description":"Total number of offline epochs since node was created.","format":"int32","type":"integer"},"online":{"description":"Total number of online epochs since node was created.","format":"int32","type":"integer"},"total":{"description":"Total number of epochs since node was created.","format":"int32","type":"integer"}},"type":"object","title":"vegaEpochData"},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Node ID i.e. the node's wallet ID.","type":"string"},"infoUrl":{"description":"URL where users can find out more information on the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"maxIntendedStake":{"description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"name":{"description":"Node name.","type":"string"},"pendingStake":{"description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"pubKey":{"description":"Public key of the node operator.","type":"string"},"rankingScore":{"description":"Node ranking information.","properties":{"performanceScore":{"description":"Performance based score.","type":"string"},"previousStatus":{"description":"Status of the validator in the previous epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"rankingScore":{"description":"Final score.","type":"string"},"stakeScore":{"description":"Stake based score - no anti-whaling.","type":"string"},"status":{"description":"Status of the validator in the current epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"votingPower":{"description":"Tendermint voting power of the validator.","format":"int64","type":"integer"}},"type":"object","title":"vegaRankingScore"},"rewardScore":{"description":"Node reward score.","properties":{"multisigScore":{"description":"Multisig score.","type":"string"},"normalisedScore":{"description":"Normalised validator score for rewards.","type":"string"},"performanceScore":{"description":"Performance based score.","type":"string"},"rawValidatorScore":{"description":"Stake based score - with anti-whaling.","type":"string"},"validatorScore":{"description":"Un-normalised score.","type":"string"},"validatorStatus":{"description":"Status of the validator for reward.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"}},"type":"object","title":"vegaRewardScore"},"stakedByDelegates":{"description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedByOperator":{"description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedTotal":{"description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"status":{"description":"Node status.","default":"NODE_STATUS_UNSPECIFIED","enum":["NODE_STATUS_UNSPECIFIED","NODE_STATUS_VALIDATOR","NODE_STATUS_NON_VALIDATOR"],"title":"Node status type","type":"string"},"tmPubKey":{"description":"Public key of Tendermint.","type":"string"}},"type":"object","title":"vegaNode","description":"Data specific to a single node on the Vega network."}},"title":"Response from getting node","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get information about a given node","operationId":"TradingDataService_GetNode","method":"get","path":"/api/v2/node/{id}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get node","description":{"content":"Get information about a given node","type":"text/plain"},"url":{"path":["api","v2","node",":id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Node ID to get data for.","type":"text/plain"},"type":"any","value":"","key":"id"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Node ID to get data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"node":{"properties":{"avatarUrl":{"description":"Avatar url.","type":"string"},"delegations":{"description":"Node's delegations.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"epochData":{"description":"Information about epoch.","properties":{"offline":{"description":"Total number of offline epochs since node was created.","format":"int32","type":"integer"},"online":{"description":"Total number of online epochs since node was created.","format":"int32","type":"integer"},"total":{"description":"Total number of epochs since node was created.","format":"int32","type":"integer"}},"type":"object","title":"vegaEpochData"},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Node ID i.e. the node's wallet ID.","type":"string"},"infoUrl":{"description":"URL where users can find out more information on the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"maxIntendedStake":{"description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"name":{"description":"Node name.","type":"string"},"pendingStake":{"description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"pubKey":{"description":"Public key of the node operator.","type":"string"},"rankingScore":{"description":"Node ranking information.","properties":{"performanceScore":{"description":"Performance based score.","type":"string"},"previousStatus":{"description":"Status of the validator in the previous epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"rankingScore":{"description":"Final score.","type":"string"},"stakeScore":{"description":"Stake based score - no anti-whaling.","type":"string"},"status":{"description":"Status of the validator in the current epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"votingPower":{"description":"Tendermint voting power of the validator.","format":"int64","type":"integer"}},"type":"object","title":"vegaRankingScore"},"rewardScore":{"description":"Node reward score.","properties":{"multisigScore":{"description":"Multisig score.","type":"string"},"normalisedScore":{"description":"Normalised validator score for rewards.","type":"string"},"performanceScore":{"description":"Performance based score.","type":"string"},"rawValidatorScore":{"description":"Stake based score - with anti-whaling.","type":"string"},"validatorScore":{"description":"Un-normalised score.","type":"string"},"validatorStatus":{"description":"Status of the validator for reward.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"}},"type":"object","title":"vegaRewardScore"},"stakedByDelegates":{"description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedByOperator":{"description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedTotal":{"description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"status":{"description":"Node status.","default":"NODE_STATUS_UNSPECIFIED","enum":["NODE_STATUS_UNSPECIFIED","NODE_STATUS_VALIDATOR","NODE_STATUS_NON_VALIDATOR"],"title":"Node status type","type":"string"},"tmPubKey":{"description":"Public key of Tendermint.","type":"string"}},"type":"object","title":"vegaNode","description":"Data specific to a single node on the Vega network."}},"title":"Response from getting node","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get information about a given node","operationId":"TradingDataService_GetNode","method":"get","path":"/api/v2/node/{id}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get node","description":{"content":"Get information about a given node","type":"text/plain"},"url":{"path":["api","v2","node",":id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Node ID to get data for.","type":"text/plain"},"type":"any","value":"","key":"id"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get node' (trading-data-service-get-node)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-oracle-spec.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-oracle-spec.api.mdx index 58a485668..b60751df0 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-oracle-spec.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-oracle-spec.api.mdx @@ -5,7 +5,7 @@ description: "Get an oracle spec by ID. Oracle spec IDs can be found by querying sidebar_label: "Get oracle spec" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Oracle spec ID to request data for.","in":"path","name":"oracleSpecId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oracleSpec":{"description":"External data spec matching the ID.","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"title":"Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*","type":"object"}},"title":"Response for a oracle spec","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get an oracle spec by ID. Oracle spec IDs can be found by querying markets that use them as a data source","operationId":"TradingDataService_GetOracleSpec","method":"get","path":"/api/v2/oracle/spec/{oracleSpecId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get oracle spec","description":{"content":"Get an oracle spec by ID. Oracle spec IDs can be found by querying markets that use them as a data source","type":"text/plain"},"url":{"path":["api","v2","oracle","spec",":oracleSpecId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Oracle spec ID to request data for.","type":"text/plain"},"type":"any","value":"","key":"oracleSpecId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Oracle spec ID to request data for.","in":"path","name":"oracleSpecId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oracleSpec":{"description":"External data spec matching the ID.","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"title":"Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*","type":"object"}},"title":"Response for a oracle spec","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get an oracle spec by ID. Oracle spec IDs can be found by querying markets that use them as a data source","operationId":"TradingDataService_GetOracleSpec","method":"get","path":"/api/v2/oracle/spec/{oracleSpecId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get oracle spec","description":{"content":"Get an oracle spec by ID. Oracle spec IDs can be found by querying markets that use them as a data source","type":"text/plain"},"url":{"path":["api","v2","oracle","spec",":oracleSpecId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Oracle spec ID to request data for.","type":"text/plain"},"type":"any","value":"","key":"oracleSpecId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get oracle spec' (trading-data-service-get-oracle-spec)" @@ -75,7 +75,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -142,7 +142,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-order.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-order.api.mdx index 3b8344540..44403ce08 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-order.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-order.api.mdx @@ -5,7 +5,7 @@ description: "Get an order by its ID. An order's ID will be the SHA3-256 hash of sidebar_label: "Get order" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Order ID to retrieve order information for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}},{"description":"Historic version number of the order to return. If not set, the most current version will be returned.","in":"query","name":"version","required":false,"schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"order":{"description":"Order details, if one was found.","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"}},"title":"Response received from the query for getting a single order","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get an order by its ID. An order's ID will be the SHA3-256 hash of the signature that the order was submitted with","operationId":"TradingDataService_GetOrder","method":"get","path":"/api/v2/order/{orderId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get order","description":{"content":"Get an order by its ID. An order's ID will be the SHA3-256 hash of the signature that the order was submitted with","type":"text/plain"},"url":{"path":["api","v2","order",":orderId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Historic version number of the order to return. If not set, the most current version will be returned.","type":"text/plain"},"key":"version","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Order ID to retrieve order information for.","type":"text/plain"},"type":"any","value":"","key":"orderId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Order ID to retrieve order information for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}},{"description":"Historic version number of the order to return. If not set, the most current version will be returned.","in":"query","name":"version","required":false,"schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"order":{"description":"Order details, if one was found.","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"}},"title":"Response received from the query for getting a single order","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get an order by its ID. An order's ID will be the SHA3-256 hash of the signature that the order was submitted with","operationId":"TradingDataService_GetOrder","method":"get","path":"/api/v2/order/{orderId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get order","description":{"content":"Get an order by its ID. An order's ID will be the SHA3-256 hash of the signature that the order was submitted with","type":"text/plain"},"url":{"path":["api","v2","order",":orderId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Historic version number of the order to return. If not set, the most current version will be returned.","type":"text/plain"},"key":"version","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Order ID to retrieve order information for.","type":"text/plain"},"type":"any","value":"","key":"orderId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get order' (trading-data-service-get-order)" @@ -38,7 +38,7 @@ Order details, if one was found. Pegged order details, used only if the order represents a pegged order. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-party-activity-streak.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-party-activity-streak.api.mdx index 6b01aecea..3f3c3e134 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-party-activity-streak.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-party-activity-streak.api.mdx @@ -5,7 +5,7 @@ description: "Get a party's activity across epochs." sidebar_label: "List party activity streak" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party ID to get the activity streak for.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Epoch to get the activity streak for. If not set, the last complete epoch is used.","in":"query","name":"epoch","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"activityStreak":{"description":"Party's activity streak in a given epoch.","properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"title":"The updated activity streak of a party at end of epoch","type":"object"}},"title":"Response when getting a party's activity streaks across epochs","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get a party's activity across epochs.","operationId":"TradingDataService_GetPartyActivityStreak","method":"get","path":"/api/v2/party/activity/streak/{partyId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List party activity streak","description":{"content":"Get a party's activity across epochs.","type":"text/plain"},"url":{"path":["api","v2","party","activity","streak",":partyId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Epoch to get the activity streak for. If not set, the last complete epoch is used.","type":"text/plain"},"key":"epoch","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID to get the activity streak for.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party ID to get the activity streak for.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Epoch to get the activity streak for. If not set, the last complete epoch is used.","in":"query","name":"epoch","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"activityStreak":{"description":"Party's activity streak in a given epoch.","properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"title":"The updated activity streak of a party at end of epoch","type":"object"}},"title":"Response when getting a party's activity streaks across epochs","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get a party's activity across epochs.","operationId":"TradingDataService_GetPartyActivityStreak","method":"get","path":"/api/v2/party/activity/streak/{partyId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List party activity streak","description":{"content":"Get a party's activity across epochs.","type":"text/plain"},"url":{"path":["api","v2","party","activity","streak",":partyId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Epoch to get the activity streak for. If not set, the last complete epoch is used.","type":"text/plain"},"key":"epoch","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID to get the activity streak for.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List party activity streak' (trading-data-service-get-party-activity-streak)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-party.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-party.api.mdx index 288f36eec..15fe106b5 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-party.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-party.api.mdx @@ -5,7 +5,7 @@ description: "Get a single party" sidebar_label: "Get party" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party ID to retrieve party information for.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"party":{"description":"Data for the party requested.","properties":{"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"}},"title":"Response from getting party by ID","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a single party","operationId":"TradingDataService_GetParty","method":"get","path":"/api/v2/party/{partyId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get party","description":{"content":"Get a single party","type":"text/plain"},"url":{"path":["api","v2","party",":partyId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID to retrieve party information for.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party ID to retrieve party information for.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"party":{"description":"Data for the party requested.","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"}},"title":"Response from getting party by ID","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a single party","operationId":"TradingDataService_GetParty","method":"get","path":"/api/v2/party/{partyId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get party","description":{"content":"Get a single party","type":"text/plain"},"url":{"path":["api","v2","party",":partyId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID to retrieve party information for.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get party' (trading-data-service-get-party)" @@ -34,7 +34,12 @@ A successful response. Data for the party requested. -
    +
    metadata object[]
    + +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. + +
  • Array [
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-protocol-upgrade-status.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-protocol-upgrade-status.api.mdx index a51c81f5b..62c2af37b 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-protocol-upgrade-status.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-protocol-upgrade-status.api.mdx @@ -5,7 +5,7 @@ description: "Get status of a protocol upgrade" sidebar_label: "Get protocol upgrade status" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"ready":{"description":"Indicator if the upgrade is ready or not.","type":"boolean"}},"title":"Response from getting protocol upgrade status","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get status of a protocol upgrade","operationId":"TradingDataService_GetProtocolUpgradeStatus","method":"get","path":"/api/v2/upgrade/status","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get protocol upgrade status","description":{"content":"Get status of a protocol upgrade","type":"text/plain"},"url":{"path":["api","v2","upgrade","status"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"ready":{"description":"Indicator if the upgrade is ready or not.","type":"boolean"}},"title":"Response from getting protocol upgrade status","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get status of a protocol upgrade","operationId":"TradingDataService_GetProtocolUpgradeStatus","method":"get","path":"/api/v2/upgrade/status","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get protocol upgrade status","description":{"content":"Get status of a protocol upgrade","type":"text/plain"},"url":{"path":["api","v2","upgrade","status"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get protocol upgrade status' (trading-data-service-get-protocol-upgrade-status)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-referral-set-stats.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-referral-set-stats.api.mdx index 793bfbcf5..1b569c6bb 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-referral-set-stats.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-referral-set-stats.api.mdx @@ -6,7 +6,7 @@ at the latest or a specific epoch. You can also optionally filter for a specific sidebar_label: "Get referral set statistics" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict referral set statistics to those for the given referral set.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get referral set statistics for. If not set, the last complete epoch is used.","in":"query","name":"atEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict referral set statisitcs to those for the given referee.","in":"query","name":"referee","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response containing the volume discount statistics for the given epoch.","properties":{"stats":{"description":"Referral set statistics for the epoch.","properties":{"edges":{"description":"Page of volume discount statistics data and their corresponding cursors.","items":{"description":"Referral set stats data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Referral set stats data.","properties":{"atEpoch":{"description":"Epoch at which the set's statistics were updated.","format":"uint64","type":"string"},"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"description":"Current referee notional taker volume.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Referrer's taker volume","type":"string"},"rewardFactor":{"description":"Reward factor applied to the party.","type":"string"},"rewardsFactorMultiplier":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"},"rewardsMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral rewards due to the referrer.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object","title":"v2ReferralSetStats"}},"type":"object","title":"v2ReferralSetStatsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ReferralSetStatsConnection"}},"type":"object","title":"v2GetReferralSetStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set\nat the latest or a specific epoch. You can also optionally filter for a specific referee's statistics.","operationId":"TradingDataService_GetReferralSetStats","method":"get","path":"/api/v2/referral-sets/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get referral set statistics","description":{"content":"Get the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set\nat the latest or a specific epoch. You can also optionally filter for a specific referee's statistics.","type":"text/plain"},"url":{"path":["api","v2","referral-sets","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict referral set statistics to those for the given referral set.","type":"text/plain"},"key":"referralSetId","value":""},{"disabled":false,"description":{"content":"Epoch to get referral set statistics for. If not set, the last complete epoch is used.","type":"text/plain"},"key":"atEpoch","value":""},{"disabled":false,"description":{"content":"Restrict referral set statisitcs to those for the given referee.","type":"text/plain"},"key":"referee","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict referral set statistics to those for the given referral set.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get referral set statistics for. If not set, the last complete epoch is used.","in":"query","name":"atEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict referral set statistics to those for the given referee.","in":"query","name":"referee","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response containing the volume discount statistics for the given epoch.","properties":{"stats":{"description":"Referral set statistics for the epoch.","properties":{"edges":{"description":"Page of volume discount statistics data and their corresponding cursors.","items":{"description":"Referral set stats data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Referral set stats data.","properties":{"atEpoch":{"description":"Epoch at which the set's statistics were updated.","format":"uint64","type":"string"},"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"description":"Current referee notional taker volume.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Referrer's taker volume","type":"string"},"rewardFactor":{"description":"Reward factor applied to the party.","type":"string"},"rewardsFactorMultiplier":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"},"rewardsMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral rewards due to the referrer.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object","title":"v2ReferralSetStats"}},"type":"object","title":"v2ReferralSetStatsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ReferralSetStatsConnection"}},"type":"object","title":"v2GetReferralSetStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set\nat the latest or a specific epoch. You can also optionally filter for a specific referee's statistics.","operationId":"TradingDataService_GetReferralSetStats","method":"get","path":"/api/v2/referral-sets/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get referral set statistics","description":{"content":"Get the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set\nat the latest or a specific epoch. You can also optionally filter for a specific referee's statistics.","type":"text/plain"},"url":{"path":["api","v2","referral-sets","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict referral set statistics to those for the given referral set.","type":"text/plain"},"key":"referralSetId","value":""},{"disabled":false,"description":{"content":"Epoch to get referral set statistics for. If not set, the last complete epoch is used.","type":"text/plain"},"key":"atEpoch","value":""},{"disabled":false,"description":{"content":"Restrict referral set statistics to those for the given referee.","type":"text/plain"},"key":"referee","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get referral set statistics' (trading-data-service-get-referral-set-stats)" @@ -28,7 +28,7 @@ import TabItem from "@theme/TabItem"; Get the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set at the latest or a specific epoch. You can also optionally filter for a specific referee's statistics. -
    Query Parameters
    +
    Query Parameters
    A successful response. diff --git a/docs/api/rest/data-v2/trading-data-service-get-risk-factors.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-risk-factors.api.mdx index 0b3a9969b..e6e0faabb 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-risk-factors.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-risk-factors.api.mdx @@ -5,7 +5,7 @@ description: "Get risk factor data for a given market" sidebar_label: "Get risk factors" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to get the risk factor for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"riskFactor":{"description":"Risk factor emitted by the risk model for a given market.","properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"title":"Risk factors are used to calculate the current risk associated with orders trading on a given market","type":"object"}},"title":"Response that is received from getting a risk factor","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get risk factor data for a given market","operationId":"TradingDataService_GetRiskFactors","method":"get","path":"/api/v2/market/{marketId}/risk/factors","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get risk factors","description":{"content":"Get risk factor data for a given market","type":"text/plain"},"url":{"path":["api","v2","market",":marketId","risk","factors"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to get the risk factor for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to get the risk factor for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"riskFactor":{"description":"Risk factor emitted by the risk model for a given market.","properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"title":"Risk factors are used to calculate the current risk associated with orders trading on a given market","type":"object"}},"title":"Response that is received from getting a risk factor","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get risk factor data for a given market","operationId":"TradingDataService_GetRiskFactors","method":"get","path":"/api/v2/market/{marketId}/risk/factors","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get risk factors","description":{"content":"Get risk factor data for a given market","type":"text/plain"},"url":{"path":["api","v2","market",":marketId","risk","factors"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to get the risk factor for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get risk factors' (trading-data-service-get-risk-factors)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-stake.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-stake.api.mdx index cbeda6d0d..a3985c0f9 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-stake.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-stake.api.mdx @@ -5,7 +5,7 @@ description: "Get staking information for a given party" sidebar_label: "Get stake" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party ID for which the stake information is requested.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"currentStakeAvailable":{"description":"Current stake available information.","type":"string"},"stakeLinkings":{"description":"Paged list of stake data with corresponding page information.","properties":{"edges":{"description":"Page of stake data and their corresponding cursors.","items":{"description":"Stake linking data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Stake linking represent the intent from a party to deposit.","properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"title":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","type":"object"}},"type":"object","title":"v2StakeLinkingEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2StakesConnection"}},"title":"Response that is received from requesting stake information","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get staking information for a given party","operationId":"TradingDataService_GetStake","method":"get","path":"/api/v2/parties/{partyId}/stake","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get stake","description":{"content":"Get staking information for a given party","type":"text/plain"},"url":{"path":["api","v2","parties",":partyId","stake"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID for which the stake information is requested.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party ID for which the stake information is requested.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"currentStakeAvailable":{"description":"Current stake available information.","type":"string"},"stakeLinkings":{"description":"Paged list of stake data with corresponding page information.","properties":{"edges":{"description":"Page of stake data and their corresponding cursors.","items":{"description":"Stake linking data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Stake linking represent the intent from a party to deposit.","properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"title":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","type":"object"}},"type":"object","title":"v2StakeLinkingEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2StakesConnection"}},"title":"Response that is received from requesting stake information","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get staking information for a given party","operationId":"TradingDataService_GetStake","method":"get","path":"/api/v2/parties/{partyId}/stake","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get stake","description":{"content":"Get staking information for a given party","type":"text/plain"},"url":{"path":["api","v2","parties",":partyId","stake"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID for which the stake information is requested.","type":"text/plain"},"type":"any","value":"","key":"partyId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get stake' (trading-data-service-get-stake)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-stop-order.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-stop-order.api.mdx index 7cafc5a47..05be74bae 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-stop-order.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-stop-order.api.mdx @@ -6,7 +6,7 @@ A stop order's ID is likely to be different from the ID of the order that will b sidebar_label: "Get stop order" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Order ID to retrieve order information for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response received from the query for getting a single stop order.","properties":{"order":{"description":"Order details, if one was found.","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION"],"type":"string"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object","title":"v1StopOrderEvent"}},"type":"object","title":"v2GetStopOrderResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a stop order by its ID. A stop order's ID will be the SHA3-256 hash of the signature that the order was submitted with.\nA stop order's ID is likely to be different from the ID of the order that will be submitted when the stop is triggered.","operationId":"TradingDataService_GetStopOrder","method":"get","path":"/api/v2/stoporder/{orderId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get stop order","description":{"content":"Get a stop order by its ID. A stop order's ID will be the SHA3-256 hash of the signature that the order was submitted with.\nA stop order's ID is likely to be different from the ID of the order that will be submitted when the stop is triggered.","type":"text/plain"},"url":{"path":["api","v2","stoporder",":orderId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Order ID to retrieve order information for.","type":"text/plain"},"type":"any","value":"","key":"orderId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Order ID to retrieve order information for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response received from the query for getting a single stop order.","properties":{"order":{"description":"Order details, if one was found.","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION","REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION","REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES"],"type":"string"},"sizeOverrideSetting":{"title":"Size override setting","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"Size override value","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object","title":"v1StopOrderEvent"}},"type":"object","title":"v2GetStopOrderResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a stop order by its ID. A stop order's ID will be the SHA3-256 hash of the signature that the order was submitted with.\nA stop order's ID is likely to be different from the ID of the order that will be submitted when the stop is triggered.","operationId":"TradingDataService_GetStopOrder","method":"get","path":"/api/v2/stoporder/{orderId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get stop order","description":{"content":"Get a stop order by its ID. A stop order's ID will be the SHA3-256 hash of the signature that the order was submitted with.\nA stop order's ID is likely to be different from the ID of the order that will be submitted when the stop is triggered.","type":"text/plain"},"url":{"path":["api","v2","stoporder",":orderId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Order ID to retrieve order information for.","type":"text/plain"},"type":"any","value":"","key":"orderId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get stop order' (trading-data-service-get-stop-order)" @@ -36,7 +36,7 @@ A successful response. Order details, if one was found. -
    stopOrder object
    submission object
    +
    stopOrder object
    sizeOverrideValue object
    submission object
    A command that submits an order to the Vega network for a given market. @@ -48,7 +48,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-total-transfer-fee-discount.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-total-transfer-fee-discount.api.mdx new file mode 100644 index 000000000..1ce97ee85 --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-get-total-transfer-fee-discount.api.mdx @@ -0,0 +1,41 @@ +--- +id: trading-data-service-get-total-transfer-fee-discount +title: "Available transfer fee discount" +description: "Returns available per party per asset transfer discount" +sidebar_label: "Available transfer fee discount" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"ID of party eligible for the discount.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"ID of asset to associated with the discount.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"totalDiscount":{"description":"Total per party per asset discount available.","type":"string"}},"title":"Returns total transfer fee discount available","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Returns available per party per asset transfer discount","operationId":"TradingDataService_GetTotalTransferFeeDiscount","method":"get","path":"/api/v2/transfers/total-fee-discount","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Available transfer fee discount","description":{"content":"Returns available per party per asset transfer discount","type":"text/plain"},"url":{"path":["api","v2","transfers","total-fee-discount"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"ID of party eligible for the discount.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"ID of asset to associated with the discount.","type":"text/plain"},"key":"assetId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Available transfer fee discount' (trading-data-service-get-total-transfer-fee-discount)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## Available transfer fee discount + + + +Returns available per party per asset transfer discount + +
    Query Parameters
    + +A successful response. + +
    Schema
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-get-transfer.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-transfer.api.mdx index 74963bbb0..9e9bdb1be 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-transfer.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-transfer.api.mdx @@ -5,7 +5,7 @@ description: "Get a specific transfer by ID" sidebar_label: "Get transfer by ID" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Transfer ID to request data for.","in":"path","name":"transferId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"fees":{"description":"Fees paid for this transfer.","items":{"properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"type":"array"},"transfer":{"description":"Transfer requested by ID.","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaeventsv1Transfer"}},"title":"Response that is received when querying transfers by ID","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Get a specific transfer by ID","operationId":"TradingDataService_GetTransfer","method":"get","path":"/api/v2/transfer/{transferId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get transfer by ID","description":{"content":"Get a specific transfer by ID","type":"text/plain"},"url":{"path":["api","v2","transfer",":transferId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Transfer ID to request data for.","type":"text/plain"},"type":"any","value":"","key":"transferId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Transfer ID to request data for.","in":"path","name":"transferId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"transferNode":{"description":"Transfer and its fees requested by ID.","properties":{"fees":{"description":"Fees paid for this transfer.","items":{"properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"discountApplied":{"description":"Amount that was subtracted from the transfer fee based on available discounts.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"type":"array"},"transfer":{"description":"Data relating to a transfer that has been made.","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"gameId":{"title":"ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaeventsv1Transfer"}},"type":"object","title":"v2TransferNode"}},"title":"Response that is received when querying transfers by ID","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Get a specific transfer by ID","operationId":"TradingDataService_GetTransfer","method":"get","path":"/api/v2/transfer/{transferId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get transfer by ID","description":{"content":"Get a specific transfer by ID","type":"text/plain"},"url":{"path":["api","v2","transfer",":transferId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Transfer ID to request data for.","type":"text/plain"},"type":"any","value":"","key":"transferId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get transfer by ID' (trading-data-service-get-transfer)" @@ -30,15 +30,19 @@ Get a specific transfer by ID A successful response. -
    Schema
      fees object[]
      +
      Schema
        transferNode object
        + +Transfer and its fees requested by ID. + +
        fees object[]
        Fees paid for this transfer. -
      • Array [
      • ]
      • transfer object
        +
      • Array [
      • ]
      • transfer object
        -Transfer requested by ID. +Data relating to a transfer that has been made. -
        oneOff object
        oneOffGovernance object
        recurring object
        dispatchStrategy object
        rankTable object[]
        +
        oneOff object
        oneOffGovernance object
        recurring object
        dispatchStrategy object
        rankTable object[]
        Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. @@ -46,7 +50,7 @@ Ordered list, using start rank, defining the rank bands and share ratio for each Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
      • Array [
      • ]
      +
    • Array [
    • ]
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-get-vega-time.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-vega-time.api.mdx index a945b71b6..dcb08450c 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-vega-time.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-vega-time.api.mdx @@ -5,7 +5,7 @@ description: "Get the current time of the network in Unix nanoseconds" sidebar_label: "Get Vega time" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"timestamp":{"description":"Timestamp representation of current VegaTime as represented in Unix nanoseconds, for example\n`1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`.","format":"int64","type":"string"}},"title":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get the current time of the network in Unix nanoseconds","operationId":"TradingDataService_GetVegaTime","method":"get","path":"/api/v2/vega/time","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get Vega time","description":{"content":"Get the current time of the network in Unix nanoseconds","type":"text/plain"},"url":{"path":["api","v2","vega","time"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"timestamp":{"description":"Timestamp representation of current VegaTime as represented in Unix nanoseconds, for example\n`1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`.","format":"int64","type":"string"}},"title":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get the current time of the network in Unix nanoseconds","operationId":"TradingDataService_GetVegaTime","method":"get","path":"/api/v2/vega/time","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get Vega time","description":{"content":"Get the current time of the network in Unix nanoseconds","type":"text/plain"},"url":{"path":["api","v2","vega","time"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get Vega time' (trading-data-service-get-vega-time)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-volume-discount-stats.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-volume-discount-stats.api.mdx index f331fb1a4..65f57e866 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-volume-discount-stats.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-volume-discount-stats.api.mdx @@ -5,7 +5,7 @@ description: "Get the information about a party's running traded volume, and the sidebar_label: "Get volume discount statistics" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Epoch to get volume discount statistics for. If not set, last epoch is used.","in":"query","name":"atEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict volume discount statistics to those for the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response containing the volume discount statistics for the given epoch.","properties":{"stats":{"description":"Volume discount statistics for an epoch.","properties":{"edges":{"description":"Page of volume discount statistics data and their corresponding cursors.","items":{"description":"Volume discount stats data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Volume discount stats data.","properties":{"atEpoch":{"description":"Epoch at which the statistics apply.","format":"uint64","type":"string"},"discountFactor":{"description":"Discount factor applied given the party's running volume.","type":"string"},"partyId":{"description":"Party ID for which the statistics apply.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object","title":"v2VolumeDiscountStats"}},"type":"object","title":"v2VolumeDiscountStatsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2VolumeDiscountStatsConnection"}},"type":"object","title":"v2GetVolumeDiscountStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Volume discount program"],"description":"Get the information about a party's running traded volume, and the discount factor it earns them.","operationId":"TradingDataService_GetVolumeDiscountStats","method":"get","path":"/api/v2/volume-discount-programs/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get volume discount statistics","description":{"content":"Get the information about a party's running traded volume, and the discount factor it earns them.","type":"text/plain"},"url":{"path":["api","v2","volume-discount-programs","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Epoch to get volume discount statistics for. If not set, last epoch is used.","type":"text/plain"},"key":"atEpoch","value":""},{"disabled":false,"description":{"content":"Restrict volume discount statistics to those for the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Epoch to get volume discount statistics for. If not set, last epoch is used.","in":"query","name":"atEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict volume discount statistics to those for the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response containing the volume discount statistics for the given epoch.","properties":{"stats":{"description":"Volume discount statistics for an epoch.","properties":{"edges":{"description":"Page of volume discount statistics data and their corresponding cursors.","items":{"description":"Volume discount stats data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Volume discount stats data.","properties":{"atEpoch":{"description":"Epoch at which the statistics apply.","format":"uint64","type":"string"},"discountFactor":{"description":"Discount factor applied given the party's running volume.","type":"string"},"partyId":{"description":"Party ID for which the statistics apply.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object","title":"v2VolumeDiscountStats"}},"type":"object","title":"v2VolumeDiscountStatsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2VolumeDiscountStatsConnection"}},"type":"object","title":"v2GetVolumeDiscountStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Volume discount program"],"description":"Get the information about a party's running traded volume, and the discount factor it earns them.","operationId":"TradingDataService_GetVolumeDiscountStats","method":"get","path":"/api/v2/volume-discount-programs/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get volume discount statistics","description":{"content":"Get the information about a party's running traded volume, and the discount factor it earns them.","type":"text/plain"},"url":{"path":["api","v2","volume-discount-programs","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Epoch to get volume discount statistics for. If not set, last epoch is used.","type":"text/plain"},"key":"atEpoch","value":""},{"disabled":false,"description":{"content":"Restrict volume discount statistics to those for the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get volume discount statistics' (trading-data-service-get-volume-discount-stats)" diff --git a/docs/api/rest/data-v2/trading-data-service-get-withdrawal.api.mdx b/docs/api/rest/data-v2/trading-data-service-get-withdrawal.api.mdx index 71d17b36c..989fcbc3a 100644 --- a/docs/api/rest/data-v2/trading-data-service-get-withdrawal.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-get-withdrawal.api.mdx @@ -5,7 +5,7 @@ description: "Get a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 sidebar_label: "Get withdrawal" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Withdrawal ID to retrieve data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"withdrawal":{"description":"Withdrawal matching the ID from the request.","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"title":"Withdrawal from the Vega network","type":"object"}},"title":"Response for a withdrawal request","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 hash of the signature that the withdrawal was submitted with","operationId":"TradingDataService_GetWithdrawal","method":"get","path":"/api/v2/withdrawal/{id}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Get withdrawal","description":{"content":"Get a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 hash of the signature that the withdrawal was submitted with","type":"text/plain"},"url":{"path":["api","v2","withdrawal",":id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Withdrawal ID to retrieve data for.","type":"text/plain"},"type":"any","value":"","key":"id"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Withdrawal ID to retrieve data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"withdrawal":{"description":"Withdrawal matching the ID from the request.","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"title":"Withdrawal from the Vega network","type":"object"}},"title":"Response for a withdrawal request","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 hash of the signature that the withdrawal was submitted with","operationId":"TradingDataService_GetWithdrawal","method":"get","path":"/api/v2/withdrawal/{id}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get withdrawal","description":{"content":"Get a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 hash of the signature that the withdrawal was submitted with","type":"text/plain"},"url":{"path":["api","v2","withdrawal",":id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Withdrawal ID to retrieve data for.","type":"text/plain"},"type":"any","value":"","key":"id"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get withdrawal' (trading-data-service-get-withdrawal)" diff --git a/docs/api/rest/data-v2/trading-data-service-info.api.mdx b/docs/api/rest/data-v2/trading-data-service-info.api.mdx index b1839497e..313ff6736 100644 --- a/docs/api/rest/data-v2/trading-data-service-info.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-info.api.mdx @@ -6,7 +6,7 @@ Response contains a semver formatted version of the data node and the commit has sidebar_label: "Data node information" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"commitHash":{"description":"Commit hash from which the data node was built.","type":"string"},"version":{"description":"Semver formatted version of the data node.","type":"string"}},"title":"Response that is received from the node information query","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Node information"],"description":"Get information about the data node.\nResponse contains a semver formatted version of the data node and the commit hash, from which the data node was built","operationId":"TradingDataService_Info","method":"get","path":"/api/v2/info","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Data node information","description":{"content":"Get information about the data node.\nResponse contains a semver formatted version of the data node and the commit hash, from which the data node was built","type":"text/plain"},"url":{"path":["api","v2","info"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"commitHash":{"description":"Commit hash from which the data node was built.","type":"string"},"version":{"description":"Semver formatted version of the data node.","type":"string"}},"title":"Response that is received from the node information query","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Node information"],"description":"Get information about the data node.\nResponse contains a semver formatted version of the data node and the commit hash, from which the data node was built","operationId":"TradingDataService_Info","method":"get","path":"/api/v2/info","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Data node information","description":{"content":"Get information about the data node.\nResponse contains a semver formatted version of the data node and the commit hash, from which the data node was built","type":"text/plain"},"url":{"path":["api","v2","info"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Data node information' (trading-data-service-info)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-accounts.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-accounts.api.mdx index 3d5009a72..46ca61b87 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-accounts.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-accounts.api.mdx @@ -6,7 +6,7 @@ If a given account has never had a balance, it will be absent from the list." sidebar_label: "List accounts" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","explode":true,"in":"query","name":"filter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is received from listing accounts query.","properties":{"accounts":{"description":"Page of accounts data and corresponding page information.","properties":{"edges":{"description":"Page of accounts data and their corresponding cursors.","items":{"description":"Account data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages with reference to this account.","type":"string"},"node":{"description":"Account balance data.","properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","type":"string"},"marketId":{"description":"Market ID for the account, this field will be empty if the asset is in a general account.","type":"string"},"owner":{"description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","type":"string"},"type":{"description":"Account type of this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","type":"object"}},"type":"object","title":"v2AccountEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2AccountsConnection"}},"type":"object","title":"v2ListAccountsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Get a list of accounts matching the supplied filter, including their current balances.\nIf a given account has never had a balance, it will be absent from the list.","operationId":"TradingDataService_ListAccounts","method":"get","path":"/api/v2/accounts","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List accounts","description":{"content":"Get a list of accounts matching the supplied filter, including their current balances.\nIf a given account has never had a balance, it will be absent from the list.","type":"text/plain"},"url":{"path":["api","v2","accounts"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","type":"text/plain"},"key":"filter.accountTypes","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is received from listing accounts query.","properties":{"accounts":{"description":"Page of accounts data and corresponding page information.","properties":{"edges":{"description":"Page of accounts data and their corresponding cursors.","items":{"description":"Account data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages with reference to this account.","type":"string"},"node":{"description":"Account balance data.","properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","type":"string"},"marketId":{"description":"Market ID for the account, this field will be empty if the asset is in a general account.","type":"string"},"owner":{"description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","type":"string"},"type":{"description":"Account type of this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","type":"object"}},"type":"object","title":"v2AccountEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2AccountsConnection"}},"type":"object","title":"v2ListAccountsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Get a list of accounts matching the supplied filter, including their current balances.\nIf a given account has never had a balance, it will be absent from the list.","operationId":"TradingDataService_ListAccounts","method":"get","path":"/api/v2/accounts","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List accounts","description":{"content":"Get a list of accounts matching the supplied filter, including their current balances.\nIf a given account has never had a balance, it will be absent from the list.","type":"text/plain"},"url":{"path":["api","v2","accounts"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","type":"text/plain"},"key":"filter.accountTypes","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List accounts' (trading-data-service-list-accounts)" @@ -28,7 +28,7 @@ import TabItem from "@theme/TabItem"; Get a list of accounts matching the supplied filter, including their current balances. If a given account has never had a balance, it will be absent from the list. -
    Query Parameters
    +
    Query Parameters
    A successful response. @@ -44,7 +44,7 @@ Page of accounts data and their corresponding cursors. Account balance data. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. diff --git a/docs/api/rest/data-v2/trading-data-service-list-all-liquidity-provisions.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-all-liquidity-provisions.api.mdx index 16212449e..61513779a 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-all-liquidity-provisions.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-all-liquidity-provisions.api.mdx @@ -6,7 +6,7 @@ in the event that a provision has been updated by the provider but the updated p sidebar_label: "List liquidity provisions" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict liquidity provisions to those placed on the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those placed by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those with the given order reference.","in":"query","name":"reference","required":false,"schema":{"type":"string"}},{"description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","in":"query","name":"live","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"liquidityProvisions":{"description":"Page of liquidity provisions data and corresponding page information.","properties":{"edges":{"description":"Page of liquidity provisions data and their corresponding cursors.","items":{"description":"Liquidity provision data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data corresponding to a liquidity provider's commitment.","properties":{"current":{"description":"Liquidity provision that is currently live.","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"},"pending":{"description":"Liquidity provision that is currently pending and will go live in the next epoch.","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"}},"type":"object","title":"apiv2LiquidityProvision"}},"type":"object","title":"v2LiquidityProvisionWithPendingEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used to fetch further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of liquidity provisions data and corresponding page information","type":"object"}},"title":"Response from listing liquidity provisions","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"Get a list of liquidity provisions for a given market. This API returns a current and pending liquidity provision\nin the event that a provision has been updated by the provider but the updated provision will not be active until the next epoch.","operationId":"TradingDataService_ListAllLiquidityProvisions","method":"get","path":"/api/v2/liquidity/all-provisions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List liquidity provisions","description":{"content":"Get a list of liquidity provisions for a given market. This API returns a current and pending liquidity provision\nin the event that a provision has been updated by the provider but the updated provision will not be active until the next epoch.","type":"text/plain"},"url":{"path":["api","v2","liquidity","all-provisions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed on the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those with the given order reference.","type":"text/plain"},"key":"reference","value":""},{"disabled":false,"description":{"content":"Whether to include live liquidity provisions. If not set, live orders will not be included.","type":"text/plain"},"key":"live","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict liquidity provisions to those placed on the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those placed by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those with the given order reference.","in":"query","name":"reference","required":false,"schema":{"type":"string"}},{"description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","in":"query","name":"live","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"liquidityProvisions":{"description":"Page of liquidity provisions data and corresponding page information.","properties":{"edges":{"description":"Page of liquidity provisions data and their corresponding cursors.","items":{"description":"Liquidity provision data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data corresponding to a liquidity provider's commitment.","properties":{"current":{"description":"Liquidity provision that is currently live.","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"},"pending":{"description":"Liquidity provision that is currently pending and will go live in the next epoch.","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"}},"type":"object","title":"apiv2LiquidityProvision"}},"type":"object","title":"v2LiquidityProvisionWithPendingEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used to fetch further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of liquidity provisions data and corresponding page information","type":"object"}},"title":"Response from listing liquidity provisions","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"Get a list of liquidity provisions for a given market. This API returns a current and pending liquidity provision\nin the event that a provision has been updated by the provider but the updated provision will not be active until the next epoch.","operationId":"TradingDataService_ListAllLiquidityProvisions","method":"get","path":"/api/v2/liquidity/all-provisions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List liquidity provisions","description":{"content":"Get a list of liquidity provisions for a given market. This API returns a current and pending liquidity provision\nin the event that a provision has been updated by the provider but the updated provision will not be active until the next epoch.","type":"text/plain"},"url":{"path":["api","v2","liquidity","all-provisions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed on the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those with the given order reference.","type":"text/plain"},"key":"reference","value":""},{"disabled":false,"description":{"content":"Whether to include live liquidity provisions. If not set, live orders will not be included.","type":"text/plain"},"key":"live","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List liquidity provisions' (trading-data-service-list-all-liquidity-provisions)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-all-network-history-segments.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-all-network-history-segments.api.mdx index d9c64513b..2fd6303fa 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-all-network-history-segments.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-all-network-history-segments.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all history segments stored by the data node current sidebar_label: "List all network history segments" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"segments":{"description":"Page of history segments data and corresponding page information.","items":{"properties":{"chainId":{"description":"Chain ID of the history segment.","type":"string"},"databaseVersion":{"description":"Database schema version of the history segment.","format":"int64","type":"string"},"fromHeight":{"description":"Starting height of the history segment.","format":"int64","type":"string"},"historySegmentId":{"description":"History segment ID.","type":"string"},"previousHistorySegmentId":{"description":"Previous history segment ID.","type":"string"},"toHeight":{"description":"Ending height of the history segment.","format":"int64","type":"string"}},"title":"Describes a network history segment","type":"object"},"type":"array"}},"title":"Response with a list of all the nodes history segments","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get a list of all history segments stored by the data node currently connected to","operationId":"TradingDataService_ListAllNetworkHistorySegments","method":"get","path":"/api/v2/networkhistory/segments","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List all network history segments","description":{"content":"Get a list of all history segments stored by the data node currently connected to","type":"text/plain"},"url":{"path":["api","v2","networkhistory","segments"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"segments":{"description":"Page of history segments data and corresponding page information.","items":{"properties":{"chainId":{"description":"Chain ID of the history segment.","type":"string"},"databaseVersion":{"description":"Database schema version of the history segment.","format":"int64","type":"string"},"fromHeight":{"description":"Starting height of the history segment.","format":"int64","type":"string"},"historySegmentId":{"description":"History segment ID.","type":"string"},"previousHistorySegmentId":{"description":"Previous history segment ID.","type":"string"},"toHeight":{"description":"Ending height of the history segment.","format":"int64","type":"string"}},"title":"Describes a network history segment","type":"object"},"type":"array"}},"title":"Response with a list of all the nodes history segments","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get a list of all history segments stored by the data node currently connected to","operationId":"TradingDataService_ListAllNetworkHistorySegments","method":"get","path":"/api/v2/networkhistory/segments","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List all network history segments","description":{"content":"Get a list of all history segments stored by the data node currently connected to","type":"text/plain"},"url":{"path":["api","v2","networkhistory","segments"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List all network history segments' (trading-data-service-list-all-network-history-segments)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-all-positions.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-all-positions.api.mdx index 9ae3f7787..a2bd0f777 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-all-positions.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-all-positions.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all of a party's positions" sidebar_label: "List positions" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict positions to those related to the given parties.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict positions to those on the given markets.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"positions":{"description":"Page of positions data and corresponding page information.","properties":{"edges":{"description":"Page of positions data and their corresponding cursors.","items":{"description":"Position data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Position data for a party on a market.","properties":{"averageEntryPrice":{"description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"lossSocialisationAmount":{"description":"Sum of profit that could not be paid due to loss socialisation.","type":"string"},"marketId":{"description":"Market ID in which the position is held.","type":"string"},"openVolume":{"description":"Open volume for the position, value is signed +ve for long and -ve for short.","format":"int64","type":"string"},"partyId":{"description":"Party ID holding the position.","type":"string"},"positionStatus":{"description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out.","default":"POSITION_STATUS_UNSPECIFIED","enum":["POSITION_STATUS_UNSPECIFIED","POSITION_STATUS_ORDERS_CLOSED","POSITION_STATUS_CLOSED_OUT","POSITION_STATUS_DISTRESSED"],"title":"Represents the status of a position","type":"string"},"realisedPnl":{"description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"unrealisedPnl":{"description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"updatedAt":{"description":"Timestamp for the latest time the position was updated.","format":"int64","type":"string"}},"title":"Represents position data for a party on the specified market on Vega","type":"object"}},"type":"object","title":"v2PositionEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of positions and corresponding page information","type":"object"}},"title":"Response to query for listing of positions, given the filter is supplied","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Get a list of all of a party's positions","operationId":"TradingDataService_ListAllPositions","method":"get","path":"/api/v2/positions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List positions","description":{"content":"Get a list of all of a party's positions","type":"text/plain"},"url":{"path":["api","v2","positions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict positions to those related to the given parties.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict positions to those on the given markets.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict positions to those related to the given parties.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict positions to those on the given markets.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"positions":{"description":"Page of positions data and corresponding page information.","properties":{"edges":{"description":"Page of positions data and their corresponding cursors.","items":{"description":"Position data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Position data for a party on a market.","properties":{"averageEntryPrice":{"description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"lossSocialisationAmount":{"description":"Sum of profit that could not be paid due to loss socialisation.","type":"string"},"marketId":{"description":"Market ID in which the position is held.","type":"string"},"openVolume":{"description":"Open volume for the position, value is signed +ve for long and -ve for short.","format":"int64","type":"string"},"partyId":{"description":"Party ID holding the position.","type":"string"},"positionStatus":{"description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out.","default":"POSITION_STATUS_UNSPECIFIED","enum":["POSITION_STATUS_UNSPECIFIED","POSITION_STATUS_ORDERS_CLOSED","POSITION_STATUS_CLOSED_OUT","POSITION_STATUS_DISTRESSED"],"title":"Represents the status of a position","type":"string"},"realisedPnl":{"description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"unrealisedPnl":{"description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"updatedAt":{"description":"Timestamp for the latest time the position was updated.","format":"int64","type":"string"}},"title":"Represents position data for a party on the specified market on Vega","type":"object"}},"type":"object","title":"v2PositionEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of positions and corresponding page information","type":"object"}},"title":"Response to query for listing of positions, given the filter is supplied","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Get a list of all of a party's positions","operationId":"TradingDataService_ListAllPositions","method":"get","path":"/api/v2/positions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List positions","description":{"content":"Get a list of all of a party's positions","type":"text/plain"},"url":{"path":["api","v2","positions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict positions to those related to the given parties.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict positions to those on the given markets.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List positions' (trading-data-service-list-all-positions)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-assets.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-assets.api.mdx index 3d018b423..d1680d2bf 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-assets.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-assets.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of assets available on the Vega network" sidebar_label: "List assets" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Optional asset ID to list data for.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assets":{"description":"Page of assets data and corresponding page information.","properties":{"edges":{"description":"Page of assets data and their corresponding cursors.","items":{"description":"Assets data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Asset data returned.","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"type":"object","title":"v2AssetEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of asset data and corresponding page information","type":"object"}},"title":"Response from listing assets","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of assets available on the Vega network","operationId":"TradingDataService_ListAssets","method":"get","path":"/api/v2/assets","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List assets","description":{"content":"Get a list of assets available on the Vega network","type":"text/plain"},"url":{"path":["api","v2","assets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Optional asset ID to list data for.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Optional asset ID to list data for.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assets":{"description":"Page of assets data and corresponding page information.","properties":{"edges":{"description":"Page of assets data and their corresponding cursors.","items":{"description":"Assets data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Asset data returned.","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"type":"object","title":"v2AssetEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of asset data and corresponding page information","type":"object"}},"title":"Response from listing assets","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of assets available on the Vega network","operationId":"TradingDataService_ListAssets","method":"get","path":"/api/v2/assets","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List assets","description":{"content":"Get a list of assets available on the Vega network","type":"text/plain"},"url":{"path":["api","v2","assets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Optional asset ID to list data for.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List assets' (trading-data-service-list-assets)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-balance-changes.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-balance-changes.api.mdx index f4d9a4053..4a5dd58fb 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-balance-changes.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-balance-changes.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of the changes in account balances over a period of tim sidebar_label: "List balance changes" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","explode":true,"in":"query","name":"filter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is received from querying balances changes.","properties":{"balances":{"description":"Page of aggregated balances data and corresponding page information.","properties":{"edges":{"description":"Page of aggregated balance data and their corresponding cursors.","items":{"description":"Aggregated balance data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Balance of the set of requested accounts.","properties":{"accountType":{"description":"If grouping by account type, the account type.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"assetId":{"description":"If grouping by asset, the asset ID.","type":"string"},"balance":{"description":"Balance of the set of requested accounts at the time above.","type":"string"},"marketId":{"title":"If grouping by market, the market ID","type":"string"},"partyId":{"description":"If grouping by party, the party ID.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of the block in which the balance exists.","format":"int64","type":"string"}},"title":"AggregatedBalance data contains the balance of the set of requested accounts combined with corresponding\nparty ID, market ID and account type details","type":"object"}},"type":"object","title":"v2AggregatedBalanceEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of aggregated balance objects and corresponding page information","type":"object"}},"type":"object","title":"v2ListBalanceChangesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Get a list of the changes in account balances over a period of time.","operationId":"TradingDataService_ListBalanceChanges","method":"get","path":"/api/v2/balance/changes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List balance changes","description":{"content":"Get a list of the changes in account balances over a period of time.","type":"text/plain"},"url":{"path":["api","v2","balance","changes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","type":"text/plain"},"key":"filter.accountTypes","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is received from querying balances changes.","properties":{"balances":{"description":"Page of aggregated balances data and corresponding page information.","properties":{"edges":{"description":"Page of aggregated balance data and their corresponding cursors.","items":{"description":"Aggregated balance data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Balance of the set of requested accounts.","properties":{"accountType":{"description":"If grouping by account type, the account type.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"assetId":{"description":"If grouping by asset, the asset ID.","type":"string"},"balance":{"description":"Balance of the set of requested accounts at the time above.","type":"string"},"marketId":{"title":"If grouping by market, the market ID","type":"string"},"partyId":{"description":"If grouping by party, the party ID.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of the block in which the balance exists.","format":"int64","type":"string"}},"title":"AggregatedBalance data contains the balance of the set of requested accounts combined with corresponding\nparty ID, market ID and account type details","type":"object"}},"type":"object","title":"v2AggregatedBalanceEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of aggregated balance objects and corresponding page information","type":"object"}},"type":"object","title":"v2ListBalanceChangesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Get a list of the changes in account balances over a period of time.","operationId":"TradingDataService_ListBalanceChanges","method":"get","path":"/api/v2/balance/changes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List balance changes","description":{"content":"Get a list of the changes in account balances over a period of time.","type":"text/plain"},"url":{"path":["api","v2","balance","changes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","type":"text/plain"},"key":"filter.accountTypes","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List balance changes' (trading-data-service-list-balance-changes)" @@ -26,7 +26,7 @@ import TabItem from "@theme/TabItem"; Get a list of the changes in account balances over a period of time. -
    Query Parameters
    +
    Query Parameters
    A successful response. @@ -42,7 +42,7 @@ Page of aggregated balance data and their corresponding cursors. Balance of the set of requested accounts. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. diff --git a/docs/api/rest/data-v2/trading-data-service-list-candle-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-candle-data.api.mdx index e9e49cd20..da62e2695 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-candle-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-candle-data.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of candle data for a given candle ID. Candle IDs can be sidebar_label: "List candle data" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Candle ID to retrieve candle data for.","in":"query","name":"candleId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds to retrieve candles from.","in":"query","name":"fromTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds to retrieve candles to.","in":"query","name":"toTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"candles":{"description":"Page of candle data and corresponding page information.","properties":{"edges":{"description":"Page of candle data items and their corresponding cursors.","items":{"description":"Candle data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Candlestick data, i.e. high, low, open, and closing prices for an interval of trading.","properties":{"close":{"description":"Closing trade price.","type":"string"},"high":{"description":"Highest price for trading during the candle interval.","type":"string"},"lastUpdate":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was last updated.","format":"int64","type":"string"},"low":{"description":"Lowest price for trading during the candle interval.","type":"string"},"notional":{"description":"Total notional value traded during the candle interval.","format":"uint64","type":"string"},"open":{"description":"Open trade price.","type":"string"},"start":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.","format":"int64","type":"string"},"volume":{"description":"Total trading volume during the candle interval.","format":"uint64","type":"string"}},"title":"Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle","type":"object"}},"type":"object","title":"v2CandleEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of candles data and corresponding page information","type":"object"}},"title":"Response for list of candles for a market at an interval","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Get a list of candle data for a given candle ID. Candle IDs can be obtained by calling list-candle-intervals","operationId":"TradingDataService_ListCandleData","method":"get","path":"/api/v2/candle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List candle data","description":{"content":"Get a list of candle data for a given candle ID. Candle IDs can be obtained by calling list-candle-intervals","type":"text/plain"},"url":{"path":["api","v2","candle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Candle ID to retrieve candle data for.","type":"text/plain"},"key":"candleId","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds to retrieve candles from.","type":"text/plain"},"key":"fromTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds to retrieve candles to.","type":"text/plain"},"key":"toTimestamp","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Candle ID to retrieve candle data for.","in":"query","name":"candleId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds to retrieve candles from.","in":"query","name":"fromTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds to retrieve candles to.","in":"query","name":"toTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"candles":{"description":"Page of candle data and corresponding page information.","properties":{"edges":{"description":"Page of candle data items and their corresponding cursors.","items":{"description":"Candle data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Candlestick data, i.e. high, low, open, and closing prices for an interval of trading.","properties":{"close":{"description":"Closing trade price.","type":"string"},"high":{"description":"Highest price for trading during the candle interval.","type":"string"},"lastUpdate":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was last updated.","format":"int64","type":"string"},"low":{"description":"Lowest price for trading during the candle interval.","type":"string"},"notional":{"description":"Total notional value traded during the candle interval.","format":"uint64","type":"string"},"open":{"description":"Open trade price.","type":"string"},"start":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.","format":"int64","type":"string"},"volume":{"description":"Total trading volume during the candle interval.","format":"uint64","type":"string"}},"title":"Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle","type":"object"}},"type":"object","title":"v2CandleEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of candles data and corresponding page information","type":"object"}},"title":"Response for list of candles for a market at an interval","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Get a list of candle data for a given candle ID. Candle IDs can be obtained by calling list-candle-intervals","operationId":"TradingDataService_ListCandleData","method":"get","path":"/api/v2/candle","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List candle data","description":{"content":"Get a list of candle data for a given candle ID. Candle IDs can be obtained by calling list-candle-intervals","type":"text/plain"},"url":{"path":["api","v2","candle"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Candle ID to retrieve candle data for.","type":"text/plain"},"key":"candleId","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds to retrieve candles from.","type":"text/plain"},"key":"fromTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds to retrieve candles to.","type":"text/plain"},"key":"toTimestamp","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List candle data' (trading-data-service-list-candle-data)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-candle-intervals.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-candle-intervals.api.mdx index 5acb22f4f..681d6c3cf 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-candle-intervals.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-candle-intervals.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all available intervals for a given market along wit sidebar_label: "List candle intervals" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Unique ID for the market to list candle intervals for.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"intervalToCandleId":{"description":"List of the mappings.","items":{"properties":{"candleId":{"description":"Unique id of the candle.","type":"string"},"interval":{"description":"Interval for the candle.","type":"string"}},"title":"Maps an interval for a given market to its corresponding candle ID","type":"object"},"type":"array"}},"title":"List of mapped pairs `interval` -> `candle ID` for a given market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Get a list of all available intervals for a given market along with the corresponding candle ID","operationId":"TradingDataService_ListCandleIntervals","method":"get","path":"/api/v2/candle/intervals","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List candle intervals","description":{"content":"Get a list of all available intervals for a given market along with the corresponding candle ID","type":"text/plain"},"url":{"path":["api","v2","candle","intervals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Unique ID for the market to list candle intervals for.","type":"text/plain"},"key":"marketId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Unique ID for the market to list candle intervals for.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"intervalToCandleId":{"description":"List of the mappings.","items":{"properties":{"candleId":{"description":"Unique id of the candle.","type":"string"},"interval":{"description":"Interval for the candle.","type":"string"}},"title":"Maps an interval for a given market to its corresponding candle ID","type":"object"},"type":"array"}},"title":"List of mapped pairs `interval` -> `candle ID` for a given market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Get a list of all available intervals for a given market along with the corresponding candle ID","operationId":"TradingDataService_ListCandleIntervals","method":"get","path":"/api/v2/candle/intervals","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List candle intervals","description":{"content":"Get a list of all available intervals for a given market along with the corresponding candle ID","type":"text/plain"},"url":{"path":["api","v2","candle","intervals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Unique ID for the market to list candle intervals for.","type":"text/plain"},"key":"marketId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List candle intervals' (trading-data-service-list-candle-intervals)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-checkpoints.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-checkpoints.api.mdx index e759223ad..cf56aabdd 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-checkpoints.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-checkpoints.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of information about checkpoints generated by the netwo sidebar_label: "List checkpoints" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"checkpoints":{"description":"Page of checkpoints data and corresponding page information.","properties":{"edges":{"description":"Page of checkpoints data and their corresponding cursors.","items":{"description":"Checkpoint data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to a single checkpoint generated by the Vega network.","properties":{"atBlock":{"description":"Block number at which the checkpoint is made.","format":"uint64","type":"string"},"blockHash":{"description":"Block hash at which the checkpoint is made.","type":"string"},"hash":{"description":"Hash of the checkpoint.","type":"string"}},"title":"Actual data regarding a checkpoint","type":"object"}},"type":"object","title":"v2CheckpointEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of checkpoints data and corresponding page information","type":"object"}},"title":"Response message containing all checkpoints requested","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about checkpoints generated by the network","operationId":"TradingDataService_ListCheckpoints","method":"get","path":"/api/v2/checkpoints","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List checkpoints","description":{"content":"Get a list of information about checkpoints generated by the network","type":"text/plain"},"url":{"path":["api","v2","checkpoints"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"checkpoints":{"description":"Page of checkpoints data and corresponding page information.","properties":{"edges":{"description":"Page of checkpoints data and their corresponding cursors.","items":{"description":"Checkpoint data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to a single checkpoint generated by the Vega network.","properties":{"atBlock":{"description":"Block number at which the checkpoint is made.","format":"uint64","type":"string"},"blockHash":{"description":"Block hash at which the checkpoint is made.","type":"string"},"hash":{"description":"Hash of the checkpoint.","type":"string"}},"title":"Actual data regarding a checkpoint","type":"object"}},"type":"object","title":"v2CheckpointEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of checkpoints data and corresponding page information","type":"object"}},"title":"Response message containing all checkpoints requested","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about checkpoints generated by the network","operationId":"TradingDataService_ListCheckpoints","method":"get","path":"/api/v2/checkpoints","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List checkpoints","description":{"content":"Get a list of information about checkpoints generated by the network","type":"text/plain"},"url":{"path":["api","v2","checkpoints"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List checkpoints' (trading-data-service-list-checkpoints)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-core-snapshots.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-core-snapshots.api.mdx index d28425786..88a0a1c2e 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-core-snapshots.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-core-snapshots.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of core snapshots taken" sidebar_label: "List snapshots" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response from a ListCoreSnapshots RPC call; a paginated list of the core snapshots.","properties":{"coreSnapshots":{"description":"Page of core snapshot data and corresponding page information.","properties":{"edges":{"description":"Page of core snapshot data and their corresponding cursors.","items":{"description":"Core snapshot data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object","title":"v1CoreSnapshotData"}},"type":"object","title":"v2CoreSnapshotEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2CoreSnapshotConnection"}},"type":"object","title":"v2ListCoreSnapshotsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of core snapshots taken","operationId":"TradingDataService_ListCoreSnapshots","method":"get","path":"/api/v2/snapshots","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List snapshots","description":{"content":"Get a list of core snapshots taken","type":"text/plain"},"url":{"path":["api","v2","snapshots"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response from a ListCoreSnapshots RPC call; a paginated list of the core snapshots.","properties":{"coreSnapshots":{"description":"Page of core snapshot data and corresponding page information.","properties":{"edges":{"description":"Page of core snapshot data and their corresponding cursors.","items":{"description":"Core snapshot data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object","title":"v1CoreSnapshotData"}},"type":"object","title":"v2CoreSnapshotEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2CoreSnapshotConnection"}},"type":"object","title":"v2ListCoreSnapshotsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of core snapshots taken","operationId":"TradingDataService_ListCoreSnapshots","method":"get","path":"/api/v2/snapshots","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List snapshots","description":{"content":"Get a list of core snapshots taken","type":"text/plain"},"url":{"path":["api","v2","snapshots"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List snapshots' (trading-data-service-list-core-snapshots)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-delegations.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-delegations.api.mdx index 0b3679bb0..248d0bdf6 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-delegations.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-delegations.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of the token delegations on the network" sidebar_label: "List delegations" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict delegations to those made by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict delegations to those made to the given node ID.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Return delegations made in the given epoch. If not set, delegations for the current epoch will be returned.","in":"query","name":"epochId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"delegations":{"description":"Page of delegations data and corresponding page information.","properties":{"edges":{"description":"Page of delegations data and their corresponding cursors.","items":{"description":"Delegation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"How much a party is delegating to a node and when.","properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"}},"type":"object","title":"v2DelegationEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of delegations data and corresponding page information","type":"object"}},"title":"Response from listing delegations","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the token delegations on the network","operationId":"TradingDataService_ListDelegations","method":"get","path":"/api/v2/delegations","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List delegations","description":{"content":"Get a list of the token delegations on the network","type":"text/plain"},"url":{"path":["api","v2","delegations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict delegations to those made by the given party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict delegations to those made to the given node ID.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Return delegations made in the given epoch. If not set, delegations for the current epoch will be returned.","type":"text/plain"},"key":"epochId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict delegations to those made by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict delegations to those made to the given node ID.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Return delegations made in the given epoch. If not set, delegations for the current epoch will be returned.","in":"query","name":"epochId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"delegations":{"description":"Page of delegations data and corresponding page information.","properties":{"edges":{"description":"Page of delegations data and their corresponding cursors.","items":{"description":"Delegation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"How much a party is delegating to a node and when.","properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"}},"type":"object","title":"v2DelegationEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of delegations data and corresponding page information","type":"object"}},"title":"Response from listing delegations","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the token delegations on the network","operationId":"TradingDataService_ListDelegations","method":"get","path":"/api/v2/delegations","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List delegations","description":{"content":"Get a list of the token delegations on the network","type":"text/plain"},"url":{"path":["api","v2","delegations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict delegations to those made by the given party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict delegations to those made to the given node ID.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Return delegations made in the given epoch. If not set, delegations for the current epoch will be returned.","type":"text/plain"},"key":"epochId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List delegations' (trading-data-service-list-delegations)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-deposits.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-deposits.api.mdx index 96a41790d..ab657dc23 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-deposits.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-deposits.api.mdx @@ -7,7 +7,7 @@ has been updated in Vega time." sidebar_label: "List deposits" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict deposits to those made by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"deposits":{"description":"Page of deposits data and corresponding page information.","properties":{"edges":{"description":"Page of deposits data and their corresponding cursors.","items":{"description":"Deposits data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with a single deposit made on the Vega network.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"title":"Deposit on to the Vega network","type":"object"}},"type":"object","title":"v2DepositEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of deposits data received and corresponding page information","type":"object"}},"title":"Response from listing deposits","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of deposits for a given party.\nIf a date range is provided, filtering will be based on the last time the deposit\nhas been updated in Vega time.","operationId":"TradingDataService_ListDeposits","method":"get","path":"/api/v2/deposits","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List deposits","description":{"content":"Get a list of deposits for a given party.\nIf a date range is provided, filtering will be based on the last time the deposit\nhas been updated in Vega time.","type":"text/plain"},"url":{"path":["api","v2","deposits"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict deposits to those made by the given party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict deposits to those made by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"deposits":{"description":"Page of deposits data and corresponding page information.","properties":{"edges":{"description":"Page of deposits data and their corresponding cursors.","items":{"description":"Deposits data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with a single deposit made on the Vega network.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"title":"Deposit on to the Vega network","type":"object"}},"type":"object","title":"v2DepositEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of deposits data received and corresponding page information","type":"object"}},"title":"Response from listing deposits","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of deposits for a given party.\nIf a date range is provided, filtering will be based on the last time the deposit\nhas been updated in Vega time.","operationId":"TradingDataService_ListDeposits","method":"get","path":"/api/v2/deposits","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List deposits","description":{"content":"Get a list of deposits for a given party.\nIf a date range is provided, filtering will be based on the last time the deposit\nhas been updated in Vega time.","type":"text/plain"},"url":{"path":["api","v2","deposits"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict deposits to those made by the given party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List deposits' (trading-data-service-list-deposits)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-epoch-reward-summaries.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-epoch-reward-summaries.api.mdx index 379587851..6e92a5f49 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-epoch-reward-summaries.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-epoch-reward-summaries.api.mdx @@ -7,7 +7,7 @@ If no data is provided, all reward summaries will be returned, grouped by epochs sidebar_label: "List epoch reward summaries" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict reward summaries to those connected to the assets in the given list.","explode":true,"in":"query","name":"filter.assetIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict reward summaries to those connected to the markets in the given list.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict rewards summaries to those that were paid after and including the given epoch ID.","in":"query","name":"filter.fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict rewards summaries to those that were paid up to and including the given epoch ID.","in":"query","name":"filter.toEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"summaries":{"description":"Page of rewards details for a single party and corresponding page information.","properties":{"edges":{"description":"Page of rewards summary data for epochs and their corresponding cursors.","items":{"description":"Rewards summary data for epoch with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Rewards summary data for epoch.","properties":{"amount":{"description":"Amount distributed. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"epoch":{"description":"Epoch in which the reward is being paid.","format":"uint64","type":"string"},"marketId":{"description":"Market ID in which the reward is being paid.","type":"string"},"rewardType":{"description":"Type of reward being paid.","type":"string"}},"title":"Details for rewards for a combination of asset, market, and reward type in a given epoch","type":"object"}},"type":"object","title":"v2EpochRewardSummaryEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of rewards summary data for epoch and corresponding page information","type":"object"}},"title":"Return message with reward details in for a single party","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of reward summaries by epoch for a given range of epochs.\nThe result is filtered by list of asset IDs, market IDs and starting and ending epochs, for which to return rewards.\nIf no data is provided, all reward summaries will be returned, grouped by epochs, market IDs, asset IDs and reward type.","operationId":"TradingDataService_ListEpochRewardSummaries","method":"get","path":"/api/v2/rewards/epoch/summaries","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List epoch reward summaries","description":{"content":"Get a list of reward summaries by epoch for a given range of epochs.\nThe result is filtered by list of asset IDs, market IDs and starting and ending epochs, for which to return rewards.\nIf no data is provided, all reward summaries will be returned, grouped by epochs, market IDs, asset IDs and reward type.","type":"text/plain"},"url":{"path":["api","v2","rewards","epoch","summaries"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict reward summaries to those connected to the assets in the given list.","type":"text/plain"},"key":"filter.assetIds","value":""},{"disabled":false,"description":{"content":"Restrict reward summaries to those connected to the markets in the given list.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict rewards summaries to those that were paid after and including the given epoch ID.","type":"text/plain"},"key":"filter.fromEpoch","value":""},{"disabled":false,"description":{"content":"Restrict rewards summaries to those that were paid up to and including the given epoch ID.","type":"text/plain"},"key":"filter.toEpoch","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict reward summaries to those connected to the assets in the given list.","explode":true,"in":"query","name":"filter.assetIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict reward summaries to those connected to the markets in the given list.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict rewards summaries to those that were paid after and including the given epoch ID.","in":"query","name":"filter.fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict rewards summaries to those that were paid up to and including the given epoch ID.","in":"query","name":"filter.toEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"summaries":{"description":"Page of rewards details for a single party and corresponding page information.","properties":{"edges":{"description":"Page of rewards summary data for epochs and their corresponding cursors.","items":{"description":"Rewards summary data for epoch with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Rewards summary data for epoch.","properties":{"amount":{"description":"Amount distributed. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"epoch":{"description":"Epoch in which the reward is being paid.","format":"uint64","type":"string"},"marketId":{"description":"Market ID in which the reward is being paid.","type":"string"},"rewardType":{"description":"Type of reward being paid.","type":"string"}},"title":"Details for rewards for a combination of asset, market, and reward type in a given epoch","type":"object"}},"type":"object","title":"v2EpochRewardSummaryEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of rewards summary data for epoch and corresponding page information","type":"object"}},"title":"Return message with reward details in for a single party","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of reward summaries by epoch for a given range of epochs.\nThe result is filtered by list of asset IDs, market IDs and starting and ending epochs, for which to return rewards.\nIf no data is provided, all reward summaries will be returned, grouped by epochs, market IDs, asset IDs and reward type.","operationId":"TradingDataService_ListEpochRewardSummaries","method":"get","path":"/api/v2/rewards/epoch/summaries","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List epoch reward summaries","description":{"content":"Get a list of reward summaries by epoch for a given range of epochs.\nThe result is filtered by list of asset IDs, market IDs and starting and ending epochs, for which to return rewards.\nIf no data is provided, all reward summaries will be returned, grouped by epochs, market IDs, asset IDs and reward type.","type":"text/plain"},"url":{"path":["api","v2","rewards","epoch","summaries"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict reward summaries to those connected to the assets in the given list.","type":"text/plain"},"key":"filter.assetIds","value":""},{"disabled":false,"description":{"content":"Restrict reward summaries to those connected to the markets in the given list.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict rewards summaries to those that were paid after and including the given epoch ID.","type":"text/plain"},"key":"filter.fromEpoch","value":""},{"disabled":false,"description":{"content":"Restrict rewards summaries to those that were paid up to and including the given epoch ID.","type":"text/plain"},"key":"filter.toEpoch","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List epoch reward summaries' (trading-data-service-list-epoch-reward-summaries)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-added-bundles.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-added-bundles.api.mdx index abb53e402..16f1947da 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-added-bundles.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-added-bundles.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of the signature bundles to add a particular validator sidebar_label: "List ERC20 multi-sig signer added bundles" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Node ID of the validator for which a signature bundle is required.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Ethereum address of the validator that will submit the bundle.","in":"query","name":"submitter","required":false,"schema":{"type":"string"}},{"description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was promoted to consensus validator.","in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"bundles":{"description":"Page of bundles for that validator - it may have been added multiple times if removed in between - and corresponding page information.","properties":{"edges":{"description":"Page of signature bundle data and their corresponding cursors.","items":{"description":"Signature bundle data that is to be added with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Signature bundle data to be added.","properties":{"epochSeq":{"description":"Epoch in which the validator was added.","type":"string"},"newSigner":{"description":"Ethereum address of the signer to be removed.","type":"string"},"nonce":{"description":"Nonce used in the signing operation.","type":"string"},"signatures":{"description":"Bundle of signatures from current validators to sign in the new signer.","type":"string"},"submitter":{"description":"Ethereum address of the submitter.","type":"string"},"timestamp":{"description":"Unixnano timestamp for when the validator was added.","format":"int64","type":"string"}},"title":"Signature bundle data to be added","type":"object"}},"type":"object","title":"v2ERC20MultiSigSignerAddedBundleEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of signature data items to be added and corresponding page information","type":"object"}},"title":"Response from adding a signature bundle to the signer list of a multisig contract for a particular validator","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of the signature bundles to add a particular validator to the signer list of the multisig contract","operationId":"TradingDataService_ListERC20MultiSigSignerAddedBundles","method":"get","path":"/api/v2/erc20/multisigcontrol/signer/added/bundles","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List ERC20 multi-sig signer added bundles","description":{"content":"Get a list of the signature bundles to add a particular validator to the signer list of the multisig contract","type":"text/plain"},"url":{"path":["api","v2","erc20","multisigcontrol","signer","added","bundles"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID of the validator for which a signature bundle is required.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Ethereum address of the validator that will submit the bundle.","type":"text/plain"},"key":"submitter","value":""},{"disabled":false,"description":{"content":"Epoch in which the bundle was generated, i.e. the epoch in which the node was promoted to consensus validator.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Node ID of the validator for which a signature bundle is required.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Ethereum address of the validator that will submit the bundle.","in":"query","name":"submitter","required":false,"schema":{"type":"string"}},{"description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was promoted to consensus validator.","in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"bundles":{"description":"Page of bundles for that validator - it may have been added multiple times if removed in between - and corresponding page information.","properties":{"edges":{"description":"Page of signature bundle data and their corresponding cursors.","items":{"description":"Signature bundle data that is to be added with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Signature bundle data to be added.","properties":{"epochSeq":{"description":"Epoch in which the validator was added.","type":"string"},"newSigner":{"description":"Ethereum address of the signer to be removed.","type":"string"},"nonce":{"description":"Nonce used in the signing operation.","type":"string"},"signatures":{"description":"Bundle of signatures from current validators to sign in the new signer.","type":"string"},"submitter":{"description":"Ethereum address of the submitter.","type":"string"},"timestamp":{"description":"Unixnano timestamp for when the validator was added.","format":"int64","type":"string"}},"title":"Signature bundle data to be added","type":"object"}},"type":"object","title":"v2ERC20MultiSigSignerAddedBundleEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of signature data items to be added and corresponding page information","type":"object"}},"title":"Response from adding a signature bundle to the signer list of a multisig contract for a particular validator","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of the signature bundles to add a particular validator to the signer list of the multisig contract","operationId":"TradingDataService_ListERC20MultiSigSignerAddedBundles","method":"get","path":"/api/v2/erc20/multisigcontrol/signer/added/bundles","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List ERC20 multi-sig signer added bundles","description":{"content":"Get a list of the signature bundles to add a particular validator to the signer list of the multisig contract","type":"text/plain"},"url":{"path":["api","v2","erc20","multisigcontrol","signer","added","bundles"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID of the validator for which a signature bundle is required.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Ethereum address of the validator that will submit the bundle.","type":"text/plain"},"key":"submitter","value":""},{"disabled":false,"description":{"content":"Epoch in which the bundle was generated, i.e. the epoch in which the node was promoted to consensus validator.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List ERC20 multi-sig signer added bundles' (trading-data-service-list-erc-20-multi-sig-signer-added-bundles)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-removed-bundles.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-removed-bundles.api.mdx index bea52f92a..189731b0d 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-removed-bundles.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-erc-20-multi-sig-signer-removed-bundles.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of the signature bundles to remove a particular validat sidebar_label: "List ERC20 multi-sig signer removed bundles" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Node ID of the validator of which a signature bundle is required.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Ethereum address of the validator that will submit the bundle.","in":"query","name":"submitter","required":false,"schema":{"type":"string"}},{"description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was demoted from a consensus validator.","in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"bundles":{"description":"Page of signer bundle data items for that validator and corresponding page information.","properties":{"edges":{"description":"Page of signature bundle data and their corresponding cursors.","items":{"description":"Signature bundle data to be removed, with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Signature bundle data to be added.","properties":{"epochSeq":{"description":"Epoch in which the validator was removed.","type":"string"},"nonce":{"description":"Nonce used in the signing operation.","type":"string"},"oldSigner":{"description":"Ethereum address of the signer to be removed.","type":"string"},"signatures":{"description":"Bundle of signatures from current validators to sign in the new signer.","type":"string"},"submitter":{"description":"Ethereum address of the submitter.","type":"string"},"timestamp":{"description":"Unixnano timestamp for when the validator was added.","format":"int64","type":"string"}},"title":"Signature bundle data to be removed","type":"object"}},"type":"object","title":"v2ERC20MultiSigSignerRemovedBundleEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ERC20MultiSigSignerRemovedConnection"}},"title":"Response when removing a signature bundle from the signer list of the multisig contract for a particular validator","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of the signature bundles to remove a particular validator from signer list of the multisig contract","operationId":"TradingDataService_ListERC20MultiSigSignerRemovedBundles","method":"get","path":"/api/v2/erc20/multisigcontrol/signer/removed/bundles","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List ERC20 multi-sig signer removed bundles","description":{"content":"Get a list of the signature bundles to remove a particular validator from signer list of the multisig contract","type":"text/plain"},"url":{"path":["api","v2","erc20","multisigcontrol","signer","removed","bundles"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID of the validator of which a signature bundle is required.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Ethereum address of the validator that will submit the bundle.","type":"text/plain"},"key":"submitter","value":""},{"disabled":false,"description":{"content":"Epoch in which the bundle was generated, i.e. the epoch in which the node was demoted from a consensus validator.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Node ID of the validator of which a signature bundle is required.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Ethereum address of the validator that will submit the bundle.","in":"query","name":"submitter","required":false,"schema":{"type":"string"}},{"description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was demoted from a consensus validator.","in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"bundles":{"description":"Page of signer bundle data items for that validator and corresponding page information.","properties":{"edges":{"description":"Page of signature bundle data and their corresponding cursors.","items":{"description":"Signature bundle data to be removed, with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Signature bundle data to be added.","properties":{"epochSeq":{"description":"Epoch in which the validator was removed.","type":"string"},"nonce":{"description":"Nonce used in the signing operation.","type":"string"},"oldSigner":{"description":"Ethereum address of the signer to be removed.","type":"string"},"signatures":{"description":"Bundle of signatures from current validators to sign in the new signer.","type":"string"},"submitter":{"description":"Ethereum address of the submitter.","type":"string"},"timestamp":{"description":"Unixnano timestamp for when the validator was added.","format":"int64","type":"string"}},"title":"Signature bundle data to be removed","type":"object"}},"type":"object","title":"v2ERC20MultiSigSignerRemovedBundleEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ERC20MultiSigSignerRemovedConnection"}},"title":"Response when removing a signature bundle from the signer list of the multisig contract for a particular validator","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of the signature bundles to remove a particular validator from signer list of the multisig contract","operationId":"TradingDataService_ListERC20MultiSigSignerRemovedBundles","method":"get","path":"/api/v2/erc20/multisigcontrol/signer/removed/bundles","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List ERC20 multi-sig signer removed bundles","description":{"content":"Get a list of the signature bundles to remove a particular validator from signer list of the multisig contract","type":"text/plain"},"url":{"path":["api","v2","erc20","multisigcontrol","signer","removed","bundles"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID of the validator of which a signature bundle is required.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Ethereum address of the validator that will submit the bundle.","type":"text/plain"},"key":"submitter","value":""},{"disabled":false,"description":{"content":"Epoch in which the bundle was generated, i.e. the epoch in which the node was demoted from a consensus validator.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List ERC20 multi-sig signer removed bundles' (trading-data-service-list-erc-20-multi-sig-signer-removed-bundles)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-ethereum-key-rotations.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-ethereum-key-rotations.api.mdx index 35ef8eab0..4f3f7db48 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-ethereum-key-rotations.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-ethereum-key-rotations.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of information about Ethereum key rotations that have b sidebar_label: "List Ethereum key rotations" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Node ID to get the rotation for, if provided.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"keyRotations":{"description":"Page of Ethereum key rotations data and corresponding page information.","properties":{"edges":{"description":"Page of Ethereum key rotations data and their corresponding cursors.","items":{"description":"Ethereum key rotation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to an Ethereum key rotation performed by a node on the Vega network.","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"title":"Event that contains information about an Ethereum key rotation","type":"object"}},"type":"object","title":"v2EthereumKeyRotationEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of Ethereum key rotations data and corresponding page information","type":"object"}},"title":"Response message containing Ethereum key rotations","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about Ethereum key rotations that have been performed by validator nodes","operationId":"TradingDataService_ListEthereumKeyRotations","method":"get","path":"/api/v2/vega/keys/ethereum/rotations","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List Ethereum key rotations","description":{"content":"Get a list of information about Ethereum key rotations that have been performed by validator nodes","type":"text/plain"},"url":{"path":["api","v2","vega","keys","ethereum","rotations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID to get the rotation for, if provided.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Node ID to get the rotation for, if provided.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"keyRotations":{"description":"Page of Ethereum key rotations data and corresponding page information.","properties":{"edges":{"description":"Page of Ethereum key rotations data and their corresponding cursors.","items":{"description":"Ethereum key rotation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to an Ethereum key rotation performed by a node on the Vega network.","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"title":"Event that contains information about an Ethereum key rotation","type":"object"}},"type":"object","title":"v2EthereumKeyRotationEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of Ethereum key rotations data and corresponding page information","type":"object"}},"title":"Response message containing Ethereum key rotations","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about Ethereum key rotations that have been performed by validator nodes","operationId":"TradingDataService_ListEthereumKeyRotations","method":"get","path":"/api/v2/vega/keys/ethereum/rotations","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List Ethereum key rotations","description":{"content":"Get a list of information about Ethereum key rotations that have been performed by validator nodes","type":"text/plain"},"url":{"path":["api","v2","vega","keys","ethereum","rotations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID to get the rotation for, if provided.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List Ethereum key rotations' (trading-data-service-list-ethereum-key-rotations)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-funding-payments.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-funding-payments.api.mdx index a6cc34431..10c405610 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-funding-payments.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-funding-payments.api.mdx @@ -6,7 +6,7 @@ period ends." sidebar_label: "List funding payments" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party ID to get funding payment for.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict funding payments returned to those generated by the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"fundingPayments":{"description":"Page of funding period data and corresponding page information.","properties":{"edges":{"description":"Page of funding payment data and their corresponding cursors.","items":{"description":"Funding payment data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Funding payment data.","properties":{"amount":{"description":"Funding payment amount, where a positive value indicates an earned payment received and a negative value a loss.","type":"string"},"fundingPeriodSeq":{"description":"Funding period sequence this payment was calculated from.","format":"uint64","type":"string"},"marketId":{"description":"Market that produced the funding payment.","type":"string"},"partyId":{"description":"Party that received the funding payment.","type":"string"},"timestamp":{"description":"Timestamp, in Unix nanoseconds, at which this funding payment occured.","format":"int64","type":"string"}},"title":"A funding payment for a party on a perpetual market","type":"object"}},"type":"object","title":"v2FundingPaymentEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2FundingPaymentConnection"}},"title":"Response from listing funding payments","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of funding payment gains and losses for a party as a result of their position on a perpetual market when a funding\nperiod ends.","operationId":"TradingDataService_ListFundingPayments","method":"get","path":"/api/v2/funding-payments","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List funding payments","description":{"content":"Get a list of funding payment gains and losses for a party as a result of their position on a perpetual market when a funding\nperiod ends.","type":"text/plain"},"url":{"path":["api","v2","funding-payments"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Party ID to get funding payment for.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict funding payments returned to those generated by the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party ID to get funding payment for.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict funding payments returned to those generated by the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"fundingPayments":{"description":"Page of funding period data and corresponding page information.","properties":{"edges":{"description":"Page of funding payment data and their corresponding cursors.","items":{"description":"Funding payment data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Funding payment data.","properties":{"amount":{"description":"Funding payment amount, where a positive value indicates an earned payment received and a negative value a loss.","type":"string"},"fundingPeriodSeq":{"description":"Funding period sequence this payment was calculated from.","format":"uint64","type":"string"},"marketId":{"description":"Market that produced the funding payment.","type":"string"},"partyId":{"description":"Party that received the funding payment.","type":"string"},"timestamp":{"description":"Timestamp, in Unix nanoseconds, at which this funding payment occured.","format":"int64","type":"string"}},"title":"A funding payment for a party on a perpetual market","type":"object"}},"type":"object","title":"v2FundingPaymentEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2FundingPaymentConnection"}},"title":"Response from listing funding payments","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of funding payment gains and losses for a party as a result of their position on a perpetual market when a funding\nperiod ends.","operationId":"TradingDataService_ListFundingPayments","method":"get","path":"/api/v2/funding-payments","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List funding payments","description":{"content":"Get a list of funding payment gains and losses for a party as a result of their position on a perpetual market when a funding\nperiod ends.","type":"text/plain"},"url":{"path":["api","v2","funding-payments"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Party ID to get funding payment for.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict funding payments returned to those generated by the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List funding payments' (trading-data-service-list-funding-payments)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-funding-period-data-points.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-funding-period-data-points.api.mdx index 4987acb14..557fcc37b 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-funding-period-data-points.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-funding-period-data-points.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of data points for a perpetual market's funding periods sidebar_label: "List funding period data points" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to get funding period data points for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict the data points to those with the given source type.\n\n - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market.","in":"query","name":"source","required":false,"schema":{"default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string"}},{"description":"Restrict the data points to those that contributed to the given funding period sequence.","in":"query","name":"seq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response from listing funding period data points.","properties":{"fundingPeriodDataPoints":{"description":"Page of funding period data points and corresponding page information.","properties":{"edges":{"description":"Page of funding period data points and their corresponding cursors.","items":{"description":"Funding period data point with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Funding period data point.","properties":{"dataPointType":{"description":"Origin of the data point.","default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string","title":"FundingPeriodDataPointSource"},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object","title":"v1FundingPeriodDataPoint"}},"type":"object","title":"v2FundingPeriodDataPointEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2FundingPeriodDataPointConnection"}},"type":"object","title":"v2ListFundingPeriodDataPointsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of data points for a perpetual market's funding periods.","operationId":"TradingDataService_ListFundingPeriodDataPoints","method":"get","path":"/api/v2/funding-periods/data-points/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List funding period data points","description":{"content":"Get a list of data points for a perpetual market's funding periods.","type":"text/plain"},"url":{"path":["api","v2","funding-periods","data-points",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Restrict the data points to those with the given source type.\n\n - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market.","type":"text/plain"},"key":"source","value":""},{"disabled":false,"description":{"content":"Restrict the data points to those that contributed to the given funding period sequence.","type":"text/plain"},"key":"seq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to get funding period data points for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to get funding period data points for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict the data points to those with the given source type.\n\n - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market.","in":"query","name":"source","required":false,"schema":{"default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string"}},{"description":"Restrict the data points to those that contributed to the given funding period sequence.","in":"query","name":"seq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response from listing funding period data points.","properties":{"fundingPeriodDataPoints":{"description":"Page of funding period data points and corresponding page information.","properties":{"edges":{"description":"Page of funding period data points and their corresponding cursors.","items":{"description":"Funding period data point with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Funding period data point.","properties":{"dataPointType":{"description":"Origin of the data point.","default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string","title":"FundingPeriodDataPointSource"},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object","title":"v1FundingPeriodDataPoint"}},"type":"object","title":"v2FundingPeriodDataPointEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2FundingPeriodDataPointConnection"}},"type":"object","title":"v2ListFundingPeriodDataPointsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of data points for a perpetual market's funding periods.","operationId":"TradingDataService_ListFundingPeriodDataPoints","method":"get","path":"/api/v2/funding-periods/data-points/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List funding period data points","description":{"content":"Get a list of data points for a perpetual market's funding periods.","type":"text/plain"},"url":{"path":["api","v2","funding-periods","data-points",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Restrict the data points to those with the given source type.\n\n - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market.","type":"text/plain"},"key":"source","value":""},{"disabled":false,"description":{"content":"Restrict the data points to those that contributed to the given funding period sequence.","type":"text/plain"},"key":"seq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to get funding period data points for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List funding period data points' (trading-data-service-list-funding-period-data-points)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-funding-periods.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-funding-periods.api.mdx index ffa3f61e3..6940bc1b0 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-funding-periods.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-funding-periods.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of funding periods for a perpetual market." sidebar_label: "List funding periods" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to get funding periods for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"fundingPeriods":{"description":"Page of funding period data and corresponding page information.","properties":{"edges":{"description":"Page of funding period data and their corresponding cursors.","items":{"description":"Funding period data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Funding period data.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object","title":"v1FundingPeriod"}},"type":"object","title":"v2FundingPeriodEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2FundingPeriodConnection"}},"title":"Response from listing funding periods","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of funding periods for a perpetual market.","operationId":"TradingDataService_ListFundingPeriods","method":"get","path":"/api/v2/funding-periods/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List funding periods","description":{"content":"Get a list of funding periods for a perpetual market.","type":"text/plain"},"url":{"path":["api","v2","funding-periods",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to get funding periods for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to get funding periods for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"fundingPeriods":{"description":"Page of funding period data and corresponding page information.","properties":{"edges":{"description":"Page of funding period data and their corresponding cursors.","items":{"description":"Funding period data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Funding period data.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object","title":"v1FundingPeriod"}},"type":"object","title":"v2FundingPeriodEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2FundingPeriodConnection"}},"title":"Response from listing funding periods","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of funding periods for a perpetual market.","operationId":"TradingDataService_ListFundingPeriods","method":"get","path":"/api/v2/funding-periods/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List funding periods","description":{"content":"Get a list of funding periods for a perpetual market.","type":"text/plain"},"url":{"path":["api","v2","funding-periods",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID to get funding periods for.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List funding periods' (trading-data-service-list-funding-periods)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-games.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-games.api.mdx new file mode 100644 index 000000000..2d376cc20 --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-list-games.api.mdx @@ -0,0 +1,69 @@ +--- +id: trading-data-service-list-games +title: "List games" +description: "Get a list of games and corresponding game data, given the provided filters" +sidebar_label: "List games" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"Game ID to filter for.","in":"query","name":"gameId","required":false,"schema":{"type":"string"}},{"description":"First epoch to retrieve game data from. If not provided, defaults to the last epoch minus 30,\nor the first epoch available if not enough epochs have passed.","in":"query","name":"epochFrom","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Last epoch to retrieve game data to (inclusive). If not provided, defaults to the last epoch.","in":"query","name":"epochTo","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Entity scope to filter games for, i.e. team games or individual games only.\n\n - ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","in":"query","name":"entityScope","required":false,"schema":{"default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response containing games data.","properties":{"games":{"description":"Page of games data and corresponding page information.","properties":{"edges":{"description":"Page of games data and their corresponding cursors.","items":{"description":"Game information and corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Game data.","properties":{"epoch":{"description":"Epoch at which the last game metrics were captured.","format":"uint64","type":"string"},"id":{"title":"Unique ID of the game","type":"string"},"individual":{"title":"Individual entities that are participating in the game","properties":{"individual":{"description":"List of individual party IDs, and the metrics associated with each participant.","items":{"description":"Data relating to an individual participating in a game.\nThis can be used for both team members who are participating in a team game,\nor individuals participating in an individual entity game.","properties":{"individual":{"title":"Party ID of the individual participating","type":"string"},"rank":{"description":"Rank of the individual either in the game or within their team.","format":"uint64","type":"string"},"rewardEarned":{"title":"Reward earned by the individual during the epoch","type":"string"},"rewardMetric":{"title":"Reward metric applied to the individual","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"type":"string"},"totalRewardsEarned":{"title":"Total rewards earned by the individual for the game","type":"string"},"volume":{"title":"Volume traded by the individual","type":"string"}},"type":"object","title":"v2IndividualGameEntity"},"type":"array"}},"type":"object"},"participants":{"description":"The number of participants in the game.","format":"uint64","type":"string"},"team":{"title":"Team entities that are participating in the game","properties":{"team":{"description":"List of teams, the participant members of a team, and the metrics associated with each participant.","items":{"description":"Data relating to a team participating in a game.","properties":{"rank":{"format":"uint64","title":"Rank of the team in the game","type":"string"},"rewardEarned":{"title":"Reward earned by the team","type":"string"},"rewardMetric":{"title":"Reward metric applied to the team","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"type":"string"},"team":{"title":"Team participation breakdown","description":"Breakdown of a team's participation in a game.","properties":{"membersParticipating":{"items":{"description":"Data relating to an individual participating in a game.\nThis can be used for both team members who are participating in a team game,\nor individuals participating in an individual entity game.","properties":{"individual":{"title":"Party ID of the individual participating","type":"string"},"rank":{"description":"Rank of the individual either in the game or within their team.","format":"uint64","type":"string"},"rewardEarned":{"title":"Reward earned by the individual during the epoch","type":"string"},"rewardMetric":{"title":"Reward metric applied to the individual","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"type":"string"},"totalRewardsEarned":{"title":"Total rewards earned by the individual for the game","type":"string"},"volume":{"title":"Volume traded by the individual","type":"string"}},"type":"object","title":"v2IndividualGameEntity"},"title":"Individual team member metrics for their participation in the game","type":"array"},"teamId":{"title":"ID of the team participating","type":"string"}},"type":"object"},"totalRewardsEarned":{"title":"Total rewards earned by the individual for the team","type":"string"},"volume":{"title":"Volume traded by the team","type":"string"}},"type":"object","title":"v2TeamGameEntity"},"type":"array"}},"type":"object"}},"type":"object","title":"v2Game"}},"type":"object","title":"v2GameEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2GamesConnection"}},"type":"object","title":"v2ListGamesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Games"],"description":"Get a list of games and corresponding game data, given the provided filters","operationId":"TradingDataService_ListGames","method":"get","path":"/api/v2/games","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List games","description":{"content":"Get a list of games and corresponding game data, given the provided filters","type":"text/plain"},"url":{"path":["api","v2","games"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Game ID to filter for.","type":"text/plain"},"key":"gameId","value":""},{"disabled":false,"description":{"content":"First epoch to retrieve game data from. If not provided, defaults to the last epoch minus 30,\nor the first epoch available if not enough epochs have passed.","type":"text/plain"},"key":"epochFrom","value":""},{"disabled":false,"description":{"content":"Last epoch to retrieve game data to (inclusive). If not provided, defaults to the last epoch.","type":"text/plain"},"key":"epochTo","value":""},{"disabled":false,"description":{"content":"Entity scope to filter games for, i.e. team games or individual games only.\n\n - ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"text/plain"},"key":"entityScope","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List games' (trading-data-service-list-games)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## List games + + + +Get a list of games and corresponding game data, given the provided filters + +
    Query Parameters
    + +A successful response. + +
    Schema
      games object
      + +Page of games data and corresponding page information. + +
      edges object[]
      + +Page of games data and their corresponding cursors. + +
    • Array [
    • node object
      + +Game data. + +
      individual object
      individual object[]
      + +List of individual party IDs, and the metrics associated with each participant. + +
    • Array [
    • ]
    • team object
      team object[]
      + +List of teams, the participant members of a team, and the metrics associated with each participant. + +
    • Array [
    • team object
      + +Breakdown of a team's participation in a game. + +
      membersParticipating object[]
    • Array [
    • ]
    • ]
    • ]
    • pageInfo object
      + +Page information that is used for fetching further pages. + +
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-list-governance-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-governance-data.api.mdx index 859bd51a0..c10cf7d91 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-governance-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-governance-data.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of proposals" sidebar_label: "List governance data" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict proposals to those with the given state.\n\n - STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","in":"query","name":"proposalState","required":false,"schema":{"default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"type":"string"}},{"description":"Restrict proposals to those with the given type.\n\n - TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program","in":"query","name":"proposalType","required":false,"schema":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ALL","TYPE_NEW_MARKET","TYPE_UPDATE_MARKET","TYPE_NETWORK_PARAMETERS","TYPE_NEW_ASSET","TYPE_NEW_FREE_FORM","TYPE_UPDATE_ASSET","TYPE_NEW_SPOT_MARKET","TYPE_UPDATE_SPOT_MARKET","TYPE_NEW_TRANSFER","TYPE_CANCEL_TRANSFER","TYPE_UPDATE_MARKET_STATE","TYPE_UPDATE_REFERRAL_PROGRAM","TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM"],"type":"string"}},{"description":"Restrict proposals to those proposed by the given party ID.","in":"query","name":"proposerPartyId","required":false,"schema":{"type":"string"}},{"description":"Restrict proposals to those with the given reference.","in":"query","name":"proposalReference","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"connection":{"description":"Page of governance data and corresponding page information.","properties":{"edges":{"description":"Page of governance data and their corresponding cursors.","items":{"description":"Governance data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Governance data content, i.e. proposal and votes for and against.","properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"}},"type":"object","title":"v2GovernanceDataEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of governance data and corresponding page information","type":"object"}},"title":"Response from listing governance data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a list of proposals","operationId":"TradingDataService_ListGovernanceData","method":"get","path":"/api/v2/governances","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List governance data","description":{"content":"Get a list of proposals","type":"text/plain"},"url":{"path":["api","v2","governances"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict proposals to those with the given state.\n\n - STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","type":"text/plain"},"key":"proposalState","value":""},{"disabled":false,"description":{"content":"Restrict proposals to those with the given type.\n\n - TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program","type":"text/plain"},"key":"proposalType","value":""},{"disabled":false,"description":{"content":"Restrict proposals to those proposed by the given party ID.","type":"text/plain"},"key":"proposerPartyId","value":""},{"disabled":false,"description":{"content":"Restrict proposals to those with the given reference.","type":"text/plain"},"key":"proposalReference","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict proposals to those with the given state.\n\n - STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","in":"query","name":"proposalState","required":false,"schema":{"default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"type":"string"}},{"description":"Restrict proposals to those with the given type.\n\n - TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program","in":"query","name":"proposalType","required":false,"schema":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ALL","TYPE_NEW_MARKET","TYPE_UPDATE_MARKET","TYPE_NETWORK_PARAMETERS","TYPE_NEW_ASSET","TYPE_NEW_FREE_FORM","TYPE_UPDATE_ASSET","TYPE_NEW_SPOT_MARKET","TYPE_UPDATE_SPOT_MARKET","TYPE_NEW_TRANSFER","TYPE_CANCEL_TRANSFER","TYPE_UPDATE_MARKET_STATE","TYPE_UPDATE_REFERRAL_PROGRAM","TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM"],"type":"string"}},{"description":"Restrict proposals to those proposed by the given party ID.","in":"query","name":"proposerPartyId","required":false,"schema":{"type":"string"}},{"description":"Restrict proposals to those with the given reference.","in":"query","name":"proposalReference","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"connection":{"description":"Page of governance data and corresponding page information.","properties":{"edges":{"description":"Page of governance data and their corresponding cursors.","items":{"description":"Governance data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Governance data content, i.e. proposal and votes for and against.","properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"proposalType":{"description":"Type of proposal this data is for.","default":"TYPE_SINGLE_OR_UNSPECIFIED","enum":["TYPE_SINGLE_OR_UNSPECIFIED","TYPE_BATCH"],"title":"Proposal type","type":"string"},"proposals":{"description":"If proposal type is batch, proposals will contain all the proposals that are make up the batch.","items":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"type":"array"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"}},"type":"object","title":"v2GovernanceDataEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of governance data and corresponding page information","type":"object"}},"title":"Response from listing governance data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a list of proposals","operationId":"TradingDataService_ListGovernanceData","method":"get","path":"/api/v2/governances","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List governance data","description":{"content":"Get a list of proposals","type":"text/plain"},"url":{"path":["api","v2","governances"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict proposals to those with the given state.\n\n - STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","type":"text/plain"},"key":"proposalState","value":""},{"disabled":false,"description":{"content":"Restrict proposals to those with the given type.\n\n - TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program","type":"text/plain"},"key":"proposalType","value":""},{"disabled":false,"description":{"content":"Restrict proposals to those proposed by the given party ID.","type":"text/plain"},"key":"proposerPartyId","value":""},{"disabled":false,"description":{"content":"Restrict proposals to those with the given reference.","type":"text/plain"},"key":"proposalReference","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List governance data' (trading-data-service-list-governance-data)" @@ -26,7 +26,7 @@ import TabItem from "@theme/TabItem"; Get a list of proposals -
    Query Parameters
    +
    Query Parameters
    A successful response. @@ -46,47 +46,39 @@ Governance data content, i.e. proposal and votes for and against. All NO votes against the proposal above. -
  • Array [
  • ]
  • noParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • noParty object
    All latest NO votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
    proposal object
    - -Governance proposal that is being voted on. - -
    rationale object
    - -Rationale behind a proposal. - -
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    -Proposal configuration and the actual change that is meant to be executed when proposal is enacted. - -
    cancelTransfer object
    - -Cancel a governance transfer. +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. -
    changes object
    newAsset object
    +
    proposal object
    -Proposal change for creating new assets on Vega. +Governance proposal that is being voted on. -
    changes object
    +
    batchTerms object
    -Configuration of the new asset. +Batch proposal terms. -
    builtinAsset object
    +
    changes object[]
    -Vega built-in asset. +List of individual changes included in the batch proposal. -
    erc20 object
    +
  • Array [
  • cancelTransfer object
    -Ethereum ERC20 asset. +Proposal change to cancel a governance initiated transfe. -
    newMarket object
    +
    changes object
    newMarket object
    -Proposal change for creating new futures market on Vega. +Proposal change for creating new futures market.
    changes object
    @@ -137,7 +129,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -237,7 +229,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -312,7 +304,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -345,7 +337,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -445,7 +437,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -512,63 +504,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    successor object
    - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
    newSpotMarket object
    - -Proposal change for creating new spot market on Vega. - -
    changes object
    - -Configuration of the new spot market. - -
    instrument object
    - -New spot market instrument configuration. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -597,7 +541,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -664,11 +608,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -The external data source spec describing the data source of trading termination. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -697,7 +673,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -764,15 +740,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Perpetual. +Price monitoring parameters. -
    dataSourceSpecBinding object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -805,7 +805,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -872,9 +872,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement schedule. +The external data source spec describing the data source of trading termination.
    external object
    @@ -905,7 +905,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -972,85 +972,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    - -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Data source spec describing the data source for settlement.
    external object
    @@ -1081,7 +1013,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1148,9 +1080,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -The data source spec describing the data source for trading termination. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -1181,7 +1113,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1248,19 +1180,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1289,7 +1217,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1356,49 +1284,6697 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Data source spec describing the data source for settlement schedule. +Spot. -
    external object
    +
    liquidityFeeSettings object
    -DataSourceDefinitionExternal is the top level object used for all external -data sources. It contains one of any of the defined `SourceType` variants. +Specifies how the liquidity fee for the market will be calculated. -
    ethOracle object
    +
    logNormal object
    -Contains the data specification that is received from Ethereum sources. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    filters object[]
  • Array [
  • conditions object[]
    +
    params object
    -Conditions that should be matched by the data to be -considered of interest. +Risk model parameters for log normal. -
  • Array [
  • ]
  • key object
    +
    priceMonitoringParameters object
    -Data source's data property key targeted by the filter. +Price monitoring parameters. -
  • ]
  • normalisers object[]
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Normalisers are used to convert the data returned from the contract method -into a standard format. The key of the map is the name of the property, -which identifies the specific piece of data to other parts of the data -sourcing framework, for example filters. The value is a JSONPath expression -for expressing where in the contract call result the required data is -located, for example $[0] indicates the first result. $[1].price would look -in the second result returned from the contract for a structure with a key -called 'price' and use that if it exists. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
  • Array [
  • ]
  • trigger object
    +
    slaParams object
    -Conditions for determining when to call the contract method. +Specifies the liquidity provision SLA parameters. -
    timeTrigger object
    +
    targetStakeParameters object
    -Trigger for an Ethereum call based on the Ethereum block timestamp. Can be -one-off or repeating. +Specifies parameters related to target stake calculation. -
    oracle object
    +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market on Vega. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • proposals object[]
    + +If proposal type is batch, proposals will contain all the proposals that are make up the batch. + +
  • Array [
  • batchTerms object
    + +Batch proposal terms. + +
    changes object[]
    + +List of individual changes included in the batch proposal. + +
  • Array [
  • cancelTransfer object
    + +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures @@ -1456,7 +8032,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -1472,7 +8056,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -1520,7 +8208,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1554,21 +8246,29 @@ Defined benefit tiers in increasing order. First element will give Tier 1, second element will give Tier 2, and so on. Determines the level of benefit a party can expect based on performance criteria. -
  • Array [
  • ]
  • yes object[]
    +
  • Array [
  • ]
  • ]
  • yes object[]
    All YES votes in favour of the proposal above. -
  • Array [
  • ]
  • yesParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • yesParty object
    All latest YES votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
  • ]
  • pageInfo object
    +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-key-rotations.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-key-rotations.api.mdx index 704946696..555e7f12e 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-key-rotations.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-key-rotations.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of information about Vega key rotations that have been sidebar_label: "List key rotations" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Node ID to get key rotations for, if provided.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"rotations":{"description":"Page of key rotations data and corresponding page information.","properties":{"edges":{"description":"Page of key rotation data and their corresponding cursors.","items":{"description":"Key rotation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to a key rotation that was performed by a node on the Vega network.","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"title":"Event that contains information about a Vega key rotation","type":"object"}},"type":"object","title":"v2KeyRotationEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of key rotations data and corresponding page information","type":"object"}},"title":"Response message containing Vega key rotations","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about Vega key rotations that have been performed by validator nodes","operationId":"TradingDataService_ListKeyRotations","method":"get","path":"/api/v2/vega/keys/rotations","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List key rotations","description":{"content":"Get a list of information about Vega key rotations that have been performed by validator nodes","type":"text/plain"},"url":{"path":["api","v2","vega","keys","rotations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID to get key rotations for, if provided.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Node ID to get key rotations for, if provided.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"rotations":{"description":"Page of key rotations data and corresponding page information.","properties":{"edges":{"description":"Page of key rotation data and their corresponding cursors.","items":{"description":"Key rotation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to a key rotation that was performed by a node on the Vega network.","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"title":"Event that contains information about a Vega key rotation","type":"object"}},"type":"object","title":"v2KeyRotationEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of key rotations data and corresponding page information","type":"object"}},"title":"Response message containing Vega key rotations","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about Vega key rotations that have been performed by validator nodes","operationId":"TradingDataService_ListKeyRotations","method":"get","path":"/api/v2/vega/keys/rotations","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List key rotations","description":{"content":"Get a list of information about Vega key rotations that have been performed by validator nodes","type":"text/plain"},"url":{"path":["api","v2","vega","keys","rotations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Node ID to get key rotations for, if provided.","type":"text/plain"},"key":"nodeId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List key rotations' (trading-data-service-list-key-rotations)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-latest-market-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-latest-market-data.api.mdx index 7abf5d11d..3d2255a26 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-latest-market-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-latest-market-data.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of the latest market data for every market" sidebar_label: "List latest market data" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketsData":{"items":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"type":"array"}},"title":"Response that is received when listing the latest market data for every market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of the latest market data for every market","operationId":"TradingDataService_ListLatestMarketData","method":"get","path":"/api/v2/markets/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List latest market data","description":{"content":"Get a list of the latest market data for every market","type":"text/plain"},"url":{"path":["api","v2","markets","data"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketsData":{"items":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"description":"The method used for calculating the mark price.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"description":"The method used for calculating the index price (perps only).","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"type":"array"}},"title":"Response that is received when listing the latest market data for every market","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of the latest market data for every market","operationId":"TradingDataService_ListLatestMarketData","method":"get","path":"/api/v2/markets/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List latest market data","description":{"content":"Get a list of the latest market data for every market","type":"text/plain"},"url":{"path":["api","v2","markets","data"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List latest market data' (trading-data-service-list-latest-market-data)" @@ -38,7 +38,7 @@ Equity like share of liquidity fee for each liquidity provider. SLA performance for each liquidity provider. -
  • Array [
  • ]
  • priceMonitoringBounds object[]
    +
  • Array [
  • ]
  • priceMonitoringBounds object[]
    One or more price monitoring bounds for the current timestamp. @@ -54,7 +54,7 @@ Data related to the particular product type of the market. Represents market data specific to a perpetual market. -
  • ]
  • +
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-ledger-entries.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-ledger-entries.api.mdx index 1ba778f12..ad288c761 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-ledger-entries.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-ledger-entries.api.mdx @@ -12,11 +12,16 @@ Entries can be filtered by: - the sending account (market ID, asset ID, account type) - receiving account (market ID, asset ID, account type) - sending AND receiving account - - transfer type either in addition to the above filters or as a standalone option" + - transfer type either in addition to the above filters or as a standalone option +Note: The date range is restricted to any 5 days. + If no start or end date is provided, only ledger entries from the last 5 days will be returned. + If a start and end date are provided, but the end date is more than 5 days after the start date, only data up to 5 days after the start date will be returned. + If a start date is provided but no end date, the end date will be set to 5 days after the start date. + If no start date is provided, but the end date is, the start date will be set to 5 days before the end date." sidebar_label: "List ledger entries" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.","in":"query","name":"filter.closeOnAccountFilters","required":false,"schema":{"type":"boolean"}},{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.fromAccountFilter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.fromAccountFilter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.fromAccountFilter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","explode":true,"in":"query","name":"filter.fromAccountFilter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"type":"array"}},{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.toAccountFilter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.toAccountFilter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.toAccountFilter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","explode":true,"in":"query","name":"filter.toAccountFilter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"type":"array"}},{"description":"List of transfer types that is used for filtering sender and receiver accounts.\n\n - TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.","explode":true,"in":"query","name":"filter.transferTypes","required":false,"schema":{"items":{"enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE"],"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"ledgerEntries":{"description":"Page of aggregated ledger entries data and corresponding page information.","properties":{"edges":{"description":"Page of 'AggregatedLedgerEntry' data and their corresponding cursors.","items":{"properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"'AggregatedLedgerEntry' data.","properties":{"assetId":{"description":"Asset ID for the asset associated with the entry.","type":"string"},"fromAccountBalance":{"description":"Sender account balance after the transfer.","type":"string"},"fromAccountMarketId":{"description":"Sender market ID.","type":"string"},"fromAccountPartyId":{"description":"Sender's party ID.","type":"string"},"fromAccountType":{"description":"Type of account sent from.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"quantity":{"description":"Amount of ledger entries for the set of requested accounts at the time above.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of the block in which the result is referring to.","format":"int64","type":"string"},"toAccountBalance":{"description":"Receiver account balance after the transfer.","type":"string"},"toAccountMarketId":{"description":"Receiver market ID.","type":"string"},"toAccountPartyId":{"description":"Receiver's party ID.","type":"string"},"toAccountType":{"description":"Type of account received to.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"transferType":{"description":"Transfer type.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents an aggregated view of ledger entry data, sender and receiver accounts,\ndetails and balances for both sides after the transfer has been made","type":"object"}},"title":"Represents the aggregated ledger entry data with corresponding cursor for it","type":"object"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2AggregatedLedgerEntriesConnection"}},"title":"Response that is received when listing ledger entries","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger entries"],"description":"Get a list of ledger entries within the given date range. The date range is restricted to a maximum of 5 days.\nThis query requests and sums the number of ledger entries from a given subset of accounts, specified via the 'filter' argument.\nIt returns a time series - implemented as a list of AggregateLedgerEntry structs - with a row for every time\nthe summed ledger entries of the set of specified accounts changes.\nEach account filter must contain no more than one party ID.\nAt least one party ID must be specified in the from or to account filter.\n\nEntries can be filtered by:\n - the sending account (market ID, asset ID, account type)\n - receiving account (market ID, asset ID, account type)\n - sending AND receiving account\n - transfer type either in addition to the above filters or as a standalone option","operationId":"TradingDataService_ListLedgerEntries","method":"get","path":"/api/v2/ledgerentry/history","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List ledger entries","description":{"content":"Get a list of ledger entries within the given date range. The date range is restricted to a maximum of 5 days.\nThis query requests and sums the number of ledger entries from a given subset of accounts, specified via the 'filter' argument.\nIt returns a time series - implemented as a list of AggregateLedgerEntry structs - with a row for every time\nthe summed ledger entries of the set of specified accounts changes.\nEach account filter must contain no more than one party ID.\nAt least one party ID must be specified in the from or to account filter.\n\nEntries can be filtered by:\n - the sending account (market ID, asset ID, account type)\n - receiving account (market ID, asset ID, account type)\n - sending AND receiving account\n - transfer type either in addition to the above filters or as a standalone option","type":"text/plain"},"url":{"path":["api","v2","ledgerentry","history"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.","type":"text/plain"},"key":"filter.closeOnAccountFilters","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.fromAccountFilter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.fromAccountFilter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.fromAccountFilter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","type":"text/plain"},"key":"filter.fromAccountFilter.accountTypes","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.toAccountFilter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.toAccountFilter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.toAccountFilter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","type":"text/plain"},"key":"filter.toAccountFilter.accountTypes","value":""},{"disabled":false,"description":{"content":"List of transfer types that is used for filtering sender and receiver accounts.\n\n - TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.","type":"text/plain"},"key":"filter.transferTypes","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.","in":"query","name":"filter.closeOnAccountFilters","required":false,"schema":{"type":"boolean"}},{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.fromAccountFilter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.fromAccountFilter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.fromAccountFilter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.fromAccountFilter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.toAccountFilter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.toAccountFilter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.toAccountFilter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.toAccountFilter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"List of transfer types that is used for filtering sender and receiver accounts.\n\n - TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.","explode":true,"in":"query","name":"filter.transferTypes","required":false,"schema":{"items":{"enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"type":"string"},"type":"array"}},{"description":"List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored.","in":"query","name":"filter.transferId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"ledgerEntries":{"description":"Page of aggregated ledger entries data and corresponding page information.","properties":{"edges":{"description":"Page of 'AggregatedLedgerEntry' data and their corresponding cursors.","items":{"properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"'AggregatedLedgerEntry' data.","properties":{"assetId":{"description":"Asset ID for the asset associated with the entry.","type":"string"},"fromAccountBalance":{"description":"Sender account balance after the transfer.","type":"string"},"fromAccountMarketId":{"description":"Sender market ID.","type":"string"},"fromAccountPartyId":{"description":"Sender's party ID.","type":"string"},"fromAccountType":{"description":"Type of account sent from.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"quantity":{"description":"Amount of ledger entries for the set of requested accounts at the time above.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of the block in which the result is referring to.","format":"int64","type":"string"},"toAccountBalance":{"description":"Receiver account balance after the transfer.","type":"string"},"toAccountMarketId":{"description":"Receiver market ID.","type":"string"},"toAccountPartyId":{"description":"Receiver's party ID.","type":"string"},"toAccountType":{"description":"Type of account received to.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"transferType":{"description":"Transfer type.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents an aggregated view of ledger entry data, sender and receiver accounts,\ndetails and balances for both sides after the transfer has been made","type":"object"}},"title":"Represents the aggregated ledger entry data with corresponding cursor for it","type":"object"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2AggregatedLedgerEntriesConnection"}},"title":"Response that is received when listing ledger entries","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger entries"],"description":"Get a list of ledger entries within the given date range. The date range is restricted to a maximum of 5 days.\nThis query requests and sums the number of ledger entries from a given subset of accounts, specified via the 'filter' argument.\nIt returns a time series - implemented as a list of AggregateLedgerEntry structs - with a row for every time\nthe summed ledger entries of the set of specified accounts changes.\nEach account filter must contain no more than one party ID.\nAt least one party ID must be specified in the from or to account filter.\n\nEntries can be filtered by:\n - the sending account (market ID, asset ID, account type)\n - receiving account (market ID, asset ID, account type)\n - sending AND receiving account\n - transfer type either in addition to the above filters or as a standalone option\nNote: The date range is restricted to any 5 days.\n If no start or end date is provided, only ledger entries from the last 5 days will be returned.\n If a start and end date are provided, but the end date is more than 5 days after the start date, only data up to 5 days after the start date will be returned.\n If a start date is provided but no end date, the end date will be set to 5 days after the start date.\n If no start date is provided, but the end date is, the start date will be set to 5 days before the end date.","operationId":"TradingDataService_ListLedgerEntries","method":"get","path":"/api/v2/ledgerentry/history","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List ledger entries","description":{"content":"Get a list of ledger entries within the given date range. The date range is restricted to a maximum of 5 days.\nThis query requests and sums the number of ledger entries from a given subset of accounts, specified via the 'filter' argument.\nIt returns a time series - implemented as a list of AggregateLedgerEntry structs - with a row for every time\nthe summed ledger entries of the set of specified accounts changes.\nEach account filter must contain no more than one party ID.\nAt least one party ID must be specified in the from or to account filter.\n\nEntries can be filtered by:\n - the sending account (market ID, asset ID, account type)\n - receiving account (market ID, asset ID, account type)\n - sending AND receiving account\n - transfer type either in addition to the above filters or as a standalone option\nNote: The date range is restricted to any 5 days.\n If no start or end date is provided, only ledger entries from the last 5 days will be returned.\n If a start and end date are provided, but the end date is more than 5 days after the start date, only data up to 5 days after the start date will be returned.\n If a start date is provided but no end date, the end date will be set to 5 days after the start date.\n If no start date is provided, but the end date is, the start date will be set to 5 days before the end date.","type":"text/plain"},"url":{"path":["api","v2","ledgerentry","history"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.","type":"text/plain"},"key":"filter.closeOnAccountFilters","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.fromAccountFilter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.fromAccountFilter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.fromAccountFilter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","type":"text/plain"},"key":"filter.fromAccountFilter.accountTypes","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those holding balances in this asset ID.","type":"text/plain"},"key":"filter.toAccountFilter.assetId","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.toAccountFilter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","type":"text/plain"},"key":"filter.toAccountFilter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","type":"text/plain"},"key":"filter.toAccountFilter.accountTypes","value":""},{"disabled":false,"description":{"content":"List of transfer types that is used for filtering sender and receiver accounts.\n\n - TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.","type":"text/plain"},"key":"filter.transferTypes","value":""},{"disabled":false,"description":{"content":"List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored.","type":"text/plain"},"key":"filter.transferId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List ledger entries' (trading-data-service-list-ledger-entries)" @@ -47,8 +52,13 @@ Entries can be filtered by: - receiving account (market ID, asset ID, account type) - sending AND receiving account - transfer type either in addition to the above filters or as a standalone option +Note: The date range is restricted to any 5 days. + If no start or end date is provided, only ledger entries from the last 5 days will be returned. + If a start and end date are provided, but the end date is more than 5 days after the start date, only data up to 5 days after the start date will be returned. + If a start date is provided but no end date, the end date will be set to 5 days after the start date. + If no start date is provided, but the end date is, the start date will be set to 5 days before the end date. -
    Query Parameters
    +
    Query Parameters
    A successful response. @@ -64,7 +74,7 @@ Page of 'AggregatedLedgerEntry' data and their corresponding cursors. 'AggregatedLedgerEntry' data. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. diff --git a/docs/api/rest/data-v2/trading-data-service-list-liquidity-providers.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-liquidity-providers.api.mdx index 2583ae31f..e7c73a5b4 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-liquidity-providers.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-liquidity-providers.api.mdx @@ -5,7 +5,7 @@ description: "List information about active liquidity provider(s) for a given ma sidebar_label: "List liquidity providers data" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to retrieve liquidity providers for. If omitted, you must provide a party ID.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to retrieve data for. If omitted, you must provide a market ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for listing liquidity providers.","properties":{"liquidityProviders":{"description":"Page of liquidity providers and corresponding page information.","properties":{"edges":{"description":"Page of liquidity provider data.","items":{"description":"Liquidity provider data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further data.","type":"string"},"node":{"description":"Liquidity provider information returned by the API.","properties":{"feeShare":{"description":"Information used for calculating an LP's fee share, such as the equity like share,\naverage entry valuation and liquidity score for the liquidity provider for the specified market.","properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"marketId":{"description":"ID of the market the liquidity provider is active in.","type":"string"},"partyId":{"description":"Party ID of the liquidity provider.","type":"string"},"sla":{"description":"Information about LP's SLA performance.","properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"}},"type":"object","title":"v2LiquidityProvider"}},"type":"object","title":"v2LiquidityProviderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2LiquidityProviderConnection"}},"type":"object","title":"v2ListLiquidityProvidersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"List information about active liquidity provider(s) for a given market, or liquidity provider's party ID.","operationId":"TradingDataService_ListLiquidityProviders","method":"get","path":"/api/v2/liquidity/providers","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List liquidity providers data","description":{"content":"List information about active liquidity provider(s) for a given market, or liquidity provider's party ID.","type":"text/plain"},"url":{"path":["api","v2","liquidity","providers"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Market ID to retrieve liquidity providers for. If omitted, you must provide a party ID.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to retrieve data for. If omitted, you must provide a market ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to retrieve liquidity providers for. If omitted, you must provide a party ID.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to retrieve data for. If omitted, you must provide a market ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for listing liquidity providers.","properties":{"liquidityProviders":{"description":"Page of liquidity providers and corresponding page information.","properties":{"edges":{"description":"Page of liquidity provider data.","items":{"description":"Liquidity provider data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further data.","type":"string"},"node":{"description":"Liquidity provider information returned by the API.","properties":{"feeShare":{"description":"Information used for calculating an LP's fee share, such as the equity like share,\naverage entry valuation and liquidity score for the liquidity provider for the specified market.","properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"marketId":{"description":"ID of the market the liquidity provider is active in.","type":"string"},"partyId":{"description":"Party ID of the liquidity provider.","type":"string"},"sla":{"description":"Information about LP's SLA performance.","properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"}},"type":"object","title":"v2LiquidityProvider"}},"type":"object","title":"v2LiquidityProviderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2LiquidityProviderConnection"}},"type":"object","title":"v2ListLiquidityProvidersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"List information about active liquidity provider(s) for a given market, or liquidity provider's party ID.","operationId":"TradingDataService_ListLiquidityProviders","method":"get","path":"/api/v2/liquidity/providers","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List liquidity providers data","description":{"content":"List information about active liquidity provider(s) for a given market, or liquidity provider's party ID.","type":"text/plain"},"url":{"path":["api","v2","liquidity","providers"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Market ID to retrieve liquidity providers for. If omitted, you must provide a party ID.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to retrieve data for. If omitted, you must provide a market ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List liquidity providers data' (trading-data-service-list-liquidity-providers)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-liquidity-provisions.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-liquidity-provisions.api.mdx index c2b8de9f3..3cf429778 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-liquidity-provisions.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-liquidity-provisions.api.mdx @@ -7,7 +7,7 @@ Use ListAllLiquidityProvisions instead." sidebar_label: "List liquidity provisions" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict liquidity provisions to those placed on the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those placed by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those with the given order reference.","in":"query","name":"reference","required":false,"schema":{"type":"string"}},{"description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","in":"query","name":"live","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"liquidityProvisions":{"description":"Page of liquidity provisions data and corresponding page information.","properties":{"edges":{"description":"Page of liquidity provisions data and their corresponding cursors.","items":{"description":"Liquidity provision data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data corresponding to a liquidity provider's commitment.","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"}},"type":"object","title":"v2LiquidityProvisionsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of liquidity provisions data and corresponding page information","type":"object"}},"title":"Response from listing liquidity provisions","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"DEPRECATED: When a liquidity provider amends a provision, and it's accepted by the network, the pending\nprovision is returned by the API instead of the provision that is currently active.\nUse ListAllLiquidityProvisions instead.","operationId":"TradingDataService_ListLiquidityProvisions","method":"get","path":"/api/v2/liquidity/provisions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List liquidity provisions","description":{"content":"DEPRECATED: When a liquidity provider amends a provision, and it's accepted by the network, the pending\nprovision is returned by the API instead of the provision that is currently active.\nUse ListAllLiquidityProvisions instead.","type":"text/plain"},"url":{"path":["api","v2","liquidity","provisions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed on the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those with the given order reference.","type":"text/plain"},"key":"reference","value":""},{"disabled":false,"description":{"content":"Whether to include live liquidity provisions. If not set, live orders will not be included.","type":"text/plain"},"key":"live","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict liquidity provisions to those placed on the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those placed by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those with the given order reference.","in":"query","name":"reference","required":false,"schema":{"type":"string"}},{"description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","in":"query","name":"live","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"liquidityProvisions":{"description":"Page of liquidity provisions data and corresponding page information.","properties":{"edges":{"description":"Page of liquidity provisions data and their corresponding cursors.","items":{"description":"Liquidity provision data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data corresponding to a liquidity provider's commitment.","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"}},"type":"object","title":"v2LiquidityProvisionsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of liquidity provisions data and corresponding page information","type":"object"}},"title":"Response from listing liquidity provisions","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"DEPRECATED: When a liquidity provider amends a provision, and it's accepted by the network, the pending\nprovision is returned by the API instead of the provision that is currently active.\nUse ListAllLiquidityProvisions instead.","operationId":"TradingDataService_ListLiquidityProvisions","method":"get","path":"/api/v2/liquidity/provisions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List liquidity provisions","description":{"content":"DEPRECATED: When a liquidity provider amends a provision, and it's accepted by the network, the pending\nprovision is returned by the API instead of the provision that is currently active.\nUse ListAllLiquidityProvisions instead.","type":"text/plain"},"url":{"path":["api","v2","liquidity","provisions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed on the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those placed by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict liquidity provisions to those with the given order reference.","type":"text/plain"},"key":"reference","value":""},{"disabled":false,"description":{"content":"Whether to include live liquidity provisions. If not set, live orders will not be included.","type":"text/plain"},"key":"live","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List liquidity provisions' (trading-data-service-list-liquidity-provisions)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-margin-levels.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-margin-levels.api.mdx index bd5669d8c..23f9d83ce 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-margin-levels.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-margin-levels.api.mdx @@ -5,7 +5,7 @@ description: "Get a list margin levels that match the provided criteria. If no f sidebar_label: "List margin levels" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party ID for which to list the margin levels.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Market ID for which to list the margin levels.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marginLevels":{"description":"Page of margin levels data and corresponding page information.","properties":{"edges":{"description":"Page of margins data and their corresponding cursors.","items":{"description":"Margin data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Margin levels data that satisfy a list margin levels request.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"type":"object","title":"v2MarginEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2MarginConnection"}},"title":"Response from listing margin levels","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Margin levels"],"description":"Get a list margin levels that match the provided criteria. If no filter is provided, all margin levels will be returned.","operationId":"TradingDataService_ListMarginLevels","method":"get","path":"/api/v2/margin/levels","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List margin levels","description":{"content":"Get a list margin levels that match the provided criteria. If no filter is provided, all margin levels will be returned.","type":"text/plain"},"url":{"path":["api","v2","margin","levels"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Party ID for which to list the margin levels.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Market ID for which to list the margin levels.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party ID for which to list the margin levels.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Market ID for which to list the margin levels.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marginLevels":{"description":"Page of margin levels data and corresponding page information.","properties":{"edges":{"description":"Page of margins data and their corresponding cursors.","items":{"description":"Margin data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Margin levels data that satisfy a list margin levels request.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"description":"Margin mode for the party, cross margin or isolated margin.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"type":"object","title":"v2MarginEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2MarginConnection"}},"title":"Response from listing margin levels","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Margin levels"],"description":"Get a list margin levels that match the provided criteria. If no filter is provided, all margin levels will be returned.","operationId":"TradingDataService_ListMarginLevels","method":"get","path":"/api/v2/margin/levels","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List margin levels","description":{"content":"Get a list margin levels that match the provided criteria. If no filter is provided, all margin levels will be returned.","type":"text/plain"},"url":{"path":["api","v2","margin","levels"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Party ID for which to list the margin levels.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Market ID for which to list the margin levels.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List margin levels' (trading-data-service-list-margin-levels)" @@ -42,11 +42,11 @@ Page of margins data and their corresponding cursors. Margin levels data that satisfy a list margin levels request. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-markets.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-markets.api.mdx index 2dc4ba076..d4d61cf94 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-markets.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-markets.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of markets" sidebar_label: "List markets" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Whether to include settled markets. If not set, settled markets will be included.","in":"query","name":"includeSettled","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"markets":{"description":"Page of markets and corresponding page information.","properties":{"edges":{"description":"Page of markets and their corresponding cursors.","items":{"description":"Market information with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Information about the market.","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"}},"type":"object","title":"v2MarketEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2MarketConnection"}},"title":"Response from listing markets","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of markets","operationId":"TradingDataService_ListMarkets","method":"get","path":"/api/v2/markets","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List markets","description":{"content":"Get a list of markets","type":"text/plain"},"url":{"path":["api","v2","markets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Whether to include settled markets. If not set, settled markets will be included.","type":"text/plain"},"key":"includeSettled","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Whether to include settled markets. If not set, settled markets will be included.","in":"query","name":"includeSettled","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"markets":{"description":"Page of markets and corresponding page information.","properties":{"edges":{"description":"Page of markets and their corresponding cursors.","items":{"description":"Market information with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Information about the market.","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"}},"type":"object","title":"v2MarketEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2MarketConnection"}},"title":"Response from listing markets","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of markets","operationId":"TradingDataService_ListMarkets","method":"get","path":"/api/v2/markets","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List markets","description":{"content":"Get a list of markets","type":"text/plain"},"url":{"path":["api","v2","markets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Whether to include settled markets. If not set, settled markets will be included.","type":"text/plain"},"key":"includeSettled","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List markets' (trading-data-service-list-markets)" @@ -50,7 +50,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -62,7 +70,111 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    +
    markPriceConfiguration object
    + +Mark price calculation configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    Timestamps for when the market state changes. @@ -134,7 +246,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -240,7 +352,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -319,7 +431,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -358,7 +470,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -464,7 +576,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -531,7 +747,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -563,7 +779,7 @@ Risk model params for simple modelling. Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-network-parameters.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-network-parameters.api.mdx index 352d23429..6f4a795d8 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-network-parameters.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-network-parameters.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of the network parameter keys and their values" sidebar_label: "List network parameters" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkParameters":{"description":"Page of network parameters and corresponding page information.","properties":{"edges":{"description":"Page of network parameters data and their corresponding cursors.","items":{"description":"Network parameter with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Name and associated value of a network parameter.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"type":"object","title":"v2NetworkParameterEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of network parameters and corresponding page information","type":"object"}},"title":"Response containing all of the Vega network parameters","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the network parameter keys and their values","operationId":"TradingDataService_ListNetworkParameters","method":"get","path":"/api/v2/network/parameters","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List network parameters","description":{"content":"Get a list of the network parameter keys and their values","type":"text/plain"},"url":{"path":["api","v2","network","parameters"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkParameters":{"description":"Page of network parameters and corresponding page information.","properties":{"edges":{"description":"Page of network parameters data and their corresponding cursors.","items":{"description":"Network parameter with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Name and associated value of a network parameter.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"type":"object","title":"v2NetworkParameterEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of network parameters and corresponding page information","type":"object"}},"title":"Response containing all of the Vega network parameters","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the network parameter keys and their values","operationId":"TradingDataService_ListNetworkParameters","method":"get","path":"/api/v2/network/parameters","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List network parameters","description":{"content":"Get a list of the network parameter keys and their values","type":"text/plain"},"url":{"path":["api","v2","network","parameters"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List network parameters' (trading-data-service-list-network-parameters)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-node-signatures.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-node-signatures.api.mdx index efe43bab2..d94286474 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-node-signatures.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-node-signatures.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of aggregate signatures from all the nodes of the netwo sidebar_label: "List node signatures" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Resource ID to list signatures for.","in":"query","name":"id","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"signatures":{"description":"Page of nodes signatures and corresponding page information.","properties":{"edges":{"description":"Page of node signatures and their corresponding cursors.","items":{"description":"Nodes signature edge with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Node signature data.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object","title":"v1NodeSignature"}},"type":"object","title":"v2NodeSignatureEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2NodeSignaturesConnection"}},"title":"Response to specify the ID of the resource to retrieve aggregated signatures for","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of aggregate signatures from all the nodes of the network","operationId":"TradingDataService_ListNodeSignatures","method":"get","path":"/api/v2/node/signatures","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List node signatures","description":{"content":"Get a list of aggregate signatures from all the nodes of the network","type":"text/plain"},"url":{"path":["api","v2","node","signatures"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Resource ID to list signatures for.","type":"text/plain"},"key":"id","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Resource ID to list signatures for.","in":"query","name":"id","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"signatures":{"description":"Page of nodes signatures and corresponding page information.","properties":{"edges":{"description":"Page of node signatures and their corresponding cursors.","items":{"description":"Nodes signature edge with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Node signature data.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object","title":"v1NodeSignature"}},"type":"object","title":"v2NodeSignatureEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2NodeSignaturesConnection"}},"title":"Response to specify the ID of the resource to retrieve aggregated signatures for","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of aggregate signatures from all the nodes of the network","operationId":"TradingDataService_ListNodeSignatures","method":"get","path":"/api/v2/node/signatures","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List node signatures","description":{"content":"Get a list of aggregate signatures from all the nodes of the network","type":"text/plain"},"url":{"path":["api","v2","node","signatures"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Resource ID to list signatures for.","type":"text/plain"},"key":"id","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List node signatures' (trading-data-service-list-node-signatures)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-nodes.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-nodes.api.mdx index fff256e73..714c41143 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-nodes.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-nodes.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of the nodes on the network along with the related info sidebar_label: "List nodes" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Return the node list for the given epoch. If not set, the node list for the current epoch will be returned.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"nodes":{"description":"Page of node data and corresponding page information.","properties":{"edges":{"description":"Page of node data and their corresponding cursors.","items":{"description":"Node data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"properties":{"avatarUrl":{"description":"Avatar url.","type":"string"},"delegations":{"description":"Node's delegations.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"epochData":{"description":"Information about epoch.","properties":{"offline":{"description":"Total number of offline epochs since node was created.","format":"int32","type":"integer"},"online":{"description":"Total number of online epochs since node was created.","format":"int32","type":"integer"},"total":{"description":"Total number of epochs since node was created.","format":"int32","type":"integer"}},"type":"object","title":"vegaEpochData"},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Node ID i.e. the node's wallet ID.","type":"string"},"infoUrl":{"description":"URL where users can find out more information on the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"maxIntendedStake":{"description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"name":{"description":"Node name.","type":"string"},"pendingStake":{"description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"pubKey":{"description":"Public key of the node operator.","type":"string"},"rankingScore":{"description":"Node ranking information.","properties":{"performanceScore":{"description":"Performance based score.","type":"string"},"previousStatus":{"description":"Status of the validator in the previous epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"rankingScore":{"description":"Final score.","type":"string"},"stakeScore":{"description":"Stake based score - no anti-whaling.","type":"string"},"status":{"description":"Status of the validator in the current epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"votingPower":{"description":"Tendermint voting power of the validator.","format":"int64","type":"integer"}},"type":"object","title":"vegaRankingScore"},"rewardScore":{"description":"Node reward score.","properties":{"multisigScore":{"description":"Multisig score.","type":"string"},"normalisedScore":{"description":"Normalised validator score for rewards.","type":"string"},"performanceScore":{"description":"Performance based score.","type":"string"},"rawValidatorScore":{"description":"Stake based score - with anti-whaling.","type":"string"},"validatorScore":{"description":"Un-normalised score.","type":"string"},"validatorStatus":{"description":"Status of the validator for reward.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"}},"type":"object","title":"vegaRewardScore"},"stakedByDelegates":{"description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedByOperator":{"description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedTotal":{"description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"status":{"description":"Node status.","default":"NODE_STATUS_UNSPECIFIED","enum":["NODE_STATUS_UNSPECIFIED","NODE_STATUS_VALIDATOR","NODE_STATUS_NON_VALIDATOR"],"title":"Node status type","type":"string"},"tmPubKey":{"description":"Public key of Tendermint.","type":"string"}},"type":"object","title":"vegaNode","description":"Data specific to a single node on the Vega network."}},"type":"object","title":"v2NodeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of node data and corresponding page information","type":"object"}},"title":"Response from listing nodes","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the nodes on the network along with the related information.","operationId":"TradingDataService_ListNodes","method":"get","path":"/api/v2/nodes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List nodes","description":{"content":"Get a list of the nodes on the network along with the related information.","type":"text/plain"},"url":{"path":["api","v2","nodes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Return the node list for the given epoch. If not set, the node list for the current epoch will be returned.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Return the node list for the given epoch. If not set, the node list for the current epoch will be returned.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"nodes":{"description":"Page of node data and corresponding page information.","properties":{"edges":{"description":"Page of node data and their corresponding cursors.","items":{"description":"Node data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"properties":{"avatarUrl":{"description":"Avatar url.","type":"string"},"delegations":{"description":"Node's delegations.","items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"},"epochData":{"description":"Information about epoch.","properties":{"offline":{"description":"Total number of offline epochs since node was created.","format":"int32","type":"integer"},"online":{"description":"Total number of online epochs since node was created.","format":"int32","type":"integer"},"total":{"description":"Total number of epochs since node was created.","format":"int32","type":"integer"}},"type":"object","title":"vegaEpochData"},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Node ID i.e. the node's wallet ID.","type":"string"},"infoUrl":{"description":"URL where users can find out more information on the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"maxIntendedStake":{"description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"name":{"description":"Node name.","type":"string"},"pendingStake":{"description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"pubKey":{"description":"Public key of the node operator.","type":"string"},"rankingScore":{"description":"Node ranking information.","properties":{"performanceScore":{"description":"Performance based score.","type":"string"},"previousStatus":{"description":"Status of the validator in the previous epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"rankingScore":{"description":"Final score.","type":"string"},"stakeScore":{"description":"Stake based score - no anti-whaling.","type":"string"},"status":{"description":"Status of the validator in the current epoch.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"votingPower":{"description":"Tendermint voting power of the validator.","format":"int64","type":"integer"}},"type":"object","title":"vegaRankingScore"},"rewardScore":{"description":"Node reward score.","properties":{"multisigScore":{"description":"Multisig score.","type":"string"},"normalisedScore":{"description":"Normalised validator score for rewards.","type":"string"},"performanceScore":{"description":"Performance based score.","type":"string"},"rawValidatorScore":{"description":"Stake based score - with anti-whaling.","type":"string"},"validatorScore":{"description":"Un-normalised score.","type":"string"},"validatorStatus":{"description":"Status of the validator for reward.","default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"}},"type":"object","title":"vegaRewardScore"},"stakedByDelegates":{"description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedByOperator":{"description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedTotal":{"description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"status":{"description":"Node status.","default":"NODE_STATUS_UNSPECIFIED","enum":["NODE_STATUS_UNSPECIFIED","NODE_STATUS_VALIDATOR","NODE_STATUS_NON_VALIDATOR"],"title":"Node status type","type":"string"},"tmPubKey":{"description":"Public key of Tendermint.","type":"string"}},"type":"object","title":"vegaNode","description":"Data specific to a single node on the Vega network."}},"type":"object","title":"v2NodeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of node data and corresponding page information","type":"object"}},"title":"Response from listing nodes","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the nodes on the network along with the related information.","operationId":"TradingDataService_ListNodes","method":"get","path":"/api/v2/nodes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List nodes","description":{"content":"Get a list of the nodes on the network along with the related information.","type":"text/plain"},"url":{"path":["api","v2","nodes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Return the node list for the given epoch. If not set, the node list for the current epoch will be returned.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List nodes' (trading-data-service-list-nodes)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-oracle-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-oracle-data.api.mdx index d51e2df78..3156c6572 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-oracle-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-oracle-data.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all oracle data that have been broadcast to any mark sidebar_label: "List oracle data" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Oracle spec ID to list data for.","in":"query","name":"oracleSpecId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oracleData":{"description":"Page of seen oracle data and corresponding page information.","properties":{"edges":{"description":"Page of oracle data and their corresponding cursors.","items":{"description":"Oracle data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data that was received from an external oracle.","properties":{"externalData":{"properties":{"data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"v1Data"}},"type":"object","title":"v1ExternalData"}},"type":"object","title":"vegaOracleData"}},"type":"object","title":"v2OracleDataEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2OracleDataConnection"}},"title":"Response to get all seen oracle data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get a list of all oracle data that have been broadcast to any market","operationId":"TradingDataService_ListOracleData","method":"get","path":"/api/v2/oracle/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List oracle data","description":{"content":"Get a list of all oracle data that have been broadcast to any market","type":"text/plain"},"url":{"path":["api","v2","oracle","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Oracle spec ID to list data for.","type":"text/plain"},"key":"oracleSpecId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Oracle spec ID to list data for.","in":"query","name":"oracleSpecId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oracleData":{"description":"Page of seen oracle data and corresponding page information.","properties":{"edges":{"description":"Page of oracle data and their corresponding cursors.","items":{"description":"Oracle data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data that was received from an external oracle.","properties":{"externalData":{"properties":{"data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"v1Data"}},"type":"object","title":"v1ExternalData"}},"type":"object","title":"vegaOracleData"}},"type":"object","title":"v2OracleDataEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2OracleDataConnection"}},"title":"Response to get all seen oracle data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get a list of all oracle data that have been broadcast to any market","operationId":"TradingDataService_ListOracleData","method":"get","path":"/api/v2/oracle/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List oracle data","description":{"content":"Get a list of all oracle data that have been broadcast to any market","type":"text/plain"},"url":{"path":["api","v2","oracle","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Oracle spec ID to list data for.","type":"text/plain"},"key":"oracleSpecId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List oracle data' (trading-data-service-list-oracle-data)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-oracle-specs.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-oracle-specs.api.mdx index c56db030f..4446cf00f 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-oracle-specs.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-oracle-specs.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all oracles specs that are defined against all marke sidebar_label: "List oracle specs" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oracleSpecs":{"description":"Page of active oracle specs and corresponding page information.","properties":{"edges":{"description":"Page of oracle specs data and their corresponding cursors.","items":{"description":"Oracle specs data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"External spec data that satisfies the list request.","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"title":"Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*","type":"object"}},"type":"object","title":"v2OracleSpecEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of oracle specs and corresponding page information","type":"object"}},"title":"Response to get all active oracle specs","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get a list of all oracles specs that are defined against all markets","operationId":"TradingDataService_ListOracleSpecs","method":"get","path":"/api/v2/oracle/specs","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List oracle specs","description":{"content":"Get a list of all oracles specs that are defined against all markets","type":"text/plain"},"url":{"path":["api","v2","oracle","specs"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"oracleSpecs":{"description":"Page of active oracle specs and corresponding page information.","properties":{"edges":{"description":"Page of oracle specs data and their corresponding cursors.","items":{"description":"Oracle specs data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"External spec data that satisfies the list request.","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"title":"Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*","type":"object"}},"type":"object","title":"v2OracleSpecEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of oracle specs and corresponding page information","type":"object"}},"title":"Response to get all active oracle specs","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get a list of all oracles specs that are defined against all markets","operationId":"TradingDataService_ListOracleSpecs","method":"get","path":"/api/v2/oracle/specs","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List oracle specs","description":{"content":"Get a list of all oracles specs that are defined against all markets","type":"text/plain"},"url":{"path":["api","v2","oracle","specs"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List oracle specs' (trading-data-service-list-oracle-specs)" @@ -83,7 +83,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -154,7 +154,7 @@ Conditions that the timestamps need to meet in order to be considered. Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-order-versions.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-order-versions.api.mdx index ee0590c74..e0597fb35 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-order-versions.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-order-versions.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all versions of an order in the order history" sidebar_label: "List order versions" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Order ID to list versions for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"orders":{"description":"Page of order versions and corresponding page information.","properties":{"edges":{"description":"Page of orders and their corresponding cursors.","items":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with an order submitted to a Vega node.","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"}},"type":"object","title":"v2OrderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2OrderConnection"}},"title":"Response that is received when listing possible order versions","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of all versions of an order in the order history","operationId":"TradingDataService_ListOrderVersions","method":"get","path":"/api/v2/order/versions/{orderId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List order versions","description":{"content":"Get a list of all versions of an order in the order history","type":"text/plain"},"url":{"path":["api","v2","order","versions",":orderId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Order ID to list versions for.","type":"text/plain"},"type":"any","value":"","key":"orderId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Order ID to list versions for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"orders":{"description":"Page of order versions and corresponding page information.","properties":{"edges":{"description":"Page of orders and their corresponding cursors.","items":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with an order submitted to a Vega node.","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"}},"type":"object","title":"v2OrderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2OrderConnection"}},"title":"Response that is received when listing possible order versions","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of all versions of an order in the order history","operationId":"TradingDataService_ListOrderVersions","method":"get","path":"/api/v2/order/versions/{orderId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List order versions","description":{"content":"Get a list of all versions of an order in the order history","type":"text/plain"},"url":{"path":["api","v2","order","versions",":orderId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Order ID to list versions for.","type":"text/plain"},"type":"any","value":"","key":"orderId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List order versions' (trading-data-service-list-order-versions)" @@ -46,7 +46,7 @@ Data associated with an order submitted to a Vega node. Pegged order details, used only if the order represents a pegged order. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. diff --git a/docs/api/rest/data-v2/trading-data-service-list-orders.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-orders.api.mdx index 31837b58d..faa899e5c 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-orders.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-orders.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of orders that match the given filters" sidebar_label: "List orders" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)","explode":true,"in":"query","name":"filter.statuses","required":false,"schema":{"items":{"enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given types.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","explode":true,"in":"query","name":"filter.types","required":false,"schema":{"items":{"enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given Time In Force.\n\n - TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","explode":true,"in":"query","name":"filter.timeInForces","required":false,"schema":{"items":{"enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":"array"}},{"description":"Indicator if liquidity provisions should be included or not in the list.","in":"query","name":"filter.excludeLiquidity","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those placed by the given party IDs.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the given market IDs.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given reference.","in":"query","name":"filter.reference","required":false,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"filter.dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"filter.dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict orders to those that are live. If not set, it is treated as being false.","in":"query","name":"filter.liveOnly","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"orders":{"description":"Page of orders data and corresponding page information.","properties":{"edges":{"description":"Page of orders and their corresponding cursors.","items":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with an order submitted to a Vega node.","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"}},"type":"object","title":"v2OrderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2OrderConnection"}},"title":"Response that is received from the query to list orders","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of orders that match the given filters","operationId":"TradingDataService_ListOrders","method":"get","path":"/api/v2/orders","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List orders","description":{"content":"Get a list of orders that match the given filters","type":"text/plain"},"url":{"path":["api","v2","orders"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)","type":"text/plain"},"key":"filter.statuses","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given types.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","type":"text/plain"},"key":"filter.types","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given Time In Force.\n\n - TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","type":"text/plain"},"key":"filter.timeInForces","value":""},{"disabled":false,"description":{"content":"Indicator if liquidity provisions should be included or not in the list.","type":"text/plain"},"key":"filter.excludeLiquidity","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed by the given party IDs.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed on the given market IDs.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given reference.","type":"text/plain"},"key":"filter.reference","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"filter.dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"filter.dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Restrict orders to those that are live. If not set, it is treated as being false.","type":"text/plain"},"key":"filter.liveOnly","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)","explode":true,"in":"query","name":"filter.statuses","required":false,"schema":{"items":{"enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given types.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","explode":true,"in":"query","name":"filter.types","required":false,"schema":{"items":{"enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given Time In Force.\n\n - TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","explode":true,"in":"query","name":"filter.timeInForces","required":false,"schema":{"items":{"enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":"array"}},{"description":"Indicator if liquidity provisions should be included or not in the list.","in":"query","name":"filter.excludeLiquidity","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those placed by the given party IDs.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the given market IDs.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given reference.","in":"query","name":"filter.reference","required":false,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"filter.dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"filter.dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict orders to those that are live. If not set, it is treated as being false.","in":"query","name":"filter.liveOnly","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"orders":{"description":"Page of orders data and corresponding page information.","properties":{"edges":{"description":"Page of orders and their corresponding cursors.","items":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with an order submitted to a Vega node.","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"}},"type":"object","title":"v2OrderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2OrderConnection"}},"title":"Response that is received from the query to list orders","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of orders that match the given filters","operationId":"TradingDataService_ListOrders","method":"get","path":"/api/v2/orders","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List orders","description":{"content":"Get a list of orders that match the given filters","type":"text/plain"},"url":{"path":["api","v2","orders"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)","type":"text/plain"},"key":"filter.statuses","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given types.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","type":"text/plain"},"key":"filter.types","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given Time In Force.\n\n - TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","type":"text/plain"},"key":"filter.timeInForces","value":""},{"disabled":false,"description":{"content":"Indicator if liquidity provisions should be included or not in the list.","type":"text/plain"},"key":"filter.excludeLiquidity","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed by the given party IDs.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed on the given market IDs.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given reference.","type":"text/plain"},"key":"filter.reference","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"filter.dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"filter.dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Restrict orders to those that are live. If not set, it is treated as being false.","type":"text/plain"},"key":"filter.liveOnly","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List orders' (trading-data-service-list-orders)" @@ -46,7 +46,7 @@ Data associated with an order submitted to a Vega node. Pegged order details, used only if the order represents a pegged order. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. diff --git a/docs/api/rest/data-v2/trading-data-service-list-paid-liquidity-fees.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-paid-liquidity-fees.api.mdx index 01774732c..10ee29730 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-paid-liquidity-fees.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-paid-liquidity-fees.api.mdx @@ -5,7 +5,7 @@ description: "List information about paid liquidity fees for a given market, or sidebar_label: "List paid liquidity fees data" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict fee data to those fees generated in the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict fee statistics to those paid in the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get paid liquidity fee statistics for. If omitted, the last complete epoch is used.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict fee data to those fees paid to the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Paid liquidity fees response.","properties":{"paidLiquidityFees":{"description":"Page of paid liquidity fees and corresponding page information.","properties":{"edges":{"description":"Page of paid liquidity fees data.","items":{"description":"Paid liquidity fees data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further data.","type":"string"},"node":{"description":"Paid liquidity fees data returned by the API.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid accross all parties.","type":"string"}},"type":"object","title":"v1PaidLiquidityFeesStats"}},"type":"object","title":"v2PaidLiquidityFeesEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2PaidLiquidityFeesConnection"}},"type":"object","title":"v2ListPaidLiquidityFeesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"List information about paid liquidity fees for a given market, or asset ID.","operationId":"TradingDataService_ListPaidLiquidityFees","method":"get","path":"/api/v2/liquidity/paidfees","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List paid liquidity fees data","description":{"content":"List information about paid liquidity fees for a given market, or asset ID.","type":"text/plain"},"url":{"path":["api","v2","liquidity","paidfees"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict fee data to those fees generated in the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict fee statistics to those paid in the given asset.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Epoch to get paid liquidity fee statistics for. If omitted, the last complete epoch is used.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Restrict fee data to those fees paid to the given parties.","type":"text/plain"},"key":"partyIds","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict fee data to those fees generated in the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict fee statistics to those paid in the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get paid liquidity fee statistics for. If omitted, the last complete epoch is used.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict fee data to those fees paid to the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Paid liquidity fees response.","properties":{"paidLiquidityFees":{"description":"Page of paid liquidity fees and corresponding page information.","properties":{"edges":{"description":"Page of paid liquidity fees data.","items":{"description":"Paid liquidity fees data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further data.","type":"string"},"node":{"description":"Paid liquidity fees data returned by the API.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid across all parties.","type":"string"}},"type":"object","title":"v1PaidLiquidityFeesStats"}},"type":"object","title":"v2PaidLiquidityFeesEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2PaidLiquidityFeesConnection"}},"type":"object","title":"v2ListPaidLiquidityFeesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"List information about paid liquidity fees for a given market, or asset ID.","operationId":"TradingDataService_ListPaidLiquidityFees","method":"get","path":"/api/v2/liquidity/paidfees","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List paid liquidity fees data","description":{"content":"List information about paid liquidity fees for a given market, or asset ID.","type":"text/plain"},"url":{"path":["api","v2","liquidity","paidfees"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict fee data to those fees generated in the given market.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Restrict fee statistics to those paid in the given asset.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Epoch to get paid liquidity fee statistics for. If omitted, the last complete epoch is used.","type":"text/plain"},"key":"epochSeq","value":""},{"disabled":false,"description":{"content":"Restrict fee data to those fees paid to the given parties.","type":"text/plain"},"key":"partyIds","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List paid liquidity fees data' (trading-data-service-list-paid-liquidity-fees)" @@ -46,7 +46,7 @@ Paid liquidity fees data returned by the API. Fees paid per party. -
  • Array [
  • ]
  • ]
  • pageInfo object
    +
  • Array [
  • ]
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. diff --git a/docs/api/rest/data-v2/trading-data-service-list-parties-profiles.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-parties-profiles.api.mdx new file mode 100644 index 000000000..32c69c4cd --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-list-parties-profiles.api.mdx @@ -0,0 +1,62 @@ +--- +id: trading-data-service-list-parties-profiles +title: "List parties' profiles" +description: "Get a list of profiles for multiple parties" +sidebar_label: "List parties' profiles" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"Restrict the returned profiles to only the given party IDs. If not set,\nall parties' profiles will be returned.","explode":true,"in":"query","name":"parties","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response from listing parties' profiles.","properties":{"profiles":{"description":"Page of profile data and corresponding page information.","properties":{"edges":{"description":"Page of profiles and their corresponding cursors.","items":{"description":"Party's profile data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with a party's profile.","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"},"partyId":{"description":"Party ID associated to the profile.","type":"string"}},"type":"object","title":"vegaPartyProfile"}},"type":"object","title":"v2PartyProfileEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2PartiesProfilesConnection"}},"type":"object","title":"v2ListPartiesProfilesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a list of profiles for multiple parties","operationId":"TradingDataService_ListPartiesProfiles","method":"get","path":"/api/v2/parties/profiles","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List parties' profiles","description":{"content":"Get a list of profiles for multiple parties","type":"text/plain"},"url":{"path":["api","v2","parties","profiles"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the returned profiles to only the given party IDs. If not set,\nall parties' profiles will be returned.","type":"text/plain"},"key":"parties","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List parties' profiles' (trading-data-service-list-parties-profiles)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## List parties' profiles + + + +Get a list of profiles for multiple parties + +
    Query Parameters
    + +A successful response. + +
    Schema
      profiles object
      + +Page of profile data and corresponding page information. + +
      edges object[]
      + +Page of profiles and their corresponding cursors. + +
    • Array [
    • node object
      + +Data associated with a party's profile. + +
      metadata object[]
      + +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. + +
    • Array [
    • ]
    • ]
    • pageInfo object
      + +Page information that is used for fetching further pages. + +
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-list-parties.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-parties.api.mdx index ff1658838..eebac6df9 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-parties.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-parties.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of parties" sidebar_label: "List parties" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict the returned party to only the given party ID. If not set, all parties will be returned.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"parties":{"description":"Page of parties data and corresponding page information.","properties":{"edges":{"description":"Page of parties and their corresponding cursors.","items":{"description":"Party data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with a party.","properties":{"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"}},"type":"object","title":"v2PartyEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2PartyConnection"}},"title":"Response from listing parties","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a list of parties","operationId":"TradingDataService_ListParties","method":"get","path":"/api/v2/parties","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List parties","description":{"content":"Get a list of parties","type":"text/plain"},"url":{"path":["api","v2","parties"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the returned party to only the given party ID. If not set, all parties will be returned.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict the returned party to only the given party ID. If not set, all parties will be returned.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"parties":{"description":"Page of parties data and corresponding page information.","properties":{"edges":{"description":"Page of parties and their corresponding cursors.","items":{"description":"Party data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with a party.","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"}},"type":"object","title":"v2PartyEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2PartyConnection"}},"title":"Response from listing parties","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a list of parties","operationId":"TradingDataService_ListParties","method":"get","path":"/api/v2/parties","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List parties","description":{"content":"Get a list of parties","type":"text/plain"},"url":{"path":["api","v2","parties"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the returned party to only the given party ID. If not set, all parties will be returned.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List parties' (trading-data-service-list-parties)" @@ -42,11 +42,16 @@ Page of parties and their corresponding cursors. Data associated with a party. -
  • ]
  • pageInfo object
    +
    metadata object[]
    + +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. + +
  • Array [
  • ]
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-party-margin-modes.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-party-margin-modes.api.mdx new file mode 100644 index 000000000..f983d0871 --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-list-party-margin-modes.api.mdx @@ -0,0 +1,57 @@ +--- +id: trading-data-service-list-party-margin-modes +title: "List margin modes per party per market" +description: "Get a list of all margin modes, or for a specific market ID, or party ID." +sidebar_label: "List margin modes per party per market" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"Market ID to filter for.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter for.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response containing party margin modes.","properties":{"partyMarginModes":{"description":"Page of party margin modes data and corresponding page information.","properties":{"edges":{"description":"Page of party margin modes data and their corresponding cursors.","items":{"description":"Party margin mode information and corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Party margin mode data.","properties":{"atEpoch":{"description":"Epoch at which the update happened.","format":"uint64","type":"string"},"marginFactor":{"description":"Margin factor for the market. Isolated mode only.","type":"string"},"marginMode":{"description":"Selected margin mode.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Unique ID of the market.","type":"string"},"maxTheoreticalLeverage":{"description":"Maximum theoretical leverage for the market. Isolated mode only.","type":"string"},"minTheoreticalMarginFactor":{"description":"Minimum theoretical margin factor for the market. Isolated mode only.","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object","title":"v2PartyMarginMode"}},"type":"object","title":"v2PartyMarginModeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2PartyMarginModesConnection"}},"type":"object","title":"v2ListPartyMarginModesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["MarginModes"],"description":"Get a list of all margin modes, or for a specific market ID, or party ID.","operationId":"TradingDataService_ListPartyMarginModes","method":"get","path":"/api/v2/margin-modes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List margin modes per party per market","description":{"content":"Get a list of all margin modes, or for a specific market ID, or party ID.","type":"text/plain"},"url":{"path":["api","v2","margin-modes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Market ID to filter for.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to filter for.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List margin modes per party per market' (trading-data-service-list-party-margin-modes)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## List margin modes per party per market + + + +Get a list of all margin modes, or for a specific market ID, or party ID. + +
    Query Parameters
    + +A successful response. + +
    Schema
      partyMarginModes object
      + +Page of party margin modes data and corresponding page information. + +
      edges object[]
      + +Page of party margin modes data and their corresponding cursors. + +
    • Array [
    • node object
      + +Party margin mode data. + +
    • ]
    • pageInfo object
      + +Page information that is used for fetching further pages. + +
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-list-protocol-upgrade-proposals.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-protocol-upgrade-proposals.api.mdx index 33707b3df..fac312daa 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-protocol-upgrade-proposals.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-protocol-upgrade-proposals.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of protocol upgrade proposals, optionally filtering on sidebar_label: "List protocol upgrade proposals" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict protocol upgrade proposals to those with the given status.\n\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected","in":"query","name":"status","required":false,"schema":{"default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"}},{"description":"Restrict protocol upgrade proposals to those approved by the given node ID.","in":"query","name":"approvedBy","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"protocolUpgradeProposals":{"description":"Page of protocol upgrade proposals and corresponding page information.","properties":{"edges":{"description":"Page of protocol upgrade proposals data and their corresponding cursors.","items":{"description":"Protocol upgrade proposal data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Protocol upgrade proposal data.","properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"title":"Status of the proposal","default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object","title":"v1ProtocolUpgradeEvent"}},"type":"object","title":"v2ProtocolUpgradeProposalEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of protocol upgrade proposals and corresponding page information","type":"object"}},"title":"Response type from a ListProtocolUpgradeProposals RPC call; a paginated list of protocol upgrade proposals","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of protocol upgrade proposals, optionally filtering on status or approver.","operationId":"TradingDataService_ListProtocolUpgradeProposals","method":"get","path":"/api/v2/upgrade/proposals","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List protocol upgrade proposals","description":{"content":"Get a list of protocol upgrade proposals, optionally filtering on status or approver.","type":"text/plain"},"url":{"path":["api","v2","upgrade","proposals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict protocol upgrade proposals to those with the given status.\n\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected","type":"text/plain"},"key":"status","value":""},{"disabled":false,"description":{"content":"Restrict protocol upgrade proposals to those approved by the given node ID.","type":"text/plain"},"key":"approvedBy","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict protocol upgrade proposals to those with the given status.\n\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected","in":"query","name":"status","required":false,"schema":{"default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"}},{"description":"Restrict protocol upgrade proposals to those approved by the given node ID.","in":"query","name":"approvedBy","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"protocolUpgradeProposals":{"description":"Page of protocol upgrade proposals and corresponding page information.","properties":{"edges":{"description":"Page of protocol upgrade proposals data and their corresponding cursors.","items":{"description":"Protocol upgrade proposal data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Protocol upgrade proposal data.","properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"title":"Status of the proposal","default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object","title":"v1ProtocolUpgradeEvent"}},"type":"object","title":"v2ProtocolUpgradeProposalEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of protocol upgrade proposals and corresponding page information","type":"object"}},"title":"Response type from a ListProtocolUpgradeProposals RPC call; a paginated list of protocol upgrade proposals","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of protocol upgrade proposals, optionally filtering on status or approver.","operationId":"TradingDataService_ListProtocolUpgradeProposals","method":"get","path":"/api/v2/upgrade/proposals","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List protocol upgrade proposals","description":{"content":"Get a list of protocol upgrade proposals, optionally filtering on status or approver.","type":"text/plain"},"url":{"path":["api","v2","upgrade","proposals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict protocol upgrade proposals to those with the given status.\n\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected","type":"text/plain"},"key":"status","value":""},{"disabled":false,"description":{"content":"Restrict protocol upgrade proposals to those approved by the given node ID.","type":"text/plain"},"key":"approvedBy","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List protocol upgrade proposals' (trading-data-service-list-protocol-upgrade-proposals)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-referral-set-referees.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-referral-set-referees.api.mdx index f62d57b4f..cfdef3108 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-referral-set-referees.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-referral-set-referees.api.mdx @@ -5,7 +5,7 @@ description: "List all referees that belong to a referral set." sidebar_label: "List referral set referees" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Referral set ID to retrieve information for.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","in":"query","name":"referrer","required":false,"schema":{"type":"string"}},{"description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","in":"query","name":"referee","required":false,"schema":{"type":"string"}},{"description":"Epochs to aggregate party volume and rewards over. If omitted, 30 epochs will be used.","in":"query","name":"aggregationEpochs","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"referralSetReferees":{"description":"Page of referral set referee data and corresponding page information.","properties":{"edges":{"description":"Page of referral set referee data and their corresponding cursors.","items":{"description":"Data about the Referral set's referees with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Referral set referee data.","properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Timestamp, in Unix nanoseconds, when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"referralSetId":{"description":"Unique ID of the referral set the referee joined.","type":"string"},"totalRefereeGeneratedRewards":{"description":"Total rewards generated by the referee over the aggregation period.","type":"string"},"totalRefereeNotionalTakerVolume":{"description":"Total notional volume of the referee's aggressive trades over the aggregation period.","type":"string"}},"title":"Data relating to referees that have joined a referral set","type":"object"}},"type":"object","title":"v2ReferralSetRefereeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ReferralSetRefereeConnection"}},"title":"Response containing information about a referral set's referees","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"List all referees that belong to a referral set.","operationId":"TradingDataService_ListReferralSetReferees","method":"get","path":"/api/v2/referral-sets/referees","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List referral set referees","description":{"content":"List all referees that belong to a referral set.","type":"text/plain"},"url":{"path":["api","v2","referral-sets","referees"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Referral set ID to retrieve information for.","type":"text/plain"},"key":"referralSetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","type":"text/plain"},"key":"referrer","value":""},{"disabled":false,"description":{"content":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","type":"text/plain"},"key":"referee","value":""},{"disabled":false,"description":{"content":"Epochs to aggregate party volume and rewards over. If omitted, 30 epochs will be used.","type":"text/plain"},"key":"aggregationEpochs","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Referral set ID to retrieve information for.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","in":"query","name":"referrer","required":false,"schema":{"type":"string"}},{"description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","in":"query","name":"referee","required":false,"schema":{"type":"string"}},{"description":"Epochs to aggregate party volume and rewards over. If omitted, 30 epochs will be used.","in":"query","name":"aggregationEpochs","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"referralSetReferees":{"description":"Page of referral set referee data and corresponding page information.","properties":{"edges":{"description":"Page of referral set referee data and their corresponding cursors.","items":{"description":"Data about the Referral set's referees with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Referral set referee data.","properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Timestamp, in Unix nanoseconds, when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"referralSetId":{"description":"Unique ID of the referral set the referee joined.","type":"string"},"totalRefereeGeneratedRewards":{"description":"Total rewards generated by the referee over the aggregation period.","type":"string"},"totalRefereeNotionalTakerVolume":{"description":"Total notional volume of the referee's aggressive trades over the aggregation period.","type":"string"}},"title":"Data relating to referees that have joined a referral set","type":"object"}},"type":"object","title":"v2ReferralSetRefereeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ReferralSetRefereeConnection"}},"title":"Response containing information about a referral set's referees","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"List all referees that belong to a referral set.","operationId":"TradingDataService_ListReferralSetReferees","method":"get","path":"/api/v2/referral-sets/referees","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List referral set referees","description":{"content":"List all referees that belong to a referral set.","type":"text/plain"},"url":{"path":["api","v2","referral-sets","referees"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Referral set ID to retrieve information for.","type":"text/plain"},"key":"referralSetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","type":"text/plain"},"key":"referrer","value":""},{"disabled":false,"description":{"content":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","type":"text/plain"},"key":"referee","value":""},{"disabled":false,"description":{"content":"Epochs to aggregate party volume and rewards over. If omitted, 30 epochs will be used.","type":"text/plain"},"key":"aggregationEpochs","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List referral set referees' (trading-data-service-list-referral-set-referees)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-referral-sets.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-referral-sets.api.mdx index 596753a85..e16141a69 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-referral-sets.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-referral-sets.api.mdx @@ -5,7 +5,7 @@ description: "List all referral sets, or a specific referral set if you know its sidebar_label: "List referral sets" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Referral set ID to retrieve information for.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","in":"query","name":"referrer","required":false,"schema":{"type":"string"}},{"description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","in":"query","name":"referee","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"referralSets":{"description":"Page of referral set data and corresponding page information.","properties":{"edges":{"description":"Page of referral set data and their corresponding cursors.","items":{"description":"Referral set data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Referral set data.","properties":{"createdAt":{"description":"Timestamp, in Unix nanoseconds, when the set was created.","format":"int64","type":"string"},"id":{"description":"Unique ID of the created set.","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"updatedAt":{"description":"Timestamp, in Unix nanoseconds, when the set was updated.","format":"int64","type":"string"}},"type":"object","title":"v2ReferralSet"}},"type":"object","title":"v2ReferralSetEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ReferralSetConnection"}},"title":"Response containing information about a referral set or sets","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"List all referral sets, or a specific referral set if you know its ID.","operationId":"TradingDataService_ListReferralSets","method":"get","path":"/api/v2/referral-sets","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List referral sets","description":{"content":"List all referral sets, or a specific referral set if you know its ID.","type":"text/plain"},"url":{"path":["api","v2","referral-sets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Referral set ID to retrieve information for.","type":"text/plain"},"key":"referralSetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","type":"text/plain"},"key":"referrer","value":""},{"disabled":false,"description":{"content":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","type":"text/plain"},"key":"referee","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Referral set ID to retrieve information for.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","in":"query","name":"referrer","required":false,"schema":{"type":"string"}},{"description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","in":"query","name":"referee","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"referralSets":{"description":"Page of referral set data and corresponding page information.","properties":{"edges":{"description":"Page of referral set data and their corresponding cursors.","items":{"description":"Referral set data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Referral set data.","properties":{"createdAt":{"description":"Timestamp, in Unix nanoseconds, when the set was created.","format":"int64","type":"string"},"id":{"description":"Unique ID of the created set.","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"updatedAt":{"description":"Timestamp, in Unix nanoseconds, when the set was updated.","format":"int64","type":"string"}},"type":"object","title":"v2ReferralSet"}},"type":"object","title":"v2ReferralSetEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2ReferralSetConnection"}},"title":"Response containing information about a referral set or sets","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"List all referral sets, or a specific referral set if you know its ID.","operationId":"TradingDataService_ListReferralSets","method":"get","path":"/api/v2/referral-sets","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List referral sets","description":{"content":"List all referral sets, or a specific referral set if you know its ID.","type":"text/plain"},"url":{"path":["api","v2","referral-sets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Referral set ID to retrieve information for.","type":"text/plain"},"key":"referralSetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","type":"text/plain"},"key":"referrer","value":""},{"disabled":false,"description":{"content":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","type":"text/plain"},"key":"referee","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List referral sets' (trading-data-service-list-referral-sets)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-reward-summaries.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-reward-summaries.api.mdx index 8083c463a..f36fc50f0 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-reward-summaries.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-reward-summaries.api.mdx @@ -8,7 +8,7 @@ If no data is provided, all reward summaries will be returned grouped by party a sidebar_label: "List reward summaries" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict the reward summary to rewards paid to the given parties.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict the reward summary to rewards paid in the given assets.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"summaries":{"description":"Page of rewards details data and corresponding page information.","items":{"properties":{"amount":{"description":"Total amount of rewards paid in the asset. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"partyId":{"description":"Party ID to whom the reward is being paid.","type":"string"}},"title":"Details for rewards for a single asset","type":"object"},"type":"array"}},"title":"Response from listing reward details in for a single party","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of reward summaries where the reward amount is the total rewards received over all epochs\nper party ID and asset ID.\nRequest parameters are optional party ID and asset ID.\nIf no data is provided, all reward summaries will be returned grouped by party and asset ID.","operationId":"TradingDataService_ListRewardSummaries","method":"get","path":"/api/v2/rewards/summaries","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List reward summaries","description":{"content":"Get a list of reward summaries where the reward amount is the total rewards received over all epochs\nper party ID and asset ID.\nRequest parameters are optional party ID and asset ID.\nIf no data is provided, all reward summaries will be returned grouped by party and asset ID.","type":"text/plain"},"url":{"path":["api","v2","rewards","summaries"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the reward summary to rewards paid to the given parties.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict the reward summary to rewards paid in the given assets.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict the reward summary to rewards paid to the given parties.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict the reward summary to rewards paid in the given assets.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"summaries":{"description":"Page of rewards details data and corresponding page information.","items":{"properties":{"amount":{"description":"Total amount of rewards paid in the asset. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"partyId":{"description":"Party ID to whom the reward is being paid.","type":"string"}},"title":"Details for rewards for a single asset","type":"object"},"type":"array"}},"title":"Response from listing reward details in for a single party","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of reward summaries where the reward amount is the total rewards received over all epochs\nper party ID and asset ID.\nRequest parameters are optional party ID and asset ID.\nIf no data is provided, all reward summaries will be returned grouped by party and asset ID.","operationId":"TradingDataService_ListRewardSummaries","method":"get","path":"/api/v2/rewards/summaries","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List reward summaries","description":{"content":"Get a list of reward summaries where the reward amount is the total rewards received over all epochs\nper party ID and asset ID.\nRequest parameters are optional party ID and asset ID.\nIf no data is provided, all reward summaries will be returned grouped by party and asset ID.","type":"text/plain"},"url":{"path":["api","v2","rewards","summaries"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the reward summary to rewards paid to the given parties.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict the reward summary to rewards paid in the given assets.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List reward summaries' (trading-data-service-list-reward-summaries)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-rewards.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-rewards.api.mdx index 85be49294..cecf75edf 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-rewards.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-rewards.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of rewards that match the provided criteria. If no filt sidebar_label: "List rewards" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict rewards data to those that were received by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict rewards data to those that were paid with the given asset ID.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict rewards data to those that were paid after and including the given epoch ID.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict rewards data to those that were paid up to and including the given epoch ID.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"rewards":{"description":"Page of rewards data and corresponding page information.","properties":{"edges":{"description":"Page of rewards data items and their corresponding cursors.","items":{"description":"Rewards data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Details for a single reward payment.","properties":{"amount":{"description":"Amount paid as a reward. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"epoch":{"description":"Epoch in which the reward is being paid.","format":"uint64","type":"string"},"lockedUntilEpoch":{"description":"The epoch when the reward is being released.","format":"uint64","type":"string"},"marketId":{"description":"Market ID in which the reward is being paid.","type":"string"},"partyId":{"description":"Party ID to whom the reward is being paid.","type":"string"},"percentageOfTotal":{"description":"Percentage of total rewards paid in the epoch.","type":"string"},"receivedAt":{"description":"Timestamp at which the reward was paid as Unix nano time.","format":"int64","type":"string"},"rewardType":{"description":"Type of reward being paid.","type":"string"}},"title":"Details for a single reward payment","type":"object"}},"type":"object","title":"v2RewardEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2RewardsConnection"}},"title":"Response for listing reward details for a single party","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned.","operationId":"TradingDataService_ListRewards","method":"get","path":"/api/v2/rewards","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List rewards","description":{"content":"Get a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned.","type":"text/plain"},"url":{"path":["api","v2","rewards"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict rewards data to those that were received by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict rewards data to those that were paid with the given asset ID.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict rewards data to those that were paid after and including the given epoch ID.","type":"text/plain"},"key":"fromEpoch","value":""},{"disabled":false,"description":{"content":"Restrict rewards data to those that were paid up to and including the given epoch ID.","type":"text/plain"},"key":"toEpoch","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict rewards data to those that were received by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict rewards data to those that were paid with the given asset ID.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict rewards data to those that were paid after and including the given epoch ID.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict rewards data to those that were paid up to and including the given epoch ID.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Filter for rewards paid if the party is a member of the given team.","in":"query","name":"teamId","required":false,"schema":{"type":"string"}},{"description":"Filter for rewards paid if the party participated in the given game.","in":"query","name":"gameId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"rewards":{"description":"Page of rewards data and corresponding page information.","properties":{"edges":{"description":"Page of rewards data items and their corresponding cursors.","items":{"description":"Rewards data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Details for a single reward payment.","properties":{"amount":{"description":"Amount paid as a reward. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"epoch":{"description":"Epoch in which the reward is being paid.","format":"uint64","type":"string"},"gameId":{"description":"ID of the game the reward payment was made for if the payment was made for participation in a game.","type":"string"},"lockedUntilEpoch":{"description":"The epoch when the reward is being released.","format":"uint64","type":"string"},"marketId":{"description":"Market ID in which the reward is being paid.","type":"string"},"partyId":{"description":"Party ID to whom the reward is being paid.","type":"string"},"percentageOfTotal":{"description":"Percentage of total rewards paid in the epoch.","type":"string"},"quantumAmount":{"description":"Amount paid as a reward, expressed in asset's quantum unit.","type":"string"},"receivedAt":{"description":"Timestamp at which the reward was paid as Unix nano time.","format":"int64","type":"string"},"rewardType":{"description":"Type of reward being paid.","type":"string"},"teamId":{"description":"ID of the team the party is a member of, if the party is a member of a participating team,\nand the reward payment was made for participation in a game.\nThis field is currently only populated by the rewards API.","type":"string"}},"title":"Details for a single reward payment","type":"object"}},"type":"object","title":"v2RewardEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2RewardsConnection"}},"title":"Response for listing reward details for a single party","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned.","operationId":"TradingDataService_ListRewards","method":"get","path":"/api/v2/rewards","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List rewards","description":{"content":"Get a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned.","type":"text/plain"},"url":{"path":["api","v2","rewards"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict rewards data to those that were received by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict rewards data to those that were paid with the given asset ID.","type":"text/plain"},"key":"assetId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict rewards data to those that were paid after and including the given epoch ID.","type":"text/plain"},"key":"fromEpoch","value":""},{"disabled":false,"description":{"content":"Restrict rewards data to those that were paid up to and including the given epoch ID.","type":"text/plain"},"key":"toEpoch","value":""},{"disabled":false,"description":{"content":"Filter for rewards paid if the party is a member of the given team.","type":"text/plain"},"key":"teamId","value":""},{"disabled":false,"description":{"content":"Filter for rewards paid if the party participated in the given game.","type":"text/plain"},"key":"gameId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List rewards' (trading-data-service-list-rewards)" @@ -26,7 +26,7 @@ import TabItem from "@theme/TabItem"; Get a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned. -
    Query Parameters
    +
    Query Parameters
    A successful response. @@ -42,11 +42,11 @@ Page of rewards data items and their corresponding cursors. Details for a single reward payment. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-stop-orders.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-stop-orders.api.mdx index aac40511a..71da2e8cb 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-stop-orders.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-stop-orders.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of stop orders that match the given filters" sidebar_label: "List stop orders" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","explode":true,"in":"query","name":"filter.statuses","required":false,"schema":{"items":{"enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given expiry strategies.\n\n - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","explode":true,"in":"query","name":"filter.expiryStrategies","required":false,"schema":{"items":{"enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string"},"type":"array"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"filter.dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"filter.dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict orders to those placed by the given party IDs.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the given market IDs.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Live stop orders only.","in":"query","name":"filter.liveOnly","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is received from the query to list stop orders.","properties":{"orders":{"description":"Page of stop orders data and corresponding page information.","properties":{"edges":{"description":"Page of stop orders and their corresponding cursors.","items":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with an order submitted to a Vega node.","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION"],"type":"string"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object","title":"v1StopOrderEvent"}},"type":"object","title":"v2StopOrderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2StopOrderConnection"}},"type":"object","title":"v2ListStopOrdersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of stop orders that match the given filters","operationId":"TradingDataService_ListStopOrders","method":"get","path":"/api/v2/stoporders","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List stop orders","description":{"content":"Get a list of stop orders that match the given filters","type":"text/plain"},"url":{"path":["api","v2","stoporders"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"text/plain"},"key":"filter.statuses","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given expiry strategies.\n\n - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","type":"text/plain"},"key":"filter.expiryStrategies","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"filter.dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"filter.dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed by the given party IDs.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed on the given market IDs.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Live stop orders only.","type":"text/plain"},"key":"filter.liveOnly","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","explode":true,"in":"query","name":"filter.statuses","required":false,"schema":{"items":{"enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given expiry strategies.\n\n - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","explode":true,"in":"query","name":"filter.expiryStrategies","required":false,"schema":{"items":{"enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string"},"type":"array"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"filter.dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"filter.dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict orders to those placed by the given party IDs.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the given market IDs.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Live stop orders only.","in":"query","name":"filter.liveOnly","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is received from the query to list stop orders.","properties":{"orders":{"description":"Page of stop orders data and corresponding page information.","properties":{"edges":{"description":"Page of stop orders and their corresponding cursors.","items":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with an order submitted to a Vega node.","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION","REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION","REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES"],"type":"string"},"sizeOverrideSetting":{"title":"Size override setting","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"Size override value","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object","title":"v1StopOrderEvent"}},"type":"object","title":"v2StopOrderEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2StopOrderConnection"}},"type":"object","title":"v2ListStopOrdersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of stop orders that match the given filters","operationId":"TradingDataService_ListStopOrders","method":"get","path":"/api/v2/stoporders","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List stop orders","description":{"content":"Get a list of stop orders that match the given filters","type":"text/plain"},"url":{"path":["api","v2","stoporders"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"text/plain"},"key":"filter.statuses","value":""},{"disabled":false,"description":{"content":"Restrict orders to those with the given expiry strategies.\n\n - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","type":"text/plain"},"key":"filter.expiryStrategies","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"filter.dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"filter.dateRange.endTimestamp","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed by the given party IDs.","type":"text/plain"},"key":"filter.partyIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed on the given market IDs.","type":"text/plain"},"key":"filter.marketIds","value":""},{"disabled":false,"description":{"content":"Live stop orders only.","type":"text/plain"},"key":"filter.liveOnly","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List stop orders' (trading-data-service-list-stop-orders)" @@ -42,7 +42,7 @@ Page of stop orders and their corresponding cursors. Data associated with an order submitted to a Vega node. -
    stopOrder object
    submission object
    +
    stopOrder object
    sizeOverrideValue object
    submission object
    A command that submits an order to the Vega network for a given market. @@ -58,7 +58,7 @@ Pegged order details. If set, the order's price will be offset from a particular Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-successor-markets.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-successor-markets.api.mdx index d99701019..ae9d7e46b 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-successor-markets.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-successor-markets.api.mdx @@ -7,7 +7,7 @@ of the market at position i+1." sidebar_label: "List successor markets" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID that is a member of the succession line. This can be the original market\nor any subsequent child market that succeeded it.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Flag to indicate whether or not to include the full succession line, or only list\nthe children of the given market ID. If true, the full succession line is included.","in":"query","name":"includeFullHistory","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response from a list successor markets request.","properties":{"successorMarkets":{"description":"List of markets in the succession line.","properties":{"edges":{"description":"Page of successor markets and their cursors.","items":{"properties":{"cursor":{"description":"Cursor identifying the record for pagination control.","type":"string"},"node":{"description":"Successor market record.","properties":{"market":{"description":"The market that is a member of the succession line.","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"},"proposals":{"description":"All proposals for child markets that have the market as a parent.","items":{"properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"},"type":"array"}},"type":"object","title":"v2SuccessorMarket"}},"title":"Successor market record with the corresponding cursor for paginated results","type":"object"},"type":"array"},"pageInfo":{"description":"Page information for pagination control.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2SuccessorMarketConnection"}},"type":"object","title":"v2ListSuccessorMarketsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Given a market ID, return the full lineage of markets since inception, or all successor markets since and including\nthe given market ID. The markets will be returned in succession order, i.e. the market at position i will be the parent\nof the market at position i+1.","operationId":"TradingDataService_ListSuccessorMarkets","method":"get","path":"/api/v2/successor_markets/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List successor markets","description":{"content":"Given a market ID, return the full lineage of markets since inception, or all successor markets since and including\nthe given market ID. The markets will be returned in succession order, i.e. the market at position i will be the parent\nof the market at position i+1.","type":"text/plain"},"url":{"path":["api","v2","successor_markets",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Flag to indicate whether or not to include the full succession line, or only list\nthe children of the given market ID. If true, the full succession line is included.","type":"text/plain"},"key":"includeFullHistory","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID that is a member of the succession line. This can be the original market\nor any subsequent child market that succeeded it.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID that is a member of the succession line. This can be the original market\nor any subsequent child market that succeeded it.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Flag to indicate whether or not to include the full succession line, or only list\nthe children of the given market ID. If true, the full succession line is included.","in":"query","name":"includeFullHistory","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response from a list successor markets request.","properties":{"successorMarkets":{"description":"List of markets in the succession line.","properties":{"edges":{"description":"Page of successor markets and their cursors.","items":{"properties":{"cursor":{"description":"Cursor identifying the record for pagination control.","type":"string"},"node":{"description":"Successor market record.","properties":{"market":{"description":"The market that is a member of the succession line.","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"},"proposals":{"description":"All proposals for child markets that have the market as a parent.","items":{"properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"proposalType":{"description":"Type of proposal this data is for.","default":"TYPE_SINGLE_OR_UNSPECIFIED","enum":["TYPE_SINGLE_OR_UNSPECIFIED","TYPE_BATCH"],"title":"Proposal type","type":"string"},"proposals":{"description":"If proposal type is batch, proposals will contain all the proposals that are make up the batch.","items":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"type":"array"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"},"type":"array"}},"type":"object","title":"v2SuccessorMarket"}},"title":"Successor market record with the corresponding cursor for paginated results","type":"object"},"type":"array"},"pageInfo":{"description":"Page information for pagination control.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2SuccessorMarketConnection"}},"type":"object","title":"v2ListSuccessorMarketsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Given a market ID, return the full lineage of markets since inception, or all successor markets since and including\nthe given market ID. The markets will be returned in succession order, i.e. the market at position i will be the parent\nof the market at position i+1.","operationId":"TradingDataService_ListSuccessorMarkets","method":"get","path":"/api/v2/successor_markets/{marketId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List successor markets","description":{"content":"Given a market ID, return the full lineage of markets since inception, or all successor markets since and including\nthe given market ID. The markets will be returned in succession order, i.e. the market at position i will be the parent\nof the market at position i+1.","type":"text/plain"},"url":{"path":["api","v2","successor_markets",":marketId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Flag to indicate whether or not to include the full succession line, or only list\nthe children of the given market ID. If true, the full succession line is included.","type":"text/plain"},"key":"includeFullHistory","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Market ID that is a member of the succession line. This can be the original market\nor any subsequent child market that succeeded it.","type":"text/plain"},"type":"any","value":"","key":"marketId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List successor markets' (trading-data-service-list-successor-markets)" @@ -58,7 +58,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -70,7 +78,111 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    +
    markPriceConfiguration object
    + +Mark price calculation configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    Timestamps for when the market state changes. @@ -142,7 +254,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -248,7 +360,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -327,7 +439,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -366,7 +478,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -472,7 +584,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -539,7 +755,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -575,47 +791,39 @@ All proposals for child markets that have the market as a parent. All NO votes against the proposal above. -
  • Array [
  • ]
  • noParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • noParty object
    All latest NO votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
    proposal object
    - -Governance proposal that is being voted on. - -
    rationale object
    - -Rationale behind a proposal. - -
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    -Proposal configuration and the actual change that is meant to be executed when proposal is enacted. - -
    cancelTransfer object
    - -Cancel a governance transfer. +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. -
    changes object
    newAsset object
    +
    proposal object
    -Proposal change for creating new assets on Vega. +Governance proposal that is being voted on. -
    changes object
    +
    batchTerms object
    -Configuration of the new asset. +Batch proposal terms. -
    builtinAsset object
    +
    changes object[]
    -Vega built-in asset. +List of individual changes included in the batch proposal. -
    erc20 object
    +
  • Array [
  • cancelTransfer object
    -Ethereum ERC20 asset. +Proposal change to cancel a governance initiated transfe. -
    newMarket object
    +
    changes object
    newMarket object
    -Proposal change for creating new futures market on Vega. +Proposal change for creating new futures market.
    changes object
    @@ -666,7 +874,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -766,7 +974,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -841,7 +1049,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -874,7 +1082,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -974,7 +1182,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1041,37 +1249,6401 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Spot. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    liquidityMonitoringParameters object
    +
    dataSourcesSpec object[]
    -Liquidity monitoring parameters. +Additional price sources to be used for index price calculation. -
    targetStakeParameters object
    +
  • Array [
  • external object
    -Specifies parameters related to target stake calculation. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    liquiditySlaParameters object
    logNormal object
    +
    ethOracle object
    -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. +Contains the data specification that is received from Ethereum sources. -
    params object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Risk model parameters for log normal. +Conditions that should be matched by the data to be +considered of interest. -
    priceMonitoringParameters object
    +
  • Array [
  • ]
  • key object
    -Price monitoring parameters. +Data source's data property key targeted by the filter. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
  • ]
  • normalisers object[]
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    successor object
    +
  • Array [
  • ]
  • trigger object
    -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market on Vega. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • proposals object[]
    + +If proposal type is batch, proposals will contain all the proposals that are make up the batch. + +
  • Array [
  • batchTerms object
    + +Batch proposal terms. + +
    changes object[]
    + +List of individual changes included in the batch proposal. + +
  • Array [
  • cancelTransfer object
    + +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set.
    newSpotMarket object
    @@ -1091,11 +7663,111 @@ Future.
    dataSourceSpecBinding object
    -Binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement. +The external data source spec describing the data source of trading termination.
    external object
    @@ -1126,7 +7798,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1193,9 +7865,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -The external data source spec describing the data source of trading termination. +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement.
    external object
    @@ -1226,7 +7906,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1293,17 +7973,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -1334,7 +8006,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1401,11 +8073,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Data source spec describing the data source for settlement schedule. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1434,7 +8110,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1501,11 +8177,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1537,7 +8217,7 @@ Proposal change for a governance transfer. Configuration for a new transfer. -
    oneOff object
    recurring object
    dispatchStrategy object
    +
    oneOff object
    recurring object
    dispatchStrategy object
    Optional parameter defining how a transfer is dispatched. @@ -1545,7 +8225,7 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • updateAsset object
    +
  • Array [
  • ]
  • updateAsset object
    Proposal change for updating an asset. @@ -1579,7 +8259,9 @@ The binding between the data source spec and the settlement data.
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1610,7 +8292,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1679,7 +8361,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -The data source spec describing the data source for trading termination. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1710,7 +8394,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1777,7 +8461,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    Perpetual. @@ -1785,9 +8469,11 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -Data source spec describing the data source for settlement. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1818,7 +8504,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1887,7 +8573,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement schedule. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1918,7 +8606,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1985,7 +8777,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -2001,7 +8801,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -2049,7 +8953,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -2083,21 +8991,29 @@ Defined benefit tiers in increasing order. First element will give Tier 1, second element will give Tier 2, and so on. Determines the level of benefit a party can expect based on performance criteria. -
  • Array [
  • ]
  • yes object[]
    +
  • Array [
  • ]
  • ]
  • yes object[]
    All YES votes in favour of the proposal above. -
  • Array [
  • ]
  • yesParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • yesParty object
    All latest YES votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
  • ]
  • ]
  • pageInfo object
    +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • ]
  • pageInfo object
    Page information for pagination control. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-team-members-statistics.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-team-members-statistics.api.mdx new file mode 100644 index 000000000..cf1f78c64 --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-list-team-members-statistics.api.mdx @@ -0,0 +1,64 @@ +--- +id: trading-data-service-list-team-members-statistics +title: "List team members' statistics" +description: "Get the statistics for all members of a given team, or for a specific member by using party ID, over a number of epochs. +If a team does not have at least the number of epochs' worth of data, it is ignored." +sidebar_label: "List team members' statistics" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"Restrict team statistics to those with the given team ID.","in":"path","name":"teamId","required":true,"schema":{"type":"string"}},{"description":"Restrict team members' statistics to those with the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","in":"query","name":"aggregationEpochs","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for the list team members' statistics request containing the statistics.","properties":{"statistics":{"description":"Page of team members' statistics data and corresponding page information.","properties":{"edges":{"description":"Page of team member data and their corresponding cursors.","items":{"description":"Team member data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team member's statistics data.","properties":{"gamesPlayed":{"description":"List of games played over the requested epoch period.","items":{"type":"string"},"type":"array"},"partyId":{"description":"Party ID the statistics are related to.","type":"string"},"quantumRewards":{"description":"List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.","items":{"properties":{"epoch":{"description":"Epoch for which this information is valid.","format":"uint64","type":"string"},"totalQuantumRewards":{"description":"Total rewards accumulated over the epoch period, expressed in quantum value.","type":"string"}},"type":"object","title":"v2QuantumRewardsPerEpoch"},"type":"array"},"totalGamesPlayed":{"description":"Total number of games played.","format":"uint64","type":"string"},"totalQuantumRewards":{"description":"Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"},"totalQuantumVolume":{"description":"Total of volume accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"}},"type":"object","title":"v2TeamMemberStatistics"}},"type":"object","title":"v2TeamMemberStatisticsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamMembersStatisticsConnection"}},"type":"object","title":"v2ListTeamMembersStatisticsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get the statistics for all members of a given team, or for a specific member by using party ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","operationId":"TradingDataService_ListTeamMembersStatistics","method":"get","path":"/api/v2/teams/{teamId}/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List team members' statistics","description":{"content":"Get the statistics for all members of a given team, or for a specific member by using party ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","type":"text/plain"},"url":{"path":["api","v2","teams",":teamId","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict team members' statistics to those with the given party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","type":"text/plain"},"key":"aggregationEpochs","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Restrict team statistics to those with the given team ID.","type":"text/plain"},"type":"any","value":"","key":"teamId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List team members' statistics' (trading-data-service-list-team-members-statistics)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## List team members' statistics + + + +Get the statistics for all members of a given team, or for a specific member by using party ID, over a number of epochs. +If a team does not have at least the number of epochs' worth of data, it is ignored. + +
    Path Parameters
    Query Parameters
    + +A successful response. + +
    Schema
      statistics object
      + +Page of team members' statistics data and corresponding page information. + +
      edges object[]
      + +Page of team member data and their corresponding cursors. + +
    • Array [
    • node object
      + +Team member's statistics data. + +
      quantumRewards object[]
      + +List of rewards over the requested epoch period, expressed in quantum +value for each epoch. + +
    • Array [
    • ]
    • ]
    • pageInfo object
      + +Page information that is used for fetching further pages. + +
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-list-team-referee-history.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-team-referee-history.api.mdx index 684d9306b..b571053b1 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-team-referee-history.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-team-referee-history.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of a referee's team history, i.e. the teams that a refe sidebar_label: "List referee team history" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party ID to list referee history for.","in":"path","name":"referee","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when listing the referee history for a given team.","properties":{"teamRefereeHistory":{"description":"Page of team referee history data and corresponding page information.","properties":{"edges":{"description":"Page of team referee history data and their corresponding cursors.","items":{"description":"Team referee history data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team referee data.","properties":{"joinedAt":{"description":"Timestamp in Unix nanoseconds when the party joined the team.","format":"int64","type":"string"},"joinedAtEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"teamId":{"description":"ID of the team the referee joined.","type":"string"}},"title":"A referee's team change information","type":"object"}},"type":"object","title":"v2TeamRefereeHistoryEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamRefereeHistoryConnection"}},"type":"object","title":"v2ListTeamRefereeHistoryResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of a referee's team history, i.e. the teams that a referee has been a member of and transferred from/to.","operationId":"TradingDataService_ListTeamRefereeHistory","method":"get","path":"/api/v2/teams/referees/history/{referee}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List referee team history","description":{"content":"Get a list of a referee's team history, i.e. the teams that a referee has been a member of and transferred from/to.","type":"text/plain"},"url":{"path":["api","v2","teams","referees","history",":referee"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID to list referee history for.","type":"text/plain"},"type":"any","value":"","key":"referee"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party ID to list referee history for.","in":"path","name":"referee","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when listing the referee history for a given team.","properties":{"teamRefereeHistory":{"description":"Page of team referee history data and corresponding page information.","properties":{"edges":{"description":"Page of team referee history data and their corresponding cursors.","items":{"description":"Team referee history data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team referee data.","properties":{"joinedAt":{"description":"Timestamp in Unix nanoseconds when the party joined the team.","format":"int64","type":"string"},"joinedAtEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"teamId":{"description":"ID of the team the referee joined.","type":"string"}},"title":"A referee's team change information","type":"object"}},"type":"object","title":"v2TeamRefereeHistoryEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamRefereeHistoryConnection"}},"type":"object","title":"v2ListTeamRefereeHistoryResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of a referee's team history, i.e. the teams that a referee has been a member of and transferred from/to.","operationId":"TradingDataService_ListTeamRefereeHistory","method":"get","path":"/api/v2/teams/referees/history/{referee}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List referee team history","description":{"content":"Get a list of a referee's team history, i.e. the teams that a referee has been a member of and transferred from/to.","type":"text/plain"},"url":{"path":["api","v2","teams","referees","history",":referee"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Party ID to list referee history for.","type":"text/plain"},"type":"any","value":"","key":"referee"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List referee team history' (trading-data-service-list-team-referee-history)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-team-referees.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-team-referees.api.mdx index 3847397e4..387230af7 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-team-referees.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-team-referees.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all referees for a given team ID" sidebar_label: "List team referees" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Team ID to list referees for.","in":"path","name":"teamId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when listing the referees for a given team.","properties":{"teamReferees":{"description":"Page of team referee data and corresponding page information.","properties":{"edges":{"description":"Page of team referee data and their corresponding cursors.","items":{"description":"Team referee data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team referee data.","properties":{"joinedAt":{"description":"Timestamp in Unix nanoseconds when the party joined the team.","format":"int64","type":"string"},"joinedAtEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"referee":{"description":"Party that joined the team.","type":"string"},"teamId":{"description":"ID of the team the referee joined.","type":"string"}},"title":"A team's referee info","type":"object"}},"type":"object","title":"v2TeamRefereeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamRefereeConnection"}},"type":"object","title":"v2ListTeamRefereesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of all referees for a given team ID","operationId":"TradingDataService_ListTeamReferees","method":"get","path":"/api/v2/teams/referees/{teamId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List team referees","description":{"content":"Get a list of all referees for a given team ID","type":"text/plain"},"url":{"path":["api","v2","teams","referees",":teamId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Team ID to list referees for.","type":"text/plain"},"type":"any","value":"","key":"teamId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Team ID to list referees for.","in":"path","name":"teamId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response that is sent when listing the referees for a given team.","properties":{"teamReferees":{"description":"Page of team referee data and corresponding page information.","properties":{"edges":{"description":"Page of team referee data and their corresponding cursors.","items":{"description":"Team referee data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team referee data.","properties":{"joinedAt":{"description":"Timestamp in Unix nanoseconds when the party joined the team.","format":"int64","type":"string"},"joinedAtEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"referee":{"description":"Party that joined the team.","type":"string"},"teamId":{"description":"ID of the team the referee joined.","type":"string"}},"title":"A team's referee info","type":"object"}},"type":"object","title":"v2TeamRefereeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamRefereeConnection"}},"type":"object","title":"v2ListTeamRefereesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of all referees for a given team ID","operationId":"TradingDataService_ListTeamReferees","method":"get","path":"/api/v2/teams/referees/{teamId}","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List team referees","description":{"content":"Get a list of all referees for a given team ID","type":"text/plain"},"url":{"path":["api","v2","teams","referees",":teamId"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) Team ID to list referees for.","type":"text/plain"},"type":"any","value":"","key":"teamId"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List team referees' (trading-data-service-list-team-referees)" diff --git a/docs/api/rest/data-v2/trading-data-service-list-teams-statistics.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-teams-statistics.api.mdx new file mode 100644 index 000000000..052bafc03 --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-list-teams-statistics.api.mdx @@ -0,0 +1,64 @@ +--- +id: trading-data-service-list-teams-statistics +title: "List teams statistics" +description: "Get the statistics of all teams, or for a specific team by using team ID, over a number of epochs. +If a team does not have at least the number of epochs' worth of data, it is ignored." +sidebar_label: "List teams statistics" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"Restrict team statistics to those with the given team ID.","in":"query","name":"teamId","required":false,"schema":{"type":"string"}},{"description":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","in":"query","name":"aggregationEpochs","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for the list teams' statistics request containing the statistics.","properties":{"statistics":{"description":"Page of teams' statistics data and corresponding page information.","properties":{"edges":{"description":"Page of team data and their corresponding cursors.","items":{"description":"Team data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team's statistics data.","properties":{"gamesPlayed":{"description":"List of games played over the requested epoch period.","items":{"type":"string"},"type":"array"},"quantumRewards":{"description":"List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.","items":{"properties":{"epoch":{"description":"Epoch for which this information is valid.","format":"uint64","type":"string"},"totalQuantumRewards":{"description":"Total rewards accumulated over the epoch period, expressed in quantum value.","type":"string"}},"type":"object","title":"v2QuantumRewardsPerEpoch"},"type":"array"},"teamId":{"description":"Team ID the statistics are related to.","type":"string"},"totalGamesPlayed":{"description":"Total of games played.","format":"uint64","type":"string"},"totalQuantumRewards":{"description":"Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"},"totalQuantumVolume":{"description":"Total of volume accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"}},"type":"object","title":"v2TeamStatistics"}},"type":"object","title":"v2TeamStatisticsEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamsStatisticsConnection"}},"type":"object","title":"v2ListTeamsStatisticsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get the statistics of all teams, or for a specific team by using team ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","operationId":"TradingDataService_ListTeamsStatistics","method":"get","path":"/api/v2/teams/stats","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List teams statistics","description":{"content":"Get the statistics of all teams, or for a specific team by using team ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","type":"text/plain"},"url":{"path":["api","v2","teams","stats"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict team statistics to those with the given team ID.","type":"text/plain"},"key":"teamId","value":""},{"disabled":false,"description":{"content":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","type":"text/plain"},"key":"aggregationEpochs","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List teams statistics' (trading-data-service-list-teams-statistics)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## List teams statistics + + + +Get the statistics of all teams, or for a specific team by using team ID, over a number of epochs. +If a team does not have at least the number of epochs' worth of data, it is ignored. + +
    Query Parameters
    + +A successful response. + +
    Schema
      statistics object
      + +Page of teams' statistics data and corresponding page information. + +
      edges object[]
      + +Page of team data and their corresponding cursors. + +
    • Array [
    • node object
      + +Team's statistics data. + +
      quantumRewards object[]
      + +List of rewards over the requested epoch period, expressed in quantum +value for each epoch. + +
    • Array [
    • ]
    • ]
    • pageInfo object
      + +Page information that is used for fetching further pages. + +
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-list-teams.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-teams.api.mdx index dbc303641..3a1c86bba 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-teams.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-teams.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all teams, or for a specific team by using team ID, sidebar_label: "List teams" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict teams to those with the given team ID.","in":"query","name":"teamId","required":false,"schema":{"type":"string"}},{"description":"Restrict teams to those where the given party is a referrer or a referee.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for the list teams request containing the team information.","properties":{"teams":{"description":"Page of team data and corresponding page information.","properties":{"edges":{"description":"Page of team data and their corresponding cursors.","items":{"description":"Team data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team data.","properties":{"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"createdAt":{"description":"Timestamp in Unix nanoseconds when the team was created.","format":"int64","type":"string"},"createdAtEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"Party ID that created the team.","type":"string"},"teamId":{"description":"ID of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object","title":"apiv2Team"}},"type":"object","title":"v2TeamEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamConnection"}},"type":"object","title":"v2ListTeamsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of all teams, or for a specific team by using team ID, or party ID of a referrer or referee","operationId":"TradingDataService_ListTeams","method":"get","path":"/api/v2/teams","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List teams","description":{"content":"Get a list of all teams, or for a specific team by using team ID, or party ID of a referrer or referee","type":"text/plain"},"url":{"path":["api","v2","teams"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict teams to those with the given team ID.","type":"text/plain"},"key":"teamId","value":""},{"disabled":false,"description":{"content":"Restrict teams to those where the given party is a referrer or a referee.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict teams to those with the given team ID.","in":"query","name":"teamId","required":false,"schema":{"type":"string"}},{"description":"Restrict teams to those where the given party is a referrer or a referee.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"description":"Response for the list teams request containing the team information.","properties":{"teams":{"description":"Page of team data and corresponding page information.","properties":{"edges":{"description":"Page of team data and their corresponding cursors.","items":{"description":"Team data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Team data.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"createdAt":{"description":"Timestamp in Unix nanoseconds when the team was created.","format":"int64","type":"string"},"createdAtEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"Party ID that created the team.","type":"string"},"teamId":{"description":"ID of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object","title":"apiv2Team"}},"type":"object","title":"v2TeamEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"type":"object","title":"v2TeamConnection"}},"type":"object","title":"v2ListTeamsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of all teams, or for a specific team by using team ID, or party ID of a referrer or referee","operationId":"TradingDataService_ListTeams","method":"get","path":"/api/v2/teams","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List teams","description":{"content":"Get a list of all teams, or for a specific team by using team ID, or party ID of a referrer or referee","type":"text/plain"},"url":{"path":["api","v2","teams"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict teams to those with the given team ID.","type":"text/plain"},"key":"teamId","value":""},{"disabled":false,"description":{"content":"Restrict teams to those where the given party is a referrer or a referee.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List teams' (trading-data-service-list-teams)" @@ -42,11 +42,11 @@ Page of team data and their corresponding cursors. Team data. -
  • ]
  • pageInfo object
    +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-trades.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-trades.api.mdx index 598363b99..b4e3011c6 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-trades.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-trades.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of all trades, optionally filtered by party/market/orde sidebar_label: "List trades" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict trades to those that occurred on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict trades to those that were caused by the given orders.","explode":true,"in":"query","name":"orderIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict trades to those that were caused by orders placed by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"trades":{"description":"Page of trades data and corresponding page information.","properties":{"edges":{"description":"Page of trades and their corresponding cursors.","items":{"description":"Trade data item with the corresponding cursor..","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object","description":"Data associated with a trade that has been executed."}},"type":"object","title":"v2TradeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of trades and corresponding page information","type":"object"}},"title":"Response from listing trades","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Get a list of all trades, optionally filtered by party/market/order","operationId":"TradingDataService_ListTrades","method":"get","path":"/api/v2/trades","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List trades","description":{"content":"Get a list of all trades, optionally filtered by party/market/order","type":"text/plain"},"url":{"path":["api","v2","trades"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict trades to those that occurred on the given markets.","type":"text/plain"},"key":"marketIds","value":""},{"disabled":false,"description":{"content":"Restrict trades to those that were caused by the given orders.","type":"text/plain"},"key":"orderIds","value":""},{"disabled":false,"description":{"content":"Restrict trades to those that were caused by orders placed by the given parties.","type":"text/plain"},"key":"partyIds","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict trades to those that occurred on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict trades to those that were caused by the given orders.","explode":true,"in":"query","name":"orderIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict trades to those that were caused by orders placed by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"trades":{"description":"Page of trades data and corresponding page information.","properties":{"edges":{"description":"Page of trades and their corresponding cursors.","items":{"description":"Trade data item with the corresponding cursor..","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object","description":"Data associated with a trade that has been executed."}},"type":"object","title":"v2TradeEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of trades and corresponding page information","type":"object"}},"title":"Response from listing trades","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Get a list of all trades, optionally filtered by party/market/order","operationId":"TradingDataService_ListTrades","method":"get","path":"/api/v2/trades","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List trades","description":{"content":"Get a list of all trades, optionally filtered by party/market/order","type":"text/plain"},"url":{"path":["api","v2","trades"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict trades to those that occurred on the given markets.","type":"text/plain"},"key":"marketIds","value":""},{"disabled":false,"description":{"content":"Restrict trades to those that were caused by the given orders.","type":"text/plain"},"key":"orderIds","value":""},{"disabled":false,"description":{"content":"Restrict trades to those that were caused by orders placed by the given parties.","type":"text/plain"},"key":"partyIds","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List trades' (trading-data-service-list-trades)" @@ -42,7 +42,7 @@ Page of trades and their corresponding cursors. Data associated with a trade that has been executed. -
    buyerFee object
    +
    buyerFee object
    Fee amount charged to the buyer party for the trade. @@ -54,7 +54,7 @@ Fee amount charged to the seller party for the trade. Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-transfers.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-transfers.api.mdx index 7c5c2bfc6..81ec136ca 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-transfers.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-transfers.api.mdx @@ -8,7 +8,7 @@ description: "Get a list of transfers between public keys. A valid value for pub sidebar_label: "List transfers" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict transfer to those where the given public key is a sender or receiver.","in":"query","name":"pubkey","required":false,"schema":{"type":"string"}},{"description":"Restrict transfers to those in the given direction from the supplied public key.\nWhen is_reward is true, and pubkey is set, then direction MUST be TRANSFER_DIRECTION_DIRECTION_FROM.","in":"query","name":"direction","required":false,"schema":{"default":"TRANSFER_DIRECTION_UNSPECIFIED","enum":["TRANSFER_DIRECTION_UNSPECIFIED","TRANSFER_DIRECTION_TRANSFER_FROM","TRANSFER_DIRECTION_TRANSFER_TO","TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM"],"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict transfers to those related to reward transfers.","in":"query","name":"isReward","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"transfers":{"description":"Page of transfers data and corresponding page information.","properties":{"edges":{"description":"Page of transfers data and their corresponding cursors.","items":{"description":"Transfers data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to a transfer that has been made.","properties":{"fees":{"description":"Fees paid for this transfer.","items":{"properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"type":"array"},"transfer":{"description":"Data relating to a transfer that has been made.","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaeventsv1Transfer"}},"type":"object","title":"v2TransferNode"}},"type":"object","title":"v2TransferEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of transfers data items and corresponding page information","type":"object"}},"title":"Response that is received when listing transfers","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Get a list of transfers between public keys. A valid value for public key can be one of:\n- a party ID\n- \"network\"\n- \"0000000000000000000000000000000000000000000000000000000000000000\", the public key for the global rewards account","operationId":"TradingDataService_ListTransfers","method":"get","path":"/api/v2/transfers","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List transfers","description":{"content":"Get a list of transfers between public keys. A valid value for public key can be one of:\n- a party ID\n- \"network\"\n- \"0000000000000000000000000000000000000000000000000000000000000000\", the public key for the global rewards account","type":"text/plain"},"url":{"path":["api","v2","transfers"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict transfer to those where the given public key is a sender or receiver.","type":"text/plain"},"key":"pubkey","value":""},{"disabled":false,"description":{"content":"Restrict transfers to those in the given direction from the supplied public key.\nWhen is_reward is true, and pubkey is set, then direction MUST be TRANSFER_DIRECTION_DIRECTION_FROM.","type":"text/plain"},"key":"direction","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict transfers to those related to reward transfers.","type":"text/plain"},"key":"isReward","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict transfer to those where the given public key is a sender or receiver.","in":"query","name":"pubkey","required":false,"schema":{"type":"string"}},{"description":"Restrict transfers to those in the given direction from the supplied public key.\nWhen is_reward is true, and pubkey is set, then direction MUST be TRANSFER_DIRECTION_DIRECTION_FROM.","in":"query","name":"direction","required":false,"schema":{"default":"TRANSFER_DIRECTION_UNSPECIFIED","enum":["TRANSFER_DIRECTION_UNSPECIFIED","TRANSFER_DIRECTION_TRANSFER_FROM","TRANSFER_DIRECTION_TRANSFER_TO","TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM"],"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict transfers to those related to reward transfers.","in":"query","name":"isReward","required":false,"schema":{"type":"boolean"}},{"description":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Status to filter on.\n\n - STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","in":"query","name":"status","required":false,"schema":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"type":"string"}},{"description":"Dispatch strategy's scope to filter for.\n\n - SCOPE_INDIVIDUAL: Matches transfers that have dispatch strategy scope of individual set.\n - SCOPE_TEAM: Matches transfers that have dispatch strategy scope of team set.","in":"query","name":"scope","required":false,"schema":{"default":"SCOPE_UNSPECIFIED","enum":["SCOPE_UNSPECIFIED","SCOPE_INDIVIDUAL","SCOPE_TEAM"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"transfers":{"description":"Page of transfers data and corresponding page information.","properties":{"edges":{"description":"Page of transfers data and their corresponding cursors.","items":{"description":"Transfers data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data relating to a transfer that has been made.","properties":{"fees":{"description":"Fees paid for this transfer.","items":{"properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"discountApplied":{"description":"Amount that was subtracted from the transfer fee based on available discounts.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"type":"array"},"transfer":{"description":"Data relating to a transfer that has been made.","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"gameId":{"title":"ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaeventsv1Transfer"}},"type":"object","title":"v2TransferNode"}},"type":"object","title":"v2TransferEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of transfers data items and corresponding page information","type":"object"}},"title":"Response that is received when listing transfers","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Get a list of transfers between public keys. A valid value for public key can be one of:\n- a party ID\n- \"network\"\n- \"0000000000000000000000000000000000000000000000000000000000000000\", the public key for the global rewards account","operationId":"TradingDataService_ListTransfers","method":"get","path":"/api/v2/transfers","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List transfers","description":{"content":"Get a list of transfers between public keys. A valid value for public key can be one of:\n- a party ID\n- \"network\"\n- \"0000000000000000000000000000000000000000000000000000000000000000\", the public key for the global rewards account","type":"text/plain"},"url":{"path":["api","v2","transfers"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict transfer to those where the given public key is a sender or receiver.","type":"text/plain"},"key":"pubkey","value":""},{"disabled":false,"description":{"content":"Restrict transfers to those in the given direction from the supplied public key.\nWhen is_reward is true, and pubkey is set, then direction MUST be TRANSFER_DIRECTION_DIRECTION_FROM.","type":"text/plain"},"key":"direction","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Restrict transfers to those related to reward transfers.","type":"text/plain"},"key":"isReward","value":""},{"disabled":false,"description":{"content":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","type":"text/plain"},"key":"fromEpoch","value":""},{"disabled":false,"description":{"content":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","type":"text/plain"},"key":"toEpoch","value":""},{"disabled":false,"description":{"content":"Status to filter on.\n\n - STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"text/plain"},"key":"status","value":""},{"disabled":false,"description":{"content":"Dispatch strategy's scope to filter for.\n\n - SCOPE_INDIVIDUAL: Matches transfers that have dispatch strategy scope of individual set.\n - SCOPE_TEAM: Matches transfers that have dispatch strategy scope of team set.","type":"text/plain"},"key":"scope","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List transfers' (trading-data-service-list-transfers)" @@ -32,7 +32,7 @@ Get a list of transfers between public keys. A valid value for public key can be - "network" - "0000000000000000000000000000000000000000000000000000000000000000", the public key for the global rewards account -
    Query Parameters
    +
    Query Parameters
    A successful response. @@ -52,11 +52,11 @@ Data relating to a transfer that has been made. Fees paid for this transfer. -
  • Array [
  • ]
  • transfer object
    +
  • Array [
  • ]
  • transfer object
    Data relating to a transfer that has been made. -
    oneOff object
    oneOffGovernance object
    recurring object
    dispatchStrategy object
    rankTable object[]
    +
    oneOff object
    oneOffGovernance object
    recurring object
    dispatchStrategy object
    rankTable object[]
    Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. @@ -64,11 +64,11 @@ Ordered list, using start rank, defining the rank bands and share ratio for each Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • ]
  • pageInfo object
    +
  • Array [
  • ]
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-votes.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-votes.api.mdx index 3c0f73159..8dbcb16e8 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-votes.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-votes.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of votes. A party ID or a proposal ID must be provided. sidebar_label: "List votes" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Party for which the votes are requested.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Proposal ID to list votes for.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"votes":{"description":"Page of votes data received and corresponding page information.","properties":{"edges":{"description":"Page of vote data and their corresponding cursors.","items":{"description":"Votes data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object","description":"Data associated with a governance vote."}},"type":"object","title":"v2VoteEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of vote data items and corresponding page information","type":"object"}},"title":"Response that is received when listing Votes","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a list of votes. A party ID or a proposal ID must be provided.","operationId":"TradingDataService_ListVotes","method":"get","path":"/api/v2/votes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List votes","description":{"content":"Get a list of votes. A party ID or a proposal ID must be provided.","type":"text/plain"},"url":{"path":["api","v2","votes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Party for which the votes are requested.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Proposal ID to list votes for.","type":"text/plain"},"key":"proposalId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Party for which the votes are requested.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Proposal ID to list votes for.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"votes":{"description":"Page of votes data received and corresponding page information.","properties":{"edges":{"description":"Page of vote data and their corresponding cursors.","items":{"description":"Votes data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object","description":"Data associated with a governance vote."}},"type":"object","title":"v2VoteEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of vote data items and corresponding page information","type":"object"}},"title":"Response that is received when listing Votes","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a list of votes. A party ID or a proposal ID must be provided.","operationId":"TradingDataService_ListVotes","method":"get","path":"/api/v2/votes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List votes","description":{"content":"Get a list of votes. A party ID or a proposal ID must be provided.","type":"text/plain"},"url":{"path":["api","v2","votes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Party for which the votes are requested.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Proposal ID to list votes for.","type":"text/plain"},"key":"proposalId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List votes' (trading-data-service-list-votes)" @@ -42,11 +42,15 @@ Page of vote data and their corresponding cursors. Data associated with a governance vote. -
  • ]
  • pageInfo object
    +
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • pageInfo object
    Page information that is used for fetching further pages. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-list-withdrawals.api.mdx b/docs/api/rest/data-v2/trading-data-service-list-withdrawals.api.mdx index 416370a40..d231a0993 100644 --- a/docs/api/rest/data-v2/trading-data-service-list-withdrawals.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-list-withdrawals.api.mdx @@ -5,7 +5,7 @@ description: "Get a list of withdrawals for a given party" sidebar_label: "List withdrawals" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict withdrawals to those made by this party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"withdrawals":{"description":"Page of withdrawals data and corresponding page information.","properties":{"edges":{"description":"Page of withdrawals data and their corresponding cursors.","items":{"description":"Withdrawals data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with a single withdrawal made from the Vega network.","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"title":"Withdrawal from the Vega network","type":"object"}},"type":"object","title":"v2WithdrawalEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of withdrawals data and corresponding page information","type":"object"}},"title":"Response from listing withdrawals data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of withdrawals for a given party","operationId":"TradingDataService_ListWithdrawals","method":"get","path":"/api/v2/withdrawals","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"List withdrawals","description":{"content":"Get a list of withdrawals for a given party","type":"text/plain"},"url":{"path":["api","v2","withdrawals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict withdrawals to those made by this party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict withdrawals to those made by this party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"withdrawals":{"description":"Page of withdrawals data and corresponding page information.","properties":{"edges":{"description":"Page of withdrawals data and their corresponding cursors.","items":{"description":"Withdrawals data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"description":"Data associated with a single withdrawal made from the Vega network.","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"title":"Withdrawal from the Vega network","type":"object"}},"type":"object","title":"v2WithdrawalEdge"},"type":"array"},"pageInfo":{"description":"Page information that is used for fetching further pages.","properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"}},"title":"Page of withdrawals data and corresponding page information","type":"object"}},"title":"Response from listing withdrawals data","type":"object"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of withdrawals for a given party","operationId":"TradingDataService_ListWithdrawals","method":"get","path":"/api/v2/withdrawals","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List withdrawals","description":{"content":"Get a list of withdrawals for a given party","type":"text/plain"},"url":{"path":["api","v2","withdrawals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict withdrawals to those made by this party ID.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","type":"text/plain"},"key":"pagination.first","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the last row of the previous page.","type":"text/plain"},"key":"pagination.after","value":""},{"disabled":false,"description":{"content":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","type":"text/plain"},"key":"pagination.last","value":""},{"disabled":false,"description":{"content":"If paging forwards, the cursor string for the first row of the previous page.","type":"text/plain"},"key":"pagination.before","value":""},{"disabled":false,"description":{"content":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"text/plain"},"key":"pagination.newestFirst","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the start of the date range.","type":"text/plain"},"key":"dateRange.startTimestamp","value":""},{"disabled":false,"description":{"content":"Timestamp in Unix nanoseconds indicating the end of the date range.","type":"text/plain"},"key":"dateRange.endTimestamp","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List withdrawals' (trading-data-service-list-withdrawals)" diff --git a/docs/api/rest/data-v2/trading-data-service-observe-accounts.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-accounts.api.mdx index 05abad778..f73a5d40e 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-accounts.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-accounts.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-accounts title: "Accounts subscription" description: "Subscribe to a stream of accounts" sidebar_label: "Accounts subscription" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Market ID to filter accounts by. If empty, no markets will be filtered.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter accounts by. If empty, no parties will be filtered.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Asset ID to filter accounts by. If empty, no assets will be filtered.","in":"query","name":"asset","required":false,"schema":{"type":"string"}},{"description":"Account type to subscribe to, required field.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","in":"query","name":"type","required":false,"schema":{"default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Response that is received when subscribing to a stream of accounts.","properties":{"snapshot":{"description":"'Initial image' snapshot containing current account balances.","properties":{"accounts":{"description":"List of account balances.","items":{"properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","type":"string"},"marketId":{"description":"Market ID for the account, this field will be empty if the asset is in a general account.","type":"string"},"owner":{"description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","type":"string"},"type":{"description":"Account type of this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","type":"object"},"type":"array"},"lastPage":{"description":"Indicator if the current page is the last one or not.","type":"boolean"}},"title":"'Initial image' snapshot containing current account balances - may be sent over several response messages","type":"object"},"updates":{"description":"List of account updates in the last block.","properties":{"accounts":{"description":"List of account balances.","items":{"properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","type":"string"},"marketId":{"description":"Market ID for the account, this field will be empty if the asset is in a general account.","type":"string"},"owner":{"description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","type":"string"},"type":{"description":"Account type of this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","type":"object"},"type":"array"}},"title":"List of account updates in the last block","type":"object"}},"type":"object","title":"v2ObserveAccountsResponse"}},"title":"Stream result of v2ObserveAccountsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Subscribe to a stream of accounts","operationId":"TradingDataService_ObserveAccounts","method":"get","path":"/api/v2/stream/accounts","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Accounts subscription","description":{"content":"Subscribe to a stream of accounts","type":"text/plain"},"url":{"path":["api","v2","stream","accounts"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Market ID to filter accounts by. If empty, no markets will be filtered.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to filter accounts by. If empty, no parties will be filtered.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Asset ID to filter accounts by. If empty, no assets will be filtered.","type":"text/plain"},"key":"asset","value":""},{"disabled":false,"description":{"content":"Account type to subscribe to, required field.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","type":"text/plain"},"key":"type","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Market ID to filter accounts by. If empty, no markets will be filtered.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter accounts by. If empty, no parties will be filtered.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Asset ID to filter accounts by. If empty, no assets will be filtered.","in":"query","name":"asset","required":false,"schema":{"type":"string"}},{"description":"Account type to subscribe to, required field.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","in":"query","name":"type","required":false,"schema":{"default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Response that is received when subscribing to a stream of accounts.","properties":{"snapshot":{"description":"'Initial image' snapshot containing current account balances.","properties":{"accounts":{"description":"List of account balances.","items":{"properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","type":"string"},"marketId":{"description":"Market ID for the account, this field will be empty if the asset is in a general account.","type":"string"},"owner":{"description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","type":"string"},"type":{"description":"Account type of this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","type":"object"},"type":"array"},"lastPage":{"description":"Indicator if the current page is the last one or not.","type":"boolean"}},"title":"'Initial image' snapshot containing current account balances - may be sent over several response messages","type":"object"},"updates":{"description":"List of account updates in the last block.","properties":{"accounts":{"description":"List of account balances.","items":{"properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","type":"string"},"marketId":{"description":"Market ID for the account, this field will be empty if the asset is in a general account.","type":"string"},"owner":{"description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","type":"string"},"type":{"description":"Account type of this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","type":"object"},"type":"array"}},"title":"List of account updates in the last block","type":"object"}},"type":"object","title":"v2ObserveAccountsResponse"}},"title":"Stream result of v2ObserveAccountsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Subscribe to a stream of accounts","operationId":"TradingDataService_ObserveAccounts","method":"get","path":"/api/v2/stream/accounts","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Accounts subscription","description":{"content":"Subscribe to a stream of accounts","type":"text/plain"},"url":{"path":["api","v2","stream","accounts"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Market ID to filter accounts by. If empty, no markets will be filtered.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to filter accounts by. If empty, no parties will be filtered.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Asset ID to filter accounts by. If empty, no assets will be filtered.","type":"text/plain"},"key":"asset","value":""},{"disabled":false,"description":{"content":"Account type to subscribe to, required field.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","type":"text/plain"},"key":"type","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Accounts subscription' (trading-data-service-observe-accounts)" @@ -27,7 +27,7 @@ import TabItem from "@theme/TabItem"; Subscribe to a stream of accounts -
    Query Parameters
    +
    Query Parameters
    A successful response.(streaming responses) @@ -43,7 +43,7 @@ Response that is received when subscribing to a stream of accounts. List of account balances. -
  • Array [
  • ]
  • updates object
    +
  • Array [
  • ]
  • updates object
    List of account updates in the last block. @@ -51,7 +51,7 @@ List of account updates in the last block. List of account balances. -
  • Array [
  • ]
  • +
  • Array [
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-candle-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-candle-data.api.mdx index 3ad38707c..0fbdb6a04 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-candle-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-candle-data.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-candle-data title: "Observe candle data" description: "Subscribe to a stream of candle updates" sidebar_label: "Observe candle data" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Unique ID for the candle.","in":"query","name":"candleId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"candle":{"description":"Candle data.","properties":{"close":{"description":"Closing trade price.","type":"string"},"high":{"description":"Highest price for trading during the candle interval.","type":"string"},"lastUpdate":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was last updated.","format":"int64","type":"string"},"low":{"description":"Lowest price for trading during the candle interval.","type":"string"},"notional":{"description":"Total notional value traded during the candle interval.","format":"uint64","type":"string"},"open":{"description":"Open trade price.","type":"string"},"start":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.","format":"int64","type":"string"},"volume":{"description":"Total trading volume during the candle interval.","format":"uint64","type":"string"}},"title":"Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle","type":"object"}},"title":"Response that is received when subscribing to a stream of candles","type":"object"}},"title":"Stream result of v2ObserveCandleDataResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Subscribe to a stream of candle updates","operationId":"TradingDataService_ObserveCandleData","method":"get","path":"/api/v2/stream/candle/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe candle data","description":{"content":"Subscribe to a stream of candle updates","type":"text/plain"},"url":{"path":["api","v2","stream","candle","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Unique ID for the candle.","type":"text/plain"},"key":"candleId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Unique ID for the candle.","in":"query","name":"candleId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"candle":{"description":"Candle data.","properties":{"close":{"description":"Closing trade price.","type":"string"},"high":{"description":"Highest price for trading during the candle interval.","type":"string"},"lastUpdate":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was last updated.","format":"int64","type":"string"},"low":{"description":"Lowest price for trading during the candle interval.","type":"string"},"notional":{"description":"Total notional value traded during the candle interval.","format":"uint64","type":"string"},"open":{"description":"Open trade price.","type":"string"},"start":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.","format":"int64","type":"string"},"volume":{"description":"Total trading volume during the candle interval.","format":"uint64","type":"string"}},"title":"Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle","type":"object"}},"title":"Response that is received when subscribing to a stream of candles","type":"object"}},"title":"Stream result of v2ObserveCandleDataResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Subscribe to a stream of candle updates","operationId":"TradingDataService_ObserveCandleData","method":"get","path":"/api/v2/stream/candle/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe candle data","description":{"content":"Subscribe to a stream of candle updates","type":"text/plain"},"url":{"path":["api","v2","stream","candle","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"(Required) Unique ID for the candle.","type":"text/plain"},"key":"candleId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe candle data' (trading-data-service-observe-candle-data)" diff --git a/docs/api/rest/data-v2/trading-data-service-observe-event-bus.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-event-bus.api.mdx index 7e42e4d79..0c73e4a27 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-event-bus.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-event-bus.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-event-bus title: "Observe event bus" description: "Subscribe to a stream of events from the core" sidebar_label: "Observe event bus" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","explode":true,"in":"query","name":"type","required":false,"schema":{"items":{"enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"type":"array"}},{"description":"Market ID to filter for, optional field. If empty, no markets will be excluded from the stream.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter for, optional field. If empty, no parties will be excluded from the stream.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Batch size,\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","in":"query","name":"batchSize","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"events":{"description":"List of events that occurred on the Vega event bus.","items":{"properties":{"account":{"title":"Account events","properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.","type":"string"},"id":{"description":"Unique account ID, used internally by Vega.","type":"string"},"marketId":{"description":"Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.","type":"string"},"owner":{"description":"Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.","type":"string"},"type":{"description":"Account type related to this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"asset":{"title":"Asset events","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"type":"object"},"auction":{"title":"Auction events","properties":{"end":{"format":"int64","title":"Timestamp containing the end time for an auction","type":"string"},"extensionTrigger":{"title":"If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"},"leave":{"title":"True if the event indicates leaving auction mode and False otherwise","type":"boolean"},"marketId":{"title":"Market ID for the event","type":"string"},"openingAuction":{"title":"True if the event indicates an auction opening and False otherwise","type":"boolean"},"start":{"format":"int64","title":"Timestamp containing the start time for an auction","type":"string"},"trigger":{"title":"Reason this market is/was in auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"}},"type":"object"},"beginBlock":{"title":"Core is starting to process a new block","properties":{"hash":{"type":"string"},"height":{"format":"uint64","type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"block":{"title":"The batch or block of transactions that the events relate to","type":"string"},"chainId":{"type":"string"},"checkpoint":{"title":"Checkpoint was created","properties":{"blockHash":{"type":"string"},"blockHeight":{"format":"uint64","type":"string"},"hash":{"type":"string"}},"type":"object"},"coreSnapshotEvent":{"title":"Core snapshot has been taken at the end of the block","description":"CoreSnapshotData represents the core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object"},"delegationBalance":{"title":"Delegation balance events","properties":{"amount":{"type":"string"},"epochSeq":{"type":"string"},"nodeId":{"type":"string"},"party":{"type":"string"}},"type":"object"},"deposit":{"title":"Deposit events","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"type":"object"},"distressedOrders":{"title":"Parties that had their orders closed because they were distressed","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"parties":{"items":{"type":"string"},"title":"Slice of Party IDs i.e. each party's public key for the event","type":"array"}},"type":"object"},"distressedPositions":{"title":"Open positions on the market that are/were distressed","description":"Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.","properties":{"distressedParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, that are distressed but still have open volume","type":"array"},"marketId":{"title":"Market ID for the event","type":"string"},"safeParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position","type":"array"}},"type":"object"},"endBlock":{"title":"Core finished processing a block","properties":{"height":{"format":"uint64","type":"string"}},"type":"object"},"epochEvent":{"title":"Epoch update events","properties":{"action":{"title":"Action tells us what action is taking place","default":"EPOCH_ACTION_UNSPECIFIED","description":"- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.","enum":["EPOCH_ACTION_UNSPECIFIED","EPOCH_ACTION_START","EPOCH_ACTION_END"],"type":"string"},"endTime":{"format":"int64","title":"Vega time at which this epoch actually ended","type":"string"},"expireTime":{"format":"int64","title":"Vega time at which this epoch should end","type":"string"},"seq":{"format":"uint64","title":"Sequence number that increases by one each epoch","type":"string"},"startTime":{"format":"int64","title":"Vega time at which this epoch started","type":"string"}},"type":"object"},"erc20MultisigSetThresholdEvent":{"title":"ERC20 multi sig set threshold event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"newThreshold":{"format":"int64","type":"integer"},"nonce":{"type":"string"},"txHash":{"type":"string"}},"type":"object"},"erc20MultisigSignerAdded":{"title":"ERC20 multi sig signer added","properties":{"epochSeq":{"title":"Epoch that the node was added for","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"signatureId":{"title":"ID of the signature bundle","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node to be added","type":"string"}},"type":"object"},"erc20MultisigSignerEvent":{"title":"ERC20 multi sig signer event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"nonce":{"type":"string"},"signer":{"type":"string"},"txHash":{"type":"string"},"type":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ADDED","TYPE_REMOVED"],"type":"string","title":"v1ERC20MultiSigSignerEventType"}},"type":"object"},"erc20MultisigSignerRemoved":{"title":"ERC20 multi sig signer removed","properties":{"epochSeq":{"title":"Epoch that the node was removed for","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"oldSigner":{"title":"Ethereum address of the signer to be removed","type":"string"},"signatureSubmitters":{"items":{"properties":{"signatureId":{"description":"Signature ID of the signer removed.","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"}},"type":"object","title":"v1ERC20MultiSigSignerRemovedSubmitter"},"title":"List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set","type":"array"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node which is to be removed","type":"string"}},"type":"object"},"ethereumKeyRotation":{"title":"Ethereum key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"type":"object"},"expiredOrders":{"title":"Orders that expired for a given market","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"orderIds":{"items":{"type":"string"},"title":"Slice of expired order IDs","type":"array"}},"type":"object"},"feesStats":{"description":"Event notifying of an update the fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"},"fundingPayments":{"description":"Event notifying of funding payments at the end of a funding period.","properties":{"marketId":{"description":"ID of the market.","type":"string"},"payments":{"description":"List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.","items":{"description":"The amount gained or lost by a party as a result of a funding payment.","properties":{"amount":{"description":"The amount paid, this can be negative for parties who lost at the end of the funding period.","type":"string"},"partyId":{"description":"ID of the party.","type":"string"}},"type":"object","title":"eventsv1FundingPayment"},"type":"array"},"seq":{"description":"Sequence number of the funding period associated with these payments.","format":"uint64","type":"string"}},"type":"object","title":"v1FundingPayments"},"fundingPeriod":{"description":"Start or end of a funding period.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object","title":"v1FundingPeriod"},"fundingPeriodDataPoint":{"description":"Data point within a funding period.","properties":{"dataPointType":{"description":"Origin of the data point.","default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string","title":"FundingPeriodDataPointSource"},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object","title":"v1FundingPeriodDataPoint"},"id":{"title":"Unique event ID for the message","type":"string"},"keyRotation":{"title":"Key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"type":"object"},"ledgerMovements":{"title":"Transfer responses update events","properties":{"ledgerMovements":{"items":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"properties":{"account":{"description":"Account relating to the transfer.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"description":"One or more accounts to transfer from.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"description":"One or more accounts to transfer to.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"type":{"description":"Transfer type for this entry.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents a ledger entry on Vega","type":"object"},"type":"array"}},"type":"object","title":"vegaLedgerMovement"},"title":"One or more entries containing internal transfer information","type":"array"}},"type":"object"},"liquidityProvision":{"title":"LiquidityProvision events","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"type":"object"},"lossSocialization":{"title":"Loss socialization events","properties":{"amount":{"title":"Amount distributed","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"}},"type":"object"},"marginLevels":{"title":"Margin level update events","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"type":"object"},"market":{"title":"Market tick events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"payload":{"title":"Payload is a unique information string","type":"string"}},"type":"object"},"marketCreated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"marketData":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"marketTick":{"title":"Market tick events","properties":{"id":{"title":"Market ID for the event","type":"string"},"time":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"marketUpdated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"networkLimits":{"title":"Network limits events","properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"type":"object"},"networkParameter":{"title":"Network parameter events","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"type":"object"},"nodeSignature":{"title":"Node signature events","description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object"},"oracleData":{"title":"OracleData events","properties":{"externalData":{"properties":{"data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"v1Data"}},"type":"object","title":"v1ExternalData"}},"type":"object"},"oracleSpec":{"title":"OracleSpec events","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"type":"object"},"order":{"title":"Order events","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"type":"object"},"paidLiquidityFeesStats":{"description":"Event notifying of an update to the liqudity fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid accross all parties.","type":"string"}},"type":"object","title":"v1PaidLiquidityFeesStats"},"party":{"title":"Party events","properties":{"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"}},"type":"object"},"partyActivityStreak":{"title":"Event notifying of an update to a party's activity streak","properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"type":"object"},"positionResolution":{"title":"Position resolution events","properties":{"closed":{"format":"int64","title":"Number of close outs","type":"string"},"distressed":{"format":"int64","title":"Number of distressed traders","type":"string"},"markPrice":{"title":"Mark price as a string representing a scaled price","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"}},"type":"object"},"positionStateEvent":{"title":"Position status for a party in a market","properties":{"marketId":{"title":"Market ID for this position update","type":"string"},"partyId":{"title":"Party ID for this position update","type":"string"},"potentialBuys":{"format":"int64","title":"Potential orders","type":"string"},"potentialSells":{"format":"int64","type":"string"},"size":{"format":"int64","title":"Current position","type":"string"},"vwBuyPrice":{"title":"Volume weighted prices","type":"string"},"vwSellPrice":{"type":"string"}},"type":"object"},"proposal":{"title":"Proposal events for governance","properties":{"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"type":"object"},"protocolUpgradeDataNodeReady":{"title":"Core snapshot has been taken at the end of the block","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"protocolUpgradeEvent":{"title":"Protocol upgrade proposal updates","properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"title":"Status of the proposal","default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object"},"protocolUpgradeStarted":{"title":"Core is starting a protocol upgrade","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"rankingEvent":{"title":"Ranking event","properties":{"epochSeq":{"title":"Epoch seq for which the status is valid","type":"string"},"nextStatus":{"title":"Status of the validator in the next epoch","type":"string"},"nodeId":{"type":"string"},"performanceScore":{"title":"Performance base score","type":"string"},"previousStatus":{"title":"Status of the validator in the previous epoch","type":"string"},"rankingScore":{"title":"Final score","type":"string"},"stakeScore":{"title":"Stake based score - no anti-whaling","type":"string"},"tmVotingPower":{"format":"int64","title":"Tendermint voting power of the validator","type":"integer"}},"type":"object"},"refereeJoinedReferralSet":{"description":"Event notifying a referee has joined a referral set.","properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"setId":{"description":"Unique ID of the referral set the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedReferralSet"},"refereeJoinedTeam":{"description":"Event notifying that a referee joined a team.","properties":{"atEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined a team.","format":"int64","type":"string"},"referee":{"description":"The party that joined the team.","type":"string"},"teamId":{"description":"The unique identifier of the team the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedTeam"},"refereeSwitchedTeam":{"description":"Event notifying that a referee switched teams.","properties":{"atEpoch":{"description":"Epoch at which the party switched the team.","format":"uint64","type":"string"},"fromTeamId":{"description":"The unique identifier of the team the referee left.","type":"string"},"referee":{"description":"The party that switched team.","type":"string"},"switchedAt":{"description":"Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.","format":"int64","type":"string"},"toTeamId":{"description":"The unique identifier of the team joined.","type":"string"}},"type":"object","title":"v1RefereeSwitchedTeam"},"referralProgramEnded":{"description":"Event notifying that a referral program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the referral program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1ReferralProgramEnded"},"referralProgramStarted":{"description":"Event notifying that a referral program has started.","properties":{"atEpoch":{"description":"Epoch at which the referral program started.","format":"uint64","type":"string"},"program":{"description":"Referral program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the referral program started.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramStarted"},"referralProgramUpdated":{"description":"Event notifying that a referral program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the referral program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the referral program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramUpdated"},"referralSetCreated":{"description":"Event notifying a referral set has been created.","properties":{"createdAt":{"description":"Time in Unix nanoseconds when the set was created.","format":"int64","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"setId":{"description":"Unique ID of the created set.","type":"string"},"updatedAt":{"description":"Time in Unix nanoseconds when the set was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralSetCreated"},"referralSetStatsUpdated":{"description":"Event notifying of an update to a referral set's statistics.","properties":{"atEpoch":{"description":"Epoch at which the set's statistics are updated.","format":"uint64","type":"string"},"refereesStats":{"description":"Referees' statistics for that epoch.","items":{"properties":{"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"title":"Current referee notional taker volume","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object","title":"v1RefereeStats"},"type":"array"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Taker volume of the referrer","type":"string"},"rewardFactor":{"description":"Reward factor applied to the trades.","type":"string"},"rewardsFactorMultiplier":{"description":"Rewards factor multiplier for the trades.","type":"string"},"rewardsMultiplier":{"description":"Rewards multiplier applied to the trades.","type":"string"},"setId":{"description":"Unique ID of the set.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object","title":"v1ReferralSetStatsUpdated"},"rewardPayout":{"title":"Reward payout event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"epochSeq":{"type":"string"},"lockedUntilEpoch":{"type":"string"},"market":{"type":"string"},"party":{"type":"string"},"percentOfTotalReward":{"type":"string"},"rewardType":{"type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"riskFactor":{"title":"Risk factor events","properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"type":"object"},"settleDistressed":{"title":"Position distressed events","properties":{"margin":{"title":"Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID i.e. a party's public key for the event","type":"string"},"price":{"title":"Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"}},"type":"object"},"settleMarket":{"title":"Settle market event for data-node to update positions for settled markets","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"}},"type":"object"},"settlePosition":{"title":"Position settlement events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"},"tradeSettlements":{"items":{"properties":{"marketPrice":{"title":"Price of settlement as a string (in market decimals)","type":"string"},"price":{"title":"Price of settlement as string (in asset decimals)","type":"string"},"size":{"format":"int64","title":"Size of trade settlement","type":"string"}},"title":"Trade settlement is part of the settle position event","type":"object"},"title":"A collection of 1 or more trade settlements","type":"array"}},"type":"object"},"stakeLinking":{"title":"Staking event","properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"type":"object"},"stateVar":{"title":"State variable consensus state transition update","properties":{"eventId":{"type":"string"},"id":{"type":"string"},"state":{"type":"string"}},"type":"object"},"stopOrder":{"title":"A stop order event","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION"],"type":"string"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object"},"teamCreated":{"title":"Event notifying of the creation of a team.m","properties":{"atEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"createdAt":{"description":"Time in Unix nanoseconds when the team is created.","format":"int64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"The party that created the team.","type":"string"},"teamId":{"description":"The unique identifier of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"teamUpdated":{"description":"Event notifying of an update to a team.","properties":{"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamId":{"description":"The unique identifier for the updated team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object","title":"v1TeamUpdated"},"timeUpdate":{"title":"Time update events","properties":{"timestamp":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"trade":{"title":"Trade events","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"type":"object"},"transactionResult":{"title":"Result of a transaction processed by the network","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"createReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"failure":{"properties":{"error":{"title":"Error message explaining the reason for the transaction failing processing","type":"string"}},"type":"object","title":"TransactionResultFailureDetails"},"hash":{"title":"Hash of the transaction","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"keyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"status":{"description":"Status of the transaction, did it succeed or an error was raised.","type":"boolean"},"stopOrderCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrderSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"success":{"type":"object","title":"TransactionResultSuccessDetails"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"transfer":{"title":"Transfer event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"transferFees":{"description":"Event notifying of fees related to a transfer being paid.","properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"txErrEvent":{"title":"Transaction error events, not included in the ALL event type","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"errMsg":{"title":"Error message describing what went wrong","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"txHash":{"type":"string"},"type":{"title":"The type of bus event. Must be one of the list below:","default":"BUS_EVENT_TYPE_UNSPECIFIED","description":"- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"validatorScore":{"title":"Validator score calculated","properties":{"epochSeq":{"type":"string"},"multisigScore":{"type":"string"},"nodeId":{"type":"string"},"normalisedScore":{"type":"string"},"rawValidatorScore":{"type":"string"},"validatorPerformance":{"type":"string"},"validatorScore":{"type":"string"},"validatorStatus":{"type":"string"}},"type":"object"},"validatorUpdate":{"title":"Validator update events","properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"type":"object"},"version":{"format":"int64","title":"Version of bus event","type":"integer"},"vestingBalancesSummary":{"description":"Event notifying of an update to the vesting and locked balances.","properties":{"epochSeq":{"description":"Epoch for which these balances are valid.","format":"uint64","type":"string"},"partiesVestingSummary":{"description":"Parties' summaries.","items":{"properties":{"party":{"description":"Party ID.","type":"string"},"partyLockedBalances":{"description":"List of locked balances.","items":{"description":"A party's locked balance for a given asset.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Locked balance.","type":"string"},"untilEpoch":{"description":"Epoch in which the balance will be released.","format":"uint64","type":"string"}},"type":"object","title":"v1PartyLockedBalance"},"type":"array"},"partyVestingBalances":{"description":"List of vesting balances.","items":{"description":"Balance that is being vested for the party.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Balance that is vested.","type":"string"}},"type":"object","title":"v1PartyVestingBalance"},"type":"array"}},"title":"Summary of a party's vesting balances","type":"object"},"type":"array"}},"title":"Summary of the vesting and locked balances for an epoch","type":"object"},"vestingStatsUpdated":{"description":"Event notifying of an update to the vesting statistics.","properties":{"atEpoch":{"description":"Epoch at which the vesting statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties stats.","items":{"description":"The vesting stats for a given party.","properties":{"partyId":{"description":"The party.","type":"string"},"quantumBalance":{"description":"The balance of the party, in quantum.","type":"string"},"rewardBonusMultiplier":{"description":"The bonus multiplier applied on the reward.","type":"string"}},"type":"object","title":"v1PartyVestingStats"},"type":"array"}},"type":"object","title":"v1VestingStatsUpdated"},"volumeDiscountProgramEnded":{"description":"Event notifying that a volume discount program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the volume discount program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramEnded"},"volumeDiscountProgramStarted":{"description":"Event notifying that a volume discount program has started.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program started.","format":"uint64","type":"string"},"program":{"description":"Volume discount program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the volume discount program started.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramStarted"},"volumeDiscountProgramUpdated":{"description":"Event notifying that a volume discount program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated volume discount program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the volume discount program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramUpdated"},"volumeDiscountStatsUpdated":{"description":"Event notifying of an update to the volume discount statistics.","properties":{"atEpoch":{"description":"Epoch at which the volume discount statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties' stats.","items":{"description":"Volume discount stats for a given party.","properties":{"discountFactor":{"description":"Discount factor applied to fees.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object","title":"v1PartyVolumeDiscountStats"},"type":"array"}},"type":"object","title":"v1VolumeDiscountStatsUpdated"},"vote":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"withdrawal":{"title":"Withdrawal events","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"type":"object"}},"title":"Bus event is a container for event bus events emitted by Vega","type":"object"},"type":"array"}},"title":"Response to a subscribed stream of events from the Vega event bus","type":"object"}},"title":"Stream result of v2ObserveEventBusResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Events"],"description":"Subscribe to a stream of events from the core","operationId":"TradingDataService_ObserveEventBus","method":"get","path":"/api/v2/stream/event/bus","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe event bus","description":{"content":"Subscribe to a stream of events from the core","type":"text/plain"},"url":{"path":["api","v2","stream","event","bus"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","type":"text/plain"},"key":"type","value":""},{"disabled":false,"description":{"content":"Market ID to filter for, optional field. If empty, no markets will be excluded from the stream.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to filter for, optional field. If empty, no parties will be excluded from the stream.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Batch size,\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","type":"text/plain"},"key":"batchSize","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","explode":true,"in":"query","name":"type","required":false,"schema":{"items":{"enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"type":"array"}},{"description":"Market ID to filter for, optional field. If empty, no markets will be excluded from the stream.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter for, optional field. If empty, no parties will be excluded from the stream.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Batch size,\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","in":"query","name":"batchSize","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"events":{"description":"List of events that occurred on the Vega event bus.","items":{"properties":{"account":{"title":"Account events","properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.","type":"string"},"id":{"description":"Unique account ID, used internally by Vega.","type":"string"},"marketId":{"description":"Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.","type":"string"},"owner":{"description":"Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.","type":"string"},"type":{"description":"Account type related to this account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"asset":{"title":"Asset events","properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"type":"object"},"auction":{"title":"Auction events","properties":{"end":{"format":"int64","title":"Timestamp containing the end time for an auction","type":"string"},"extensionTrigger":{"title":"If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"},"leave":{"title":"True if the event indicates leaving auction mode and False otherwise","type":"boolean"},"marketId":{"title":"Market ID for the event","type":"string"},"openingAuction":{"title":"True if the event indicates an auction opening and False otherwise","type":"boolean"},"start":{"format":"int64","title":"Timestamp containing the start time for an auction","type":"string"},"trigger":{"title":"Reason this market is/was in auction","default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"type":"string"}},"type":"object"},"beginBlock":{"title":"Core is starting to process a new block","properties":{"hash":{"type":"string"},"height":{"format":"uint64","type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"block":{"title":"The batch or block of transactions that the events relate to","type":"string"},"chainId":{"type":"string"},"checkpoint":{"title":"Checkpoint was created","properties":{"blockHash":{"type":"string"},"blockHeight":{"format":"uint64","type":"string"},"hash":{"type":"string"}},"type":"object"},"coreSnapshotEvent":{"title":"Core snapshot has been taken at the end of the block","description":"CoreSnapshotData represents the core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object"},"delegationBalance":{"title":"Delegation balance events","properties":{"amount":{"type":"string"},"epochSeq":{"type":"string"},"nodeId":{"type":"string"},"party":{"type":"string"}},"type":"object"},"deposit":{"title":"Deposit events","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"description":"Status of the deposit.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"type":"object"},"distressedOrders":{"title":"Parties that had their orders closed because they were distressed","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"parties":{"items":{"type":"string"},"title":"Slice of Party IDs i.e. each party's public key for the event","type":"array"}},"type":"object"},"distressedPositions":{"title":"Open positions on the market that are/were distressed","description":"Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.","properties":{"distressedParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, that are distressed but still have open volume","type":"array"},"marketId":{"title":"Market ID for the event","type":"string"},"safeParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position","type":"array"}},"type":"object"},"endBlock":{"title":"Core finished processing a block","properties":{"height":{"format":"uint64","type":"string"}},"type":"object"},"epochEvent":{"title":"Epoch update events","properties":{"action":{"title":"Action tells us what action is taking place","default":"EPOCH_ACTION_UNSPECIFIED","description":"- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.","enum":["EPOCH_ACTION_UNSPECIFIED","EPOCH_ACTION_START","EPOCH_ACTION_END"],"type":"string"},"endTime":{"format":"int64","title":"Vega time at which this epoch actually ended","type":"string"},"expireTime":{"format":"int64","title":"Vega time at which this epoch should end","type":"string"},"seq":{"format":"uint64","title":"Sequence number that increases by one each epoch","type":"string"},"startTime":{"format":"int64","title":"Vega time at which this epoch started","type":"string"}},"type":"object"},"erc20MultisigSetThresholdEvent":{"title":"ERC20 multi sig set threshold event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"newThreshold":{"format":"int64","type":"integer"},"nonce":{"type":"string"},"txHash":{"type":"string"}},"type":"object"},"erc20MultisigSignerAdded":{"title":"ERC20 multi sig signer added","properties":{"epochSeq":{"title":"Epoch that the node was added for","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"signatureId":{"title":"ID of the signature bundle","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node to be added","type":"string"}},"type":"object"},"erc20MultisigSignerEvent":{"title":"ERC20 multi sig signer event","properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"nonce":{"type":"string"},"signer":{"type":"string"},"txHash":{"type":"string"},"type":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ADDED","TYPE_REMOVED"],"type":"string","title":"v1ERC20MultiSigSignerEventType"}},"type":"object"},"erc20MultisigSignerRemoved":{"title":"ERC20 multi sig signer removed","properties":{"epochSeq":{"title":"Epoch that the node was removed for","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"oldSigner":{"title":"Ethereum address of the signer to be removed","type":"string"},"signatureSubmitters":{"items":{"properties":{"signatureId":{"description":"Signature ID of the signer removed.","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"}},"type":"object","title":"v1ERC20MultiSigSignerRemovedSubmitter"},"title":"List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set","type":"array"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node which is to be removed","type":"string"}},"type":"object"},"ethereumKeyRotation":{"title":"Ethereum key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"type":"object"},"expiredOrders":{"title":"Orders that expired for a given market","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"orderIds":{"items":{"type":"string"},"title":"Slice of expired order IDs","type":"array"}},"type":"object"},"feesStats":{"description":"Event notifying of an update the fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"type":"array"},"totalFeesPaidAndReceived":{"description":"Total trading fees received and paid by the party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"},"fundingPayments":{"description":"Event notifying of funding payments at the end of a funding period.","properties":{"marketId":{"description":"ID of the market.","type":"string"},"payments":{"description":"List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.","items":{"description":"The amount gained or lost by a party as a result of a funding payment.","properties":{"amount":{"description":"The amount paid, this can be negative for parties who lost at the end of the funding period.","type":"string"},"partyId":{"description":"ID of the party.","type":"string"}},"type":"object","title":"eventsv1FundingPayment"},"type":"array"},"seq":{"description":"Sequence number of the funding period associated with these payments.","format":"uint64","type":"string"}},"type":"object","title":"v1FundingPayments"},"fundingPeriod":{"description":"Start or end of a funding period.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object","title":"v1FundingPeriod"},"fundingPeriodDataPoint":{"description":"Data point within a funding period.","properties":{"dataPointType":{"description":"Origin of the data point.","default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string","title":"FundingPeriodDataPointSource"},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object","title":"v1FundingPeriodDataPoint"},"id":{"title":"Unique event ID for the message","type":"string"},"keyRotation":{"title":"Key rotation took place","properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"type":"object"},"ledgerMovements":{"title":"Transfer responses update events","properties":{"ledgerMovements":{"items":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"properties":{"account":{"description":"Account relating to the transfer.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"description":"One or more accounts to transfer from.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"description":"One or more accounts to transfer to.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"transferId":{"description":"Transfer ID the ledger entry relates to.","type":"string"},"type":{"description":"Transfer type for this entry.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents a ledger entry on Vega","type":"object"},"type":"array"}},"type":"object","title":"vegaLedgerMovement"},"title":"One or more entries containing internal transfer information","type":"array"}},"type":"object"},"liquidityProvision":{"title":"LiquidityProvision events","properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"type":"object"},"lossSocialization":{"title":"Loss socialization events","properties":{"amount":{"title":"Amount distributed","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"}},"type":"object"},"marginLevels":{"title":"Margin level update events","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"description":"Margin mode for the party, cross margin or isolated margin.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"type":"object"},"market":{"title":"Market tick events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"payload":{"title":"Payload is a unique information string","type":"string"}},"type":"object"},"marketCreated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"marketData":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"description":"The method used for calculating the mark price.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"description":"The method used for calculating the index price (perps only).","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"marketTick":{"title":"Market tick events","properties":{"id":{"title":"Market ID for the event","type":"string"},"time":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"marketUpdated":{"title":"Market created events","properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"type":"object"},"networkLimits":{"title":"Network limits events","properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"type":"object"},"networkParameter":{"title":"Network parameter events","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"type":"object"},"nodeSignature":{"title":"Node signature events","description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object"},"oracleData":{"title":"OracleData events","properties":{"externalData":{"properties":{"data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object","title":"v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"v1Data"}},"type":"object","title":"v1ExternalData"}},"type":"object"},"oracleSpec":{"title":"OracleSpec events","properties":{"externalDataSourceSpec":{"properties":{"spec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"}},"type":"object","title":"vegaExternalDataSourceSpec"}},"type":"object"},"order":{"title":"Order events","properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"type":"object"},"paidLiquidityFeesStats":{"description":"Event notifying of an update to the liqudity fees stats for a market.","properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid across all parties.","type":"string"}},"type":"object","title":"v1PaidLiquidityFeesStats"},"party":{"title":"Party events","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"type":"object"},"partyActivityStreak":{"title":"Event notifying of an update to a party's activity streak","properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"type":"object"},"partyMarginModeUpdated":{"description":"Event notifying of a party's margin mode update on a market.","properties":{"atEpoch":{"description":"Epoch at which the update happened.","format":"uint64","type":"string"},"marginFactor":{"description":"Margin factor for the market. Isolated mode only.","type":"string"},"marginMode":{"description":"Updated margin mode.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Unique ID of the market in which the update happened.","type":"string"},"maxTheoreticalLeverage":{"description":"Maximum theoretical leverage for the market. Isolated mode only.","type":"string"},"minTheoreticalMarginFactor":{"description":"Minimum theoretical margin factor for the market. Isolated mode only.","type":"string"},"partyId":{"description":"Unique ID of the party that updated their margin mode.","type":"string"}},"type":"object","title":"v1PartyMarginModeUpdated"},"partyProfileUpdated":{"description":"Event notifying of a party's profile update.","properties":{"updatedProfile":{"description":"Party's profile updated.","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"},"partyId":{"description":"Party ID associated to the profile.","type":"string"}},"type":"object","title":"vegaPartyProfile"}},"type":"object","title":"v1PartyProfileUpdated"},"positionResolution":{"title":"Position resolution events","properties":{"closed":{"format":"int64","title":"Number of close outs","type":"string"},"distressed":{"format":"int64","title":"Number of distressed traders","type":"string"},"markPrice":{"title":"Mark price as a string representing a scaled price","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"}},"type":"object"},"positionStateEvent":{"title":"Position status for a party in a market","properties":{"marketId":{"title":"Market ID for this position update","type":"string"},"partyId":{"title":"Party ID for this position update","type":"string"},"potentialBuys":{"format":"int64","title":"Potential orders","type":"string"},"potentialSells":{"format":"int64","type":"string"},"size":{"format":"int64","title":"Current position","type":"string"},"vwBuyPrice":{"title":"Volume weighted prices","type":"string"},"vwSellPrice":{"type":"string"}},"type":"object"},"proposal":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"protocolUpgradeDataNodeReady":{"title":"Core snapshot has been taken at the end of the block","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"protocolUpgradeEvent":{"title":"Protocol upgrade proposal updates","properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"title":"Status of the proposal","default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object"},"protocolUpgradeStarted":{"title":"Core is starting a protocol upgrade","properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"type":"object"},"rankingEvent":{"title":"Ranking event","properties":{"epochSeq":{"title":"Epoch seq for which the status is valid","type":"string"},"nextStatus":{"title":"Status of the validator in the next epoch","type":"string"},"nodeId":{"type":"string"},"performanceScore":{"title":"Performance base score","type":"string"},"previousStatus":{"title":"Status of the validator in the previous epoch","type":"string"},"rankingScore":{"title":"Final score","type":"string"},"stakeScore":{"title":"Stake based score - no anti-whaling","type":"string"},"tmVotingPower":{"format":"int64","title":"Tendermint voting power of the validator","type":"integer"}},"type":"object"},"refereeJoinedReferralSet":{"description":"Event notifying a referee has joined a referral set.","properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"setId":{"description":"Unique ID of the referral set the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedReferralSet"},"refereeJoinedTeam":{"description":"Event notifying that a referee joined a team.","properties":{"atEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined a team.","format":"int64","type":"string"},"referee":{"description":"The party that joined the team.","type":"string"},"teamId":{"description":"The unique identifier of the team the referee joined.","type":"string"}},"type":"object","title":"v1RefereeJoinedTeam"},"refereeSwitchedTeam":{"description":"Event notifying that a referee switched teams.","properties":{"atEpoch":{"description":"Epoch at which the party switched the team.","format":"uint64","type":"string"},"fromTeamId":{"description":"The unique identifier of the team the referee left.","type":"string"},"referee":{"description":"The party that switched team.","type":"string"},"switchedAt":{"description":"Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.","format":"int64","type":"string"},"toTeamId":{"description":"The unique identifier of the team joined.","type":"string"}},"type":"object","title":"v1RefereeSwitchedTeam"},"referralProgramEnded":{"description":"Event notifying that a referral program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the referral program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1ReferralProgramEnded"},"referralProgramStarted":{"description":"Event notifying that a referral program has started.","properties":{"atEpoch":{"description":"Epoch at which the referral program started.","format":"uint64","type":"string"},"program":{"description":"Referral program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the referral program started.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramStarted"},"referralProgramUpdated":{"description":"Event notifying that a referral program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the referral program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the referral program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralProgramUpdated"},"referralSetCreated":{"description":"Event notifying a referral set has been created.","properties":{"createdAt":{"description":"Time in Unix nanoseconds when the set was created.","format":"int64","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"setId":{"description":"Unique ID of the created set.","type":"string"},"updatedAt":{"description":"Time in Unix nanoseconds when the set was updated.","format":"int64","type":"string"}},"type":"object","title":"v1ReferralSetCreated"},"referralSetStatsUpdated":{"description":"Event notifying of an update to a referral set's statistics.","properties":{"atEpoch":{"description":"Epoch at which the set's statistics are updated.","format":"uint64","type":"string"},"refereesStats":{"description":"Referees' statistics for that epoch.","items":{"properties":{"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"title":"Current referee notional taker volume","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object","title":"v1RefereeStats"},"type":"array"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Taker volume of the referrer","type":"string"},"rewardFactor":{"description":"Reward factor applied to the trades.","type":"string"},"rewardsFactorMultiplier":{"description":"Rewards factor multiplier for the trades.","type":"string"},"rewardsMultiplier":{"description":"Rewards multiplier applied to the trades.","type":"string"},"setId":{"description":"Unique ID of the set.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object","title":"v1ReferralSetStatsUpdated"},"rewardPayout":{"title":"Reward payout event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"epochSeq":{"type":"string"},"gameId":{"type":"string"},"lockedUntilEpoch":{"type":"string"},"party":{"type":"string"},"percentOfTotalReward":{"type":"string"},"quantumAmount":{"type":"string"},"rewardType":{"type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"riskFactor":{"title":"Risk factor events","properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"type":"object"},"settleDistressed":{"title":"Position distressed events","properties":{"margin":{"title":"Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID i.e. a party's public key for the event","type":"string"},"price":{"title":"Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"}},"type":"object"},"settleMarket":{"title":"Settle market event for data-node to update positions for settled markets","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"}},"type":"object"},"settlePosition":{"title":"Position settlement events","properties":{"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"},"tradeSettlements":{"items":{"properties":{"marketPrice":{"title":"Price of settlement as a string (in market decimals)","type":"string"},"price":{"title":"Price of settlement as string (in asset decimals)","type":"string"},"size":{"format":"int64","title":"Size of trade settlement","type":"string"}},"title":"Trade settlement is part of the settle position event","type":"object"},"title":"A collection of 1 or more trade settlements","type":"array"}},"type":"object"},"stakeLinking":{"title":"Staking event","properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"type":"object"},"stateVar":{"title":"State variable consensus state transition update","properties":{"eventId":{"type":"string"},"id":{"type":"string"},"state":{"type":"string"}},"type":"object"},"stopOrder":{"title":"A stop order event","properties":{"stopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"title":"An optional reason for why a stop order was rejected","default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION","REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION","REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES"],"type":"string"},"sizeOverrideSetting":{"title":"Size override setting","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"Size override value","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"status":{"description":"Status of the stop order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"description":"Trigger direction for this stop order.","default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object","title":"vegaStopOrder"},"submission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"}},"type":"object"},"teamCreated":{"title":"Event notifying of the creation of a team.m","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"atEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"createdAt":{"description":"Time in Unix nanoseconds when the team is created.","format":"int64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"The party that created the team.","type":"string"},"teamId":{"description":"The unique identifier of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"teamUpdated":{"description":"Event notifying of an update to a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamId":{"description":"The unique identifier for the updated team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object","title":"v1TeamUpdated"},"timeUpdate":{"title":"Time update events","properties":{"timestamp":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"type":"object"},"trade":{"title":"Trade events","properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"type":"object"},"transactionResult":{"title":"Result of a transaction processed by the network","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"batchProposal":{"description":"Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"}},"type":"object","title":"v1BatchProposalSubmission"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"createReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"failure":{"properties":{"error":{"title":"Error message explaining the reason for the transaction failing processing","type":"string"}},"type":"object","title":"TransactionResultFailureDetails"},"hash":{"title":"Hash of the transaction","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"joinTeam":{"description":"Command that allows the submitter to join a team or change teams if they are already a member of a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object","title":"v1JoinTeam"},"keyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"status":{"description":"Status of the transaction, did it succeed or an error was raised.","type":"boolean"},"stopOrderCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrderSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"success":{"type":"object","title":"TransactionResultSuccessDetails"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"v1UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"updatePartyProfile":{"description":"Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"type":"object","title":"v1UpdatePartyProfile"},"updateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"transfer":{"title":"Transfer event","properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"gameId":{"title":"ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation","type":"string"},"id":{"type":"string"},"oneOff":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object","title":"v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"vegaeventsv1RecurringTransfer"},"recurringGovernance":{"properties":{"dispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object","title":"v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object"},"transferFees":{"description":"Event notifying of fees related to a transfer being paid.","properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"discountApplied":{"description":"Amount that was subtracted from the transfer fee based on available discounts.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object","title":"v1TransferFees"},"transferFeesDiscount":{"description":"Event notifying of a party's available discounts for transfer fees, per asset.","properties":{"amount":{"description":"Amount that the transfer fee was discounted by.","type":"string"},"asset":{"description":"Asset that the transfer fee discount is relevant to.","type":"string"},"epoch":{"description":"Epoch in which the discount was first available.","format":"uint64","type":"string"},"party":{"description":"Party that the transfer fee discount applies to.","type":"string"}},"type":"object","title":"v1TransferFeesDiscount"},"txErrEvent":{"title":"Transaction error events, not included in the ALL event type","properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"errMsg":{"title":"Error message describing what went wrong","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"v1UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"txHash":{"type":"string"},"type":{"title":"The type of bus event. Must be one of the list below:","default":"BUS_EVENT_TYPE_UNSPECIFIED","description":"- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"validatorScore":{"title":"Validator score calculated","properties":{"epochSeq":{"type":"string"},"multisigScore":{"type":"string"},"nodeId":{"type":"string"},"normalisedScore":{"type":"string"},"rawValidatorScore":{"type":"string"},"validatorPerformance":{"type":"string"},"validatorScore":{"type":"string"},"validatorStatus":{"type":"string"}},"type":"object"},"validatorUpdate":{"title":"Validator update events","properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"type":"object"},"version":{"format":"int64","title":"Version of bus event","type":"integer"},"vestingBalancesSummary":{"description":"Event notifying of an update to the vesting and locked balances.","properties":{"epochSeq":{"description":"Epoch for which these balances are valid.","format":"uint64","type":"string"},"partiesVestingSummary":{"description":"Parties' summaries.","items":{"properties":{"party":{"description":"Party ID.","type":"string"},"partyLockedBalances":{"description":"List of locked balances.","items":{"description":"A party's locked balance for a given asset.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Locked balance.","type":"string"},"untilEpoch":{"description":"Epoch in which the balance will be released.","format":"uint64","type":"string"}},"type":"object","title":"v1PartyLockedBalance"},"type":"array"},"partyVestingBalances":{"description":"List of vesting balances.","items":{"description":"Balance that is being vested for the party.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Balance that is vested.","type":"string"}},"type":"object","title":"v1PartyVestingBalance"},"type":"array"}},"title":"Summary of a party's vesting balances","type":"object"},"type":"array"}},"title":"Summary of the vesting and locked balances for an epoch","type":"object"},"vestingStatsUpdated":{"description":"Event notifying of an update to the vesting statistics.","properties":{"atEpoch":{"description":"Epoch at which the vesting statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties stats.","items":{"description":"The vesting stats for a given party.","properties":{"partyId":{"description":"The party.","type":"string"},"quantumBalance":{"description":"The balance of the party, in quantum.","type":"string"},"rewardBonusMultiplier":{"description":"The bonus multiplier applied on the reward.","type":"string"}},"type":"object","title":"v1PartyVestingStats"},"type":"array"}},"type":"object","title":"v1VestingStatsUpdated"},"volumeDiscountProgramEnded":{"description":"Event notifying that a volume discount program has ended.","properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the volume discount program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramEnded"},"volumeDiscountProgramStarted":{"description":"Event notifying that a volume discount program has started.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program started.","format":"uint64","type":"string"},"program":{"description":"Volume discount program that has started.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"startedAt":{"description":"Time in Unix nanoseconds when the volume discount program started.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramStarted"},"volumeDiscountProgramUpdated":{"description":"Event notifying that a volume discount program has been updated.","properties":{"atEpoch":{"description":"Epoch at which the volume discount program was updated.","format":"uint64","type":"string"},"program":{"description":"The updated volume discount program.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object","title":"vegaVolumeDiscountProgram"},"updatedAt":{"description":"Time in Unix nanoseconds when the volume discount program was updated.","format":"int64","type":"string"}},"type":"object","title":"v1VolumeDiscountProgramUpdated"},"volumeDiscountStatsUpdated":{"description":"Event notifying of an update to the volume discount statistics.","properties":{"atEpoch":{"description":"Epoch at which the volume discount statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties' stats.","items":{"description":"Volume discount stats for a given party.","properties":{"discountFactor":{"description":"Discount factor applied to fees.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object","title":"v1PartyVolumeDiscountStats"},"type":"array"}},"type":"object","title":"v1VolumeDiscountStatsUpdated"},"vote":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"withdrawal":{"title":"Withdrawal events","properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"description":"Foreign chain specifics.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"description":"Status of the withdrawal.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"type":"object"}},"title":"Bus event is a container for event bus events emitted by Vega","type":"object"},"type":"array"}},"title":"Response to a subscribed stream of events from the Vega event bus","type":"object"}},"title":"Stream result of v2ObserveEventBusResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Events"],"description":"Subscribe to a stream of events from the core","operationId":"TradingDataService_ObserveEventBus","method":"get","path":"/api/v2/stream/event/bus","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe event bus","description":{"content":"Subscribe to a stream of events from the core","type":"text/plain"},"url":{"path":["api","v2","stream","event","bus"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","type":"text/plain"},"key":"type","value":""},{"disabled":false,"description":{"content":"Market ID to filter for, optional field. If empty, no markets will be excluded from the stream.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Party ID to filter for, optional field. If empty, no parties will be excluded from the stream.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Batch size,\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","type":"text/plain"},"key":"batchSize","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe event bus' (trading-data-service-observe-event-bus)" @@ -27,7 +27,7 @@ import TabItem from "@theme/TabItem"; Subscribe to a stream of events from the core -
    Query Parameters
    +
    Query Parameters
    A successful response.(streaming responses) @@ -35,7 +35,7 @@ A successful response.(streaming responses) List of events that occurred on the Vega event bus. -
  • Array [
  • account object
    asset object
    details object
    +
  • Array [
  • account object
    asset object
    details object
    Definition of the external source for this asset. @@ -82,7 +82,11 @@ Referral rewards generated by all referee taker fees. Amount of rewards generated per party. -
  • Array [
  • ]
  • ]
  • totalMakerFeesReceived object[]
    +
  • Array [
  • ]
  • ]
  • totalFeesPaidAndReceived object[]
    + +Total trading fees received and paid by the party. + +
  • Array [
  • ]
  • totalMakerFeesReceived object[]
    Total maker fees received by the maker side. @@ -118,7 +122,7 @@ Resulting balances once the ledger movement are applied. Account relating to the transfer. -
  • ]
  • entries object[]
    +
  • ]
  • entries object[]
    All the entries for these ledger movements. @@ -126,11 +130,11 @@ All the entries for these ledger movements. One or more accounts to transfer from. -
    toAccount object
    +
    toAccount object
    One or more accounts to transfer to. -
  • ]
  • ]
  • liquidityProvision object
    buys object[]
    +
  • ]
  • ]
  • liquidityProvision object
    buys object[]
    Set of liquidity buy orders to meet the liquidity provision obligation. @@ -146,7 +150,7 @@ Set of liquidity sell orders to meet the liquidity provision obligation. Liquidity order from the original submission. -
  • ]
  • lossSocialization object
    marginLevels object
    market object
    marketCreated object
    fees object
    +
  • ]
  • lossSocialization object
    marginLevels object
    market object
    marketCreated object
    fees object
    Fees configuration that apply to the market. @@ -154,7 +158,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -166,7 +178,111 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    +
    markPriceConfiguration object
    + +Mark price calculation configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    Timestamps for when the market state changes. @@ -238,7 +354,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -344,7 +460,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -423,7 +539,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -462,7 +578,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -568,7 +684,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -635,7 +855,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -671,7 +891,7 @@ Equity like share of liquidity fee for each liquidity provider. SLA performance for each liquidity provider. -
  • Array [
  • ]
  • priceMonitoringBounds object[]
    +
  • Array [
  • ]
  • priceMonitoringBounds object[]
    One or more price monitoring bounds for the current timestamp. @@ -687,7 +907,7 @@ Data related to the particular product type of the market. Represents market data specific to a perpetual market. -
    marketTick object
    marketUpdated object
    fees object
    +
    marketTick object
    marketUpdated object
    fees object
    Fees configuration that apply to the market. @@ -695,7 +915,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -707,50 +935,15 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    - -Timestamps for when the market state changes. - -
    openingAuction object
    - -Auction duration specifies how long the opening auction will run (minimum -duration and optionally a minimum traded volume). - -
    priceMonitoringSettings object
    - -PriceMonitoringSettings for the market. - -
    parameters object
    - -Specifies price monitoring parameters to be used for price monitoring purposes. - -
    triggers object[]
  • Array [
  • ]
  • tradableInstrument object
    - -Tradable instrument configuration. - -
    instrument object
    - -Details for the underlying instrument. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    - -Binding between the data spec and the data source. - -
    dataSourceSpecForSettlementData object
    +
    markPriceConfiguration object
    -Data source specification that describes the settlement data source filter. +Mark price calculation configuration. -
    data object
    +
    dataSourcesSpec object[]
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -779,7 +972,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -846,15 +1039,154 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    - -Data source specification that describes the trading termination data source filter. +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    -
    data object
    +Timestamps for when the market state changes. -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +
    openingAuction object
    + +Auction duration specifies how long the opening auction will run (minimum +duration and optionally a minimum traded volume). + +
    priceMonitoringSettings object
    + +PriceMonitoringSettings for the market. + +
    parameters object
    + +Specifies price monitoring parameters to be used for price monitoring purposes. + +
    triggers object[]
  • Array [
  • ]
  • tradableInstrument object
    + +Tradable instrument configuration. + +
    instrument object
    + +Details for the underlying instrument. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data spec and the data source. + +
    dataSourceSpecForSettlementData object
    + +Data source specification that describes the settlement data source filter. + +
    data object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Data source specification that describes the trading termination data source filter. + +
    data object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -885,7 +1217,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -964,7 +1296,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -1003,7 +1335,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1109,7 +1441,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1176,7 +1612,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -1264,7 +1700,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1335,7 +1771,7 @@ Conditions that the timestamps need to meet in order to be considered. Pegged order details, used only if the order represents a pegged order. -
    paidLiquidityFeesStats object
    +
    paidLiquidityFeesStats object
    Event notifying of an update to the liqudity fees stats for a market. @@ -1343,37 +1779,43 @@ Event notifying of an update to the liqudity fees stats for a market. Fees paid per party. -
  • Array [
  • ]
  • party object
    partyActivityStreak object
    positionResolution object
    positionStateEvent object
    proposal object
    rationale object
    +
  • Array [
  • ]
  • party object
    metadata object[]
    -Rationale behind a proposal. +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. -
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    +
  • Array [
  • ]
  • partyActivityStreak object
    partyMarginModeUpdated object
    -Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Event notifying of a party's margin mode update on a market. -
    cancelTransfer object
    +
    partyProfileUpdated object
    -Cancel a governance transfer. +Event notifying of a party's profile update. -
    changes object
    newAsset object
    +
    updatedProfile object
    -Proposal change for creating new assets on Vega. +Party's profile updated. -
    changes object
    +
    metadata object[]
    -Configuration of the new asset. +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. -
    builtinAsset object
    +
  • Array [
  • ]
  • positionResolution object
    positionStateEvent object
    proposal object
    batchTerms object
    -Vega built-in asset. +Batch proposal terms. -
    erc20 object
    +
    changes object[]
    -Ethereum ERC20 asset. +List of individual changes included in the batch proposal. -
    newMarket object
    +
  • Array [
  • cancelTransfer object
    -Proposal change for creating new futures market on Vega. +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market.
    changes object
    @@ -1424,7 +1866,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1524,7 +1966,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1599,7 +2041,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -1632,7 +2074,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1732,7 +2174,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1799,63 +2241,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Spot. - -
    liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    successor object
    - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
    newSpotMarket object
    - -Proposal change for creating new spot market on Vega. - -
    changes object
    - -Configuration of the new spot market. - -
    instrument object
    - -New spot market instrument configuration. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1884,7 +2278,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1951,11 +2345,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -The external data source spec describing the data source of trading termination. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1984,7 +2410,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2051,15 +2477,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Perpetual. +Price monitoring parameters. -
    dataSourceSpecBinding object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -2092,7 +2542,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2159,9 +2609,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement schedule. +The external data source spec describing the data source of trading termination.
    external object
    @@ -2192,7 +2642,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2259,85 +2709,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    - -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Data source spec describing the data source for settlement.
    external object
    @@ -2368,7 +2750,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2435,9 +2817,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -The data source spec describing the data source for trading termination. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -2468,7 +2850,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2535,19 +2917,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -2576,7 +2954,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -2643,76 +3021,5393 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Data source spec describing the data source for settlement schedule. +Spot. -
    external object
    +
    liquidityFeeSettings object
    -DataSourceDefinitionExternal is the top level object used for all external -data sources. It contains one of any of the defined `SourceType` variants. +Specifies how the liquidity fee for the market will be calculated. -
    ethOracle object
    +
    logNormal object
    -Contains the data specification that is received from Ethereum sources. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    filters object[]
  • Array [
  • conditions object[]
    +
    params object
    -Conditions that should be matched by the data to be -considered of interest. +Risk model parameters for log normal. -
  • Array [
  • ]
  • key object
    +
    priceMonitoringParameters object
    -Data source's data property key targeted by the filter. +Price monitoring parameters. -
  • ]
  • normalisers object[]
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Normalisers are used to convert the data returned from the contract method -into a standard format. The key of the map is the name of the property, -which identifies the specific piece of data to other parts of the data -sourcing framework, for example filters. The value is a JSONPath expression -for expressing where in the contract call result the required data is -located, for example $[0] indicates the first result. $[1].price would look -in the second result returned from the contract for a structure with a key -called 'price' and use that if it exists. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
  • Array [
  • ]
  • trigger object
    +
    slaParams object
    -Conditions for determining when to call the contract method. +Specifies the liquidity provision SLA parameters. -
    timeTrigger object
    +
    targetStakeParameters object
    -Trigger for an Ethereum call based on the Ethereum block timestamp. Can be -one-off or repeating. +Specifies parameters related to target stake calculation. -
    oracle object
    +
    newTransfer object
    -All types of external data sources use the same configuration set for meeting -requirements in order for the data to be useful for Vega - valid signatures -and matching filters. +Proposal change for a governance initiated transfer. -
    filters object[]
    +
    changes object
    -Filters describes which source data are considered of interest or not for -the product (or the risk model). +Configuration for a new transfer. -
  • Array [
  • conditions object[]
    +
    oneOff object
    recurring object
    dispatchStrategy object
    -Conditions that should be matched by the data to be -considered of interest. +Optional parameter defining how a transfer is dispatched. -
  • Array [
  • ]
  • key object
    +
    rankTable object[]
    -Data source's data property key targeted by the filter. +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • ]
  • signers object[]
    +
  • Array [
  • ]
  • updateAsset object
    -Signers is the list of authorized signatures that signed the data for this -source. All the signatures in the data source data should be contained in -this external source. All the signatures in the data should be contained in -this list. +Proposal change for updating an asset. -
  • Array [
  • ethAddress object
    +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market on Vega. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • protocolUpgradeDataNodeReady object
    protocolUpgradeEvent object
    protocolUpgradeStarted object
    rankingEvent object
    refereeJoinedReferralSet object
    + +Event notifying a referee has joined a referral set. + +
    refereeJoinedTeam object
    + +Event notifying that a referee joined a team. + +
    refereeSwitchedTeam object
    + +Event notifying that a referee switched teams. + +
    referralProgramEnded object
    + +Event notifying that a referral program has ended. + +
    referralProgramStarted object
    + +Event notifying that a referral program has started. + +
    program object
    + +Referral program that has started. + +
    benefitTiers object[]
    + +Defined benefit tiers ordered by increasing discounts. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined benefit tiers ordered by increasing reward multiplier. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • referralProgramUpdated object
    + +Event notifying that a referral program has been updated. + +
    program object
    + +The updated referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers ordered by increasing discounts. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined benefit tiers ordered by increasing reward multiplier. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • referralSetCreated object
    + +Event notifying a referral set has been created. + +
    referralSetStatsUpdated object
    + +Event notifying of an update to a referral set's statistics. + +
    refereesStats object[]
    + +Referees' statistics for that epoch. + +
  • Array [
  • ]
  • rewardPayout object
    riskFactor object
    settleDistressed object
    settleMarket object
    settlePosition object
    tradeSettlements object[]
  • Array [
  • ]
  • stakeLinking object
    stateVar object
    stopOrder object
    stopOrder object
    sizeOverrideValue object
    submission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    teamCreated object
    teamUpdated object
    + +Event notifying of an update to a team. + +
    timeUpdate object
    trade object
    buyerFee object
    + +Fee amount charged to the buyer party for the trade. + +
    sellerFee object
    + +Fee amount charged to the seller party for the trade. + +
    transactionResult object
    announceNode object
    + +A command that allows a new node operator to announce themselves to the network as a new validator. + +
    ethereumSignature object
    + +Signature from the node made using the ethereum wallet. + +
    vegaSignature object
    + +Signature from the node made using the Vega wallet. + +
    applyReferralCode object
    + +Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set. +A party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer. +To switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch. + +
    batchMarketInstructions object
    + +A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction. +These instructions are then processed sequentially in the following order: +- OrderCancellation +- OrderAmendment +- OrderSubmission +- StopOrderSubmission +where the maximum allow of instructions in a batch is controlled by the network parameter "spam.protection.max.batchSize". + +
    amendments object[]
    + +List of order amendments to be processed sequentially. + +
  • Array [
  • ]
  • cancellations object[]
    + +List of order cancellations to be processed sequentially. + +
  • Array [
  • ]
  • stopOrdersCancellation object[]
    + +List of stop order cancellations to be processed sequentially. + +
  • Array [
  • ]
  • stopOrdersSubmission object[]
    + +List of stop order submissions to be processed sequentially. + +
  • Array [
  • fallsBelow object
    + +Stop order that will be triggered if the price falls below a given trigger price. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    sizeOverrideValue object
    risesAbove object
    + +Stop order that will be triggered if the price rises above a given trigger price. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    sizeOverrideValue object
  • ]
  • submissions object[]
    + +List of order submissions to be processed sequentially. + +
  • Array [
  • icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
  • ]
  • updateMarginMode object[]
  • Array [
  • ]
  • batchProposal object
    + +Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market and a network parameter change with it. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    changes object[]
    + +List of individual changes included in the batch proposal. + +
  • Array [
  • cancelTransfer object
    + +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • cancelTransfer object
    + +Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction. + +
    createReferralSet object
    + +Command that a party can use to instruct the network to create a new referral set on the network. +The submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set. +A referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set. + +
    team object
    + +Team details, if the referral set is to be considered a team. + +
    delegateSubmission object
    + +Command to allow a token holder to delegate their tokens to a validator to help secure the network. +A token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator. + +
    ethereumKeyRotateSubmission object
    + +A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated. + +
    ethereumSignature object
    + +Signature signed by the new Ethereum key that can be verified to prove ownership. + +
    failure object
    issueSignatures object
    + +Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract. +Signatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected. +The generated signatures can only be submitted to the contract by the Ethereum addresses included in the command. + +
    joinTeam object
    + +Command that allows the submitter to join a team or change teams if they are already a member of a team. + +
    keyRotateSubmission object
    + +A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated. + +
    liquidityProvisionAmendment object
    + +Command that allows a liquidity provider to update the details of their existing liquidity commitment. +Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. + +
    liquidityProvisionCancellation object
    + +Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. + +
    liquidityProvisionSubmission object
    + +A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. +An active liquidity provider for a market will earn fees based on the trades that occur in the market. + +
    oracleDataSubmission object
    orderAmendment object
    + +A command that allows a party to update the details of an existing order. +Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. +It is not possible to change an order's type through this command. + +
    orderCancellation object
    + +A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. +It is not possible to cancel another party's order with this command. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    proposal object
    + +Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    In case of an open oracle - Ethereum address will be submitted. @@ -2743,396 +8438,473 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Liquidity monitoring parameters. +Perpetual. -
    targetStakeParameters object
    +
    dataSourceSpecBinding object
    -Specifies parameters related to target stake calculation. +Binding between the data source spec and the settlement data. -
    liquiditySlaParameters object
    logNormal object
    +
    dataSourceSpecForSettlementData object
    -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. +Data source spec describing the data source for settlement. -
    params object
    +
    external object
    -Risk model parameters for log normal. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    priceMonitoringParameters object
    +
    ethOracle object
    -Price monitoring parameters. +Contains the data specification that is received from Ethereum sources. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Conditions that should be matched by the data to be +considered of interest. -
    updateMarketState object
    +
  • Array [
  • ]
  • key object
    -Proposal change for updating the state of a market. +Data source's data property key targeted by the filter. -
    changes object
    updateNetworkParameter object
    +
  • ]
  • normalisers object[]
    -Proposal change for updating Vega network parameters. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    changes object
    +
  • Array [
  • ]
  • trigger object
    -The network parameter to update. +Conditions for determining when to call the contract method. -
    updateReferralProgram object
    +
    timeTrigger object
    -Proposal change for updating the referral program. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    changes object
    +
    oracle object
    -Configuration for change to update a referral program. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    benefitTiers object[]
    +
    filters object[]
    -Defined benefit tiers in increasing order. First element will give Tier 1, -second element will give Tier 2, and so on. Determines the level of -benefit a party can expect based on performance criteria. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
  • Array [
  • ]
  • stakingTiers object[]
    +
  • Array [
  • conditions object[]
    -Defined staking tiers in increasing order. First element will give Tier 1, -second element will give Tier 2, and so on. Determines the level of -benefit a party can expect based on their staking. +Conditions that should be matched by the data to be +considered of interest. -
  • Array [
  • ]
  • updateSpotMarket object
    +
  • Array [
  • ]
  • key object
    -Proposal change for modifying an existing spot market on Vega. +Data source's data property key targeted by the filter. -
    changes object
    +
  • ]
  • signers object[]
    -Updated configuration of the spot market. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    logNormal object
    +
  • Array [
  • ethAddress object
    -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. +In case of an open oracle - Ethereum address will be submitted. -
    params object
    +
    pubKey object
    -Risk model parameters for log normal. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    priceMonitoringParameters object
    +
  • ]
  • internal object
    -Price monitoring parameters. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
    time object
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Internal data source used for emitting timestamps. -
    slaParams object
    +
    conditions object[]
    -Specifies the liquidity provision SLA parameters. +Conditions that the timestamps should meet in order to be considered. -
    targetStakeParameters object
    +
  • Array [
  • ]
  • timeTrigger object
    -Specifies parameters related to target stake calculation. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    updateVolumeDiscountProgram object
    +
    conditions object[]
    -Proposal change for updating the volume discount program. +Conditions that the timestamps need to meet in order to be considered. -
    changes object
    benefitTiers object[]
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Defined benefit tiers in increasing order. First element will give Tier 1, -second element will give Tier 2, and so on. Determines the level of -benefit a party can expect based on performance criteria. +Data source spec describing the data source for settlement schedule. -
  • Array [
  • ]
  • protocolUpgradeDataNodeReady object
    protocolUpgradeEvent object
    protocolUpgradeStarted object
    rankingEvent object
    refereeJoinedReferralSet object
    +
    external object
    -Event notifying a referee has joined a referral set. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    refereeJoinedTeam object
    +
    ethOracle object
    -Event notifying that a referee joined a team. +Contains the data specification that is received from Ethereum sources. -
    refereeSwitchedTeam object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Event notifying that a referee switched teams. +Conditions that should be matched by the data to be +considered of interest. -
    referralProgramEnded object
    +
  • Array [
  • ]
  • key object
    -Event notifying that a referral program has ended. +Data source's data property key targeted by the filter. -
    referralProgramStarted object
    +
  • ]
  • normalisers object[]
    -Event notifying that a referral program has started. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    program object
    +
  • Array [
  • ]
  • trigger object
    -Referral program that has started. +Conditions for determining when to call the contract method. -
    benefitTiers object[]
    +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    -Defined benefit tiers ordered by increasing discounts. +In case of an open oracle - Ethereum address will be submitted. -
  • Array [
  • ]
  • stakingTiers object[]
    +
    pubKey object
    -Defined benefit tiers ordered by increasing reward multiplier. Determines the level of -benefit a party can expect based on their staking. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
  • Array [
  • ]
  • referralProgramUpdated object
    +
  • ]
  • internal object
    -Event notifying that a referral program has been updated. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    program object
    +
    time object
    -The updated referral program. +Internal data source used for emitting timestamps. -
    benefitTiers object[]
    +
    conditions object[]
    -Defined benefit tiers ordered by increasing discounts. +Conditions that the timestamps should meet in order to be considered. -
  • Array [
  • ]
  • stakingTiers object[]
    +
  • Array [
  • ]
  • timeTrigger object
    -Defined benefit tiers ordered by increasing reward multiplier. Determines the level of -benefit a party can expect based on their staking. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
  • Array [
  • ]
  • referralSetCreated object
    +
    conditions object[]
    -Event notifying a referral set has been created. +Conditions that the timestamps need to meet in order to be considered. -
    referralSetStatsUpdated object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Event notifying of an update to a referral set's statistics. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    refereesStats object[]
    +
    dataSourcesSpec object[]
    -Referees' statistics for that epoch. +Additional price sources to be used for index price calculation. -
  • Array [
  • ]
  • rewardPayout object
    riskFactor object
    settleDistressed object
    settleMarket object
    settlePosition object
    tradeSettlements object[]
  • Array [
  • ]
  • stakeLinking object
    stateVar object
    stopOrder object
    stopOrder object
    submission object
    +
  • Array [
  • external object
    -A command that submits an order to the Vega network for a given market. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    icebergOpts object
    +
    ethOracle object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Contains the data specification that is received from Ethereum sources. -
    peggedOrder object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Conditions that should be matched by the data to be +considered of interest. -
    teamCreated object
    teamUpdated object
    +
  • Array [
  • ]
  • key object
    -Event notifying of an update to a team. +Data source's data property key targeted by the filter. -
    timeUpdate object
    trade object
    buyerFee object
    +
  • ]
  • normalisers object[]
    -Fee amount charged to the buyer party for the trade. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    sellerFee object
    +
  • Array [
  • ]
  • trigger object
    -Fee amount charged to the seller party for the trade. +Conditions for determining when to call the contract method. -
    transactionResult object
    announceNode object
    +
    timeTrigger object
    -A command that allows a new node operator to announce themselves to the network as a new validator. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    ethereumSignature object
    +
    oracle object
    -Signature from the node made using the ethereum wallet. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    vegaSignature object
    +
    filters object[]
    -Signature from the node made using the Vega wallet. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    applyReferralCode object
    +
  • Array [
  • conditions object[]
    -Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set. -A party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer. -To switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch. +Conditions that should be matched by the data to be +considered of interest. -
    batchMarketInstructions object
    +
  • Array [
  • ]
  • key object
    -A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction. -These instructions are then processed sequentially in the following order: -- OrderCancellation -- OrderAmendment -- OrderSubmission -- StopOrderSubmission -where the maximum allow of instructions in a batch is controlled by the network parameter "spam.protection.max.batchSize". +Data source's data property key targeted by the filter. -
    amendments object[]
    +
  • ]
  • signers object[]
    -List of order amendments to be processed sequentially. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
  • Array [
  • ]
  • cancellations object[]
    +
  • Array [
  • ethAddress object
    -List of order cancellations to be processed sequentially. +In case of an open oracle - Ethereum address will be submitted. -
  • Array [
  • ]
  • stopOrdersCancellation object[]
    +
    pubKey object
    -List of stop order cancellations to be processed sequentially. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
  • Array [
  • ]
  • stopOrdersSubmission object[]
    +
  • ]
  • internal object
    -List of stop order submissions to be processed sequentially. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
  • Array [
  • fallsBelow object
    +
    time object
    -Stop order that will be triggered if the price falls below a given trigger price. +Internal data source used for emitting timestamps. -
    orderSubmission object
    +
    conditions object[]
    -A command that submits an order to the Vega network for a given market. +Conditions that the timestamps should meet in order to be considered. -
    icebergOpts object
    +
  • Array [
  • ]
  • timeTrigger object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    peggedOrder object
    +
    conditions object[]
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Conditions that the timestamps need to meet in order to be considered. -
    risesAbove object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Stop order that will be triggered if the price rises above a given trigger price. +Spot. -
    orderSubmission object
    +
    liquidationStrategy object
    -A command that submits an order to the Vega network for a given market. +Liquidation strategy for this market. -
    icebergOpts object
    +
    liquidityFeeSettings object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Specifies how the liquidity fee for the market will be calculated. -
    peggedOrder object
    +
    liquidityMonitoringParameters object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Liquidity monitoring parameters. -
  • ]
  • submissions object[]
    +
    targetStakeParameters object
    -List of order submissions to be processed sequentially. +Specifies parameters related to target stake calculation. -
  • Array [
  • icebergOpts object
    +
    liquiditySlaParameters object
    logNormal object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    peggedOrder object
    +
    params object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Risk model parameters for log normal. -
  • ]
  • cancelTransfer object
    +
    markPriceConfiguration object
    -Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction. +Mark price configuration. -
    createReferralSet object
    +
    dataSourcesSpec object[]
    -Command that a party can use to instruct the network to create a new referral set on the network. -The submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set. -A referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set. +Additional price sources to be used for index price calculation. -
    team object
    +
  • Array [
  • external object
    -Team details, if the referral set is to be considered a team. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    delegateSubmission object
    +
    ethOracle object
    -Command to allow a token holder to delegate their tokens to a validator to help secure the network. -A token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator. +Contains the data specification that is received from Ethereum sources. -
    ethereumKeyRotateSubmission object
    +
    filters object[]
  • Array [
  • conditions object[]
    -A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated. +Conditions that should be matched by the data to be +considered of interest. -
    ethereumSignature object
    +
  • Array [
  • ]
  • key object
    -Signature signed by the new Ethereum key that can be verified to prove ownership. +Data source's data property key targeted by the filter. -
    failure object
    issueSignatures object
    +
  • ]
  • normalisers object[]
    -Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract. -Signatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected. -The generated signatures can only be submitted to the contract by the Ethereum addresses included in the command. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    keyRotateSubmission object
    +
  • Array [
  • ]
  • trigger object
    -A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated. +Conditions for determining when to call the contract method. -
    liquidityProvisionAmendment object
    +
    timeTrigger object
    -Command that allows a liquidity provider to update the details of their existing liquidity commitment. -Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    liquidityProvisionCancellation object
    +
    oracle object
    -Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    liquidityProvisionSubmission object
    +
    filters object[]
    -A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. -An active liquidity provider for a market will earn fees based on the trades that occur in the market. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    oracleDataSubmission object
    orderAmendment object
    +
  • Array [
  • conditions object[]
    -A command that allows a party to update the details of an existing order. -Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. -It is not possible to change an order's type through this command. +Conditions that should be matched by the data to be +considered of interest. -
    orderCancellation object
    +
  • Array [
  • ]
  • key object
    -A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. -It is not possible to cancel another party's order with this command. +Data source's data property key targeted by the filter. -
    orderSubmission object
    +
  • ]
  • signers object[]
    -A command that submits an order to the Vega network for a given market. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    icebergOpts object
    +
  • Array [
  • ethAddress object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +In case of an open oracle - Ethereum address will be submitted. -
    peggedOrder object
    +
    pubKey object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    proposal object
    +
  • ]
  • internal object
    -Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. -For example this command can be used to propose a new market. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    rationale object
    +
    time object
    -Rationale behind a proposal. +Internal data source used for emitting timestamps. -
    terms object
    +
    conditions object[]
    -Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. +Conditions that the timestamps should meet in order to be considered. -
    cancelTransfer object
    +
  • Array [
  • ]
  • timeTrigger object
    -Cancel a governance transfer. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    changes object
    newAsset object
    +
    conditions object[]
    -Proposal change for creating new assets on Vega. +Conditions that the timestamps need to meet in order to be considered. -
    changes object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Configuration of the new asset. +Price monitoring parameters. -
    builtinAsset object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Vega built-in asset. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
    erc20 object
    +
    successor object
    -Ethereum ERC20 asset. +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. -
    newMarket object
    +
    newSpotMarket object
    -Proposal change for creating new futures market on Vega. +Proposal change for creating new spot market on Vega.
    changes object
    -Configuration of the new market. +Configuration of the new spot market. -
    instrument object
    +
    instrument object
    -New futures market instrument configuration. +New spot market instrument configuration.
    future object
    @@ -3175,7 +8947,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3275,7 +9047,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3350,7 +9122,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -3383,7 +9155,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3483,7 +9255,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3550,63 +9322,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    successor object
    - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
    newSpotMarket object
    - -Proposal change for creating new spot market on Vega. - -
    changes object
    - -Configuration of the new spot market. - -
    instrument object
    - -New spot market instrument configuration. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -3635,7 +9359,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3702,117 +9426,91 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    - -The external data source spec describing the data source of trading termination. - -
    external object
    - -DataSourceDefinitionExternal is the top level object used for all external -data sources. It contains one of any of the defined `SourceType` variants. - -
    ethOracle object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Contains the data specification that is received from Ethereum sources. +Spot. -
    filters object[]
  • Array [
  • conditions object[]
    +
    liquidityFeeSettings object
    -Conditions that should be matched by the data to be -considered of interest. +Specifies how the liquidity fee for the market will be calculated. -
  • Array [
  • ]
  • key object
    +
    logNormal object
    -Data source's data property key targeted by the filter. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
  • ]
  • normalisers object[]
    +
    params object
    -Normalisers are used to convert the data returned from the contract method -into a standard format. The key of the map is the name of the property, -which identifies the specific piece of data to other parts of the data -sourcing framework, for example filters. The value is a JSONPath expression -for expressing where in the contract call result the required data is -located, for example $[0] indicates the first result. $[1].price would look -in the second result returned from the contract for a structure with a key -called 'price' and use that if it exists. +Risk model parameters for log normal. -
  • Array [
  • ]
  • trigger object
    +
    priceMonitoringParameters object
    -Conditions for determining when to call the contract method. +Price monitoring parameters. -
    timeTrigger object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Trigger for an Ethereum call based on the Ethereum block timestamp. Can be -one-off or repeating. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
    oracle object
    +
    slaParams object
    -All types of external data sources use the same configuration set for meeting -requirements in order for the data to be useful for Vega - valid signatures -and matching filters. +Specifies the liquidity provision SLA parameters. -
    filters object[]
    +
    targetStakeParameters object
    -Filters describes which source data are considered of interest or not for -the product (or the risk model). +Specifies parameters related to target stake calculation. -
  • Array [
  • conditions object[]
    +
    newTransfer object
    -Conditions that should be matched by the data to be -considered of interest. +Proposal change for a governance transfer. -
  • Array [
  • ]
  • key object
    +
    changes object
    -Data source's data property key targeted by the filter. +Configuration for a new transfer. -
  • ]
  • signers object[]
    +
    oneOff object
    recurring object
    dispatchStrategy object
    -Signers is the list of authorized signatures that signed the data for this -source. All the signatures in the data source data should be contained in -this external source. All the signatures in the data should be contained in -this list. +Optional parameter defining how a transfer is dispatched. -
  • Array [
  • ethAddress object
    +
    rankTable object[]
    -In case of an open oracle - Ethereum address will be submitted. +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
    pubKey object
    +
  • Array [
  • ]
  • updateAsset object
    -List of authorized public keys that signed the data for this -source. All the public keys in the data should be contained in these -public keys. +Proposal change for updating an asset. -
  • ]
  • internal object
    +
    changes object
    -Top level object used for all internal data sources. -It contains one of any of the defined source type variants. +Changes to apply on an existing asset. -
    time object
    +
    erc20 object
    -Internal data source used for emitting timestamps. +Ethereum ERC20 asset update. -
    conditions object[]
    +
    updateMarket object
    -Conditions that the timestamps should meet in order to be considered. +Proposal change for modifying an existing futures market on Vega. -
  • Array [
  • ]
  • timeTrigger object
    +
    changes object
    -Internal data source used for emitting timestamps automatically using predefined intervals and conditions. +Updated configuration of the futures market. -
    conditions object[]
    +
    instrument object
    -Conditions that the timestamps need to meet in order to be considered. +Updated futures market instrument configuration. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
    future object
    -Perpetual. +Future. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -Binding between the data source spec and the settlement data. +The binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -Data source spec describing the data source for settlement. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -3843,7 +9541,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -3910,9 +9608,11 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement schedule. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -3943,7 +9643,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4010,85 +9710,19 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    - -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -4119,7 +9753,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4186,9 +9820,11 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -The data source spec describing the data source for trading termination. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -4219,7 +9855,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4286,19 +9922,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Configuration for the index price used in funding payment calculation. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -4327,7 +9959,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4394,11 +10026,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    -Data source spec describing the data source for settlement schedule. +Liquidation strategy used when the network holds a position resulting from position resolution. -
    external object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -4427,7 +10087,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4494,23 +10154,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -4558,7 +10202,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -4624,7 +10272,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -4640,7 +10288,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    transfer object
    oneOff object
    +
    sizeOverrideValue object
    transfer object
    oneOff object
    Details of a one-off transfer that is executed once at a specified time. @@ -4656,11 +10304,22 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • undelegateSubmission object
    +
  • Array [
  • ]
  • undelegateSubmission object
    Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node. -
    updateReferralSet object
    +
    updateMarginMode object
    updatePartyProfile object
    + +Command to associate metadata to a public key, known as a party ID. +Partial update is not supported, meaning previous values must be included in +the update, otherwise they are removed. + +
    metadata object[]
    + +Freeform data to associate to the party. +Support a maximum of 10 entries. + +
  • Array [
  • ]
  • updateReferralSet object
    A command that allows the referrer of a referral set to update team details for a referral set. Any field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged. @@ -4669,7 +10328,7 @@ Any field that is left unset or has a default value indicates that this field on Team details, if the referral set is to be considered a team. -
    voteSubmission object
    +
    voteSubmission object
    Command that allows a token holder to vote for or against an active governance proposal. @@ -4687,7 +10346,7 @@ Details specific to the foreign chain, such as the receiver address. ERC20 withdrawal details. -
    transfer object
    oneOff object
    oneOffGovernance object
    recurring object
    dispatchStrategy object
    rankTable object[]
    +
    transfer object
    oneOff object
    oneOffGovernance object
    recurring object
    dispatchStrategy object
    rankTable object[]
    Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. @@ -4695,11 +10354,15 @@ Ordered list, using start rank, defining the rank bands and share ratio for each Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • transferFees object
    +
  • Array [
  • ]
  • transferFees object
    Event notifying of fees related to a transfer being paid. -
    txErrEvent object
    announceNode object
    +
    transferFeesDiscount object
    + +Event notifying of a party's available discounts for transfer fees, per asset. + +
    txErrEvent object
    announceNode object
    A command that allows a new node operator to announce themselves to the network as a new validator. @@ -4725,7 +10388,7 @@ where the maximum allow of instructions in a batch is controlled by the network List of order amendments to be processed sequentially. -
  • Array [
  • ]
  • cancellations object[]
    +
  • Array [
  • ]
  • cancellations object[]
    List of order cancellations to be processed sequentially. @@ -4753,7 +10416,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -4769,7 +10432,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • submissions object[]
    +
    sizeOverrideValue object
  • ]
  • submissions object[]
    List of order submissions to be processed sequentially. @@ -4781,7 +10444,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • cancelTransfer object
    +
  • ]
  • updateMarginMode object[]
  • Array [
  • ]
  • cancelTransfer object
    Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction. @@ -4801,92 +10464,300 @@ The generated signatures can only be submitted to the contract by the Ethereum a Command that allows a liquidity provider to update the details of their existing liquidity commitment. Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. -
    liquidityProvisionCancellation object
    +
    liquidityProvisionCancellation object
    + +Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. + +
    liquidityProvisionSubmission object
    + +A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. +An active liquidity provider for a market will earn fees based on the trades that occur in the market. + +
    oracleDataSubmission object
    orderAmendment object
    + +A command that allows a party to update the details of an existing order. +Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. +It is not possible to change an order's type through this command. + +
    orderCancellation object
    + +A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. +It is not possible to cancel another party's order with this command. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    proposal object
    + +Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    -Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. +Contains the data specification that is received from Ethereum sources. -
    liquidityProvisionSubmission object
    +
    filters object[]
  • Array [
  • conditions object[]
    -A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. -An active liquidity provider for a market will earn fees based on the trades that occur in the market. +Conditions that should be matched by the data to be +considered of interest. -
    oracleDataSubmission object
    orderAmendment object
    +
  • Array [
  • ]
  • key object
    -A command that allows a party to update the details of an existing order. -Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. -It is not possible to change an order's type through this command. +Data source's data property key targeted by the filter. -
    orderCancellation object
    +
  • ]
  • normalisers object[]
    -A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. -It is not possible to cancel another party's order with this command. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    orderSubmission object
    +
  • Array [
  • ]
  • trigger object
    -A command that submits an order to the Vega network for a given market. +Conditions for determining when to call the contract method. -
    icebergOpts object
    +
    timeTrigger object
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    peggedOrder object
    +
    oracle object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    proposal object
    +
    filters object[]
    -Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. -For example this command can be used to propose a new market. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    rationale object
    +
  • Array [
  • conditions object[]
    -Rationale behind a proposal. +Conditions that should be matched by the data to be +considered of interest. -
    terms object
    +
  • Array [
  • ]
  • key object
    -Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. +Data source's data property key targeted by the filter. -
    cancelTransfer object
    +
  • ]
  • signers object[]
    -Cancel a governance transfer. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    changes object
    newAsset object
    +
  • Array [
  • ethAddress object
    -Proposal change for creating new assets on Vega. +In case of an open oracle - Ethereum address will be submitted. -
    changes object
    +
    pubKey object
    -Configuration of the new asset. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    builtinAsset object
    +
  • ]
  • internal object
    -Vega built-in asset. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    erc20 object
    +
    time object
    -Ethereum ERC20 asset. +Internal data source used for emitting timestamps. -
    newMarket object
    +
    conditions object[]
    -Proposal change for creating new futures market on Vega. +Conditions that the timestamps should meet in order to be considered. -
    changes object
    +
  • Array [
  • ]
  • timeTrigger object
    -Configuration of the new market. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    instrument object
    +
    conditions object[]
    -New futures market instrument configuration. +Conditions that the timestamps need to meet in order to be considered. -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -4919,7 +10790,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -4986,9 +10857,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -The external data source spec describing the data source of trading termination. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -5019,7 +10890,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5086,19 +10957,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -5127,7 +10994,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5194,11 +11061,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Data source spec describing the data source for settlement schedule. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -5227,7 +11126,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5294,27 +11193,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -5342,13 +11221,113 @@ New spot market instrument configuration. Future. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    -Binding between the data source spec and the settlement data. +Conditions that the timestamps need to meet in order to be considered. -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement. +The external data source spec describing the data source of trading termination.
    external object
    @@ -5379,7 +11358,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5446,9 +11425,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -The external data source spec describing the data source of trading termination. +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement.
    external object
    @@ -5479,7 +11466,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5546,17 +11533,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -5587,7 +11566,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5654,11 +11633,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Data source spec describing the data source for settlement schedule. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -5687,7 +11670,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5754,11 +11737,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -5790,7 +11777,7 @@ Proposal change for a governance transfer. Configuration for a new transfer. -
    oneOff object
    recurring object
    dispatchStrategy object
    +
    oneOff object
    recurring object
    dispatchStrategy object
    Optional parameter defining how a transfer is dispatched. @@ -5798,7 +11785,7 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • updateAsset object
    +
  • Array [
  • ]
  • updateAsset object
    Proposal change for updating an asset. @@ -5832,7 +11819,9 @@ The binding between the data source spec and the settlement data.
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -5863,7 +11852,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -5932,7 +11921,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -The data source spec describing the data source for trading termination. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -5963,7 +11954,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -6030,7 +12021,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    Perpetual. @@ -6038,9 +12029,11 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -Data source spec describing the data source for settlement. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -6071,7 +12064,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -6140,7 +12133,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement schedule. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -6171,7 +12166,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -6238,7 +12337,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -6254,7 +12361,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -6302,7 +12513,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -6340,7 +12555,7 @@ benefit a party can expect based on performance criteria. A validator command sent manually by a node operator to propose a protocol upgrade. -
    transfer object
    oneOff object
    +
    transfer object
    oneOff object
    Details of a one-off transfer that is executed once at a specified time. @@ -6356,11 +12571,11 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • undelegateSubmission object
    +
  • Array [
  • ]
  • undelegateSubmission object
    Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node. -
    voteSubmission object
    +
    voteSubmission object
    Command that allows a token holder to vote for or against an active governance proposal. @@ -6378,7 +12593,7 @@ Details specific to the foreign chain, such as the receiver address. ERC20 withdrawal details. -
    validatorScore object
    validatorUpdate object
    vestingBalancesSummary object
    +
    validatorScore object
    validatorUpdate object
    vestingBalancesSummary object
    Event notifying of an update to the vesting and locked balances. @@ -6438,7 +12653,11 @@ Event notifying of an update to the volume discount statistics. All parties' stats. -
  • Array [
  • ]
  • vote object
    withdrawal object
    ext object
    +
  • Array [
  • ]
  • vote object
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
    withdrawal object
    ext object
    Foreign chain specifics. @@ -6446,7 +12665,7 @@ Foreign chain specifics. ERC20 withdrawal details. -
  • ]
  • +
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-governance.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-governance.api.mdx index e1977bb5e..79e7a2479 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-governance.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-governance.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-governance title: "Observe governance" description: "Subscribe to a stream of updates to governance proposals" sidebar_label: "Observe governance" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict proposal updates to those proposed by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"data":{"description":"Governance data, i.e. proposal and votes for and against.","properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"}},"title":"Response from governance subscription","type":"object"}},"title":"Stream result of v2ObserveGovernanceResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Subscribe to a stream of updates to governance proposals","operationId":"TradingDataService_ObserveGovernance","method":"get","path":"/api/v2/stream/governance","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe governance","description":{"content":"Subscribe to a stream of updates to governance proposals","type":"text/plain"},"url":{"path":["api","v2","stream","governance"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict proposal updates to those proposed by the given party ID.","type":"text/plain"},"key":"partyId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict proposal updates to those proposed by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"data":{"description":"Governance data, i.e. proposal and votes for and against.","properties":{"no":{"description":"All NO votes against the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"noParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"description":"Governance proposal that is being voted on.","properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"proposalType":{"description":"Type of proposal this data is for.","default":"TYPE_SINGLE_OR_UNSPECIFIED","enum":["TYPE_SINGLE_OR_UNSPECIFIED","TYPE_BATCH"],"title":"Proposal type","type":"string"},"proposals":{"description":"If proposal type is batch, proposals will contain all the proposals that are make up the batch.","items":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"type":"array"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"},"yesParty":{"additionalProperties":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"}},"title":"Response from governance subscription","type":"object"}},"title":"Stream result of v2ObserveGovernanceResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Subscribe to a stream of updates to governance proposals","operationId":"TradingDataService_ObserveGovernance","method":"get","path":"/api/v2/stream/governance","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe governance","description":{"content":"Subscribe to a stream of updates to governance proposals","type":"text/plain"},"url":{"path":["api","v2","stream","governance"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict proposal updates to those proposed by the given party ID.","type":"text/plain"},"key":"partyId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe governance' (trading-data-service-observe-governance)" @@ -39,47 +39,39 @@ Governance data, i.e. proposal and votes for and against. All NO votes against the proposal above. -
  • Array [
  • ]
  • noParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • noParty object
    All latest NO votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
    proposal object
    - -Governance proposal that is being voted on. - -
    rationale object
    - -Rationale behind a proposal. - -
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    - -Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    -
    cancelTransfer object
    - -Cancel a governance transfer. +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. -
    changes object
    newAsset object
    +
    proposal object
    -Proposal change for creating new assets on Vega. +Governance proposal that is being voted on. -
    changes object
    +
    batchTerms object
    -Configuration of the new asset. +Batch proposal terms. -
    builtinAsset object
    +
    changes object[]
    -Vega built-in asset. +List of individual changes included in the batch proposal. -
    erc20 object
    +
  • Array [
  • cancelTransfer object
    -Ethereum ERC20 asset. +Proposal change to cancel a governance initiated transfe. -
    newMarket object
    +
    changes object
    newMarket object
    -Proposal change for creating new futures market on Vega. +Proposal change for creating new futures market.
    changes object
    @@ -130,7 +122,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -230,7 +222,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -305,7 +297,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -338,7 +330,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -438,7 +430,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -505,63 +497,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    liquidityMonitoringParameters object
    - -Liquidity monitoring parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    liquiditySlaParameters object
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    successor object
    - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
    newSpotMarket object
    - -Proposal change for creating new spot market on Vega. - -
    changes object
    - -Configuration of the new spot market. - -
    instrument object
    - -New spot market instrument configuration. - -
    future object
    - -Future. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -590,7 +534,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -657,11 +601,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -The external data source spec describing the data source of trading termination. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -690,7 +666,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -757,15 +733,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Perpetual. +Price monitoring parameters. -
    dataSourceSpecBinding object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -798,7 +798,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -865,9 +865,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement schedule. +The external data source spec describing the data source of trading termination.
    external object
    @@ -898,7 +898,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -965,85 +965,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    - -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Data source spec describing the data source for settlement.
    external object
    @@ -1074,7 +1006,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1141,9 +1073,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -The data source spec describing the data source for trading termination. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -1174,7 +1106,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1241,19 +1173,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Data source spec describing the data source for settlement. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1282,7 +1210,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1349,47 +1277,6695 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Data source spec describing the data source for settlement schedule. +Spot. -
    external object
    +
    liquidityFeeSettings object
    -DataSourceDefinitionExternal is the top level object used for all external -data sources. It contains one of any of the defined `SourceType` variants. +Specifies how the liquidity fee for the market will be calculated. -
    ethOracle object
    +
    logNormal object
    -Contains the data specification that is received from Ethereum sources. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    filters object[]
  • Array [
  • conditions object[]
    +
    params object
    -Conditions that should be matched by the data to be -considered of interest. +Risk model parameters for log normal. -
  • Array [
  • ]
  • key object
    +
    priceMonitoringParameters object
    -Data source's data property key targeted by the filter. +Price monitoring parameters. -
  • ]
  • normalisers object[]
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Normalisers are used to convert the data returned from the contract method -into a standard format. The key of the map is the name of the property, -which identifies the specific piece of data to other parts of the data -sourcing framework, for example filters. The value is a JSONPath expression -for expressing where in the contract call result the required data is -located, for example $[0] indicates the first result. $[1].price would look -in the second result returned from the contract for a structure with a key -called 'price' and use that if it exists. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
  • Array [
  • ]
  • trigger object
    +
    slaParams object
    -Conditions for determining when to call the contract method. +Specifies the liquidity provision SLA parameters. -
    timeTrigger object
    +
    targetStakeParameters object
    -Trigger for an Ethereum call based on the Ethereum block timestamp. Can be -one-off or repeating. +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market on Vega. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • proposals object[]
    + +If proposal type is batch, proposals will contain all the proposals that are make up the batch. + +
  • Array [
  • batchTerms object
    + +Batch proposal terms. + +
    changes object[]
    + +List of individual changes included in the batch proposal. + +
  • Array [
  • cancelTransfer object
    + +Proposal change to cancel a governance initiated transfe. + +
    changes object
    newMarket object
    + +Proposal change for creating new futures market. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating.
    oracle object
    @@ -1449,7 +8025,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -1465,7 +8049,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -1513,7 +8201,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1547,17 +8239,25 @@ Defined benefit tiers in increasing order. First element will give Tier 1, second element will give Tier 2, and so on. Determines the level of benefit a party can expect based on performance criteria. -
  • Array [
  • ]
  • yes object[]
    +
  • Array [
  • ]
  • ]
  • yes object[]
    All YES votes in favour of the proposal above. -
  • Array [
  • ]
  • yesParty object
    +
  • Array [
  • perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
  • ]
  • yesParty object
    All latest YES votes by party which is guaranteed to be unique, where key (string) is the party ID i.e. public key and value (Vote) is the vote cast by the given party. -
    property name* Governance vote
    +
    property name* Governance vote
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-ledger-movements.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-ledger-movements.api.mdx index ed56b6dbf..87596c4d7 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-ledger-movements.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-ledger-movements.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-ledger-movements title: "Observe ledger movements" description: "Subscribe to a stream of transfer responses" sidebar_label: "Observe ledger movements" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"ledgerMovement":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"properties":{"account":{"description":"Account relating to the transfer.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"description":"One or more accounts to transfer from.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"description":"One or more accounts to transfer to.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"type":{"description":"Transfer type for this entry.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents a ledger entry on Vega","type":"object"},"type":"array"}},"type":"object","title":"vegaLedgerMovement","description":"Ledger movements data with list of ledger entries and and post-transfer balances."}},"title":"Response from ledger movements subscription","type":"object"}},"title":"Stream result of v2ObserveLedgerMovementsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger movements"],"description":"Subscribe to a stream of transfer responses","operationId":"TradingDataService_ObserveLedgerMovements","method":"get","path":"/api/v2/stream/ledger/movements","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe ledger movements","description":{"content":"Subscribe to a stream of transfer responses","type":"text/plain"},"url":{"path":["api","v2","stream","ledger","movements"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"ledgerMovement":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"properties":{"account":{"description":"Account relating to the transfer.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"description":"One or more accounts to transfer from.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"description":"One or more accounts to transfer to.","properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"description":"Type of the account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"type":"object","title":"vegaAccountDetails"},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"transferId":{"description":"Transfer ID the ledger entry relates to.","type":"string"},"type":{"description":"Transfer type for this entry.","default":"TRANSFER_TYPE_UNSPECIFIED","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"}},"title":"Represents a ledger entry on Vega","type":"object"},"type":"array"}},"type":"object","title":"vegaLedgerMovement","description":"Ledger movements data with list of ledger entries and and post-transfer balances."}},"title":"Response from ledger movements subscription","type":"object"}},"title":"Stream result of v2ObserveLedgerMovementsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger movements"],"description":"Subscribe to a stream of transfer responses","operationId":"TradingDataService_ObserveLedgerMovements","method":"get","path":"/api/v2/stream/ledger/movements","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe ledger movements","description":{"content":"Subscribe to a stream of transfer responses","type":"text/plain"},"url":{"path":["api","v2","stream","ledger","movements"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe ledger movements' (trading-data-service-observe-ledger-movements)" @@ -43,7 +43,7 @@ Resulting balances once the ledger movement are applied. Account relating to the transfer. -
  • ]
  • entries object[]
    +
  • ]
  • entries object[]
    All the entries for these ledger movements. @@ -51,11 +51,11 @@ All the entries for these ledger movements. One or more accounts to transfer from. -
    toAccount object
    +
    toAccount object
    One or more accounts to transfer to. -
  • ]
  • +
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-liquidity-provisions.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-liquidity-provisions.api.mdx index 35e15db67..0be7cbd5a 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-liquidity-provisions.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-liquidity-provisions.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-liquidity-provisions title: "Observe liquidity provisions" description: "Subscribe to a stream of liquidity provision events for a given market and party" sidebar_label: "Observe liquidity provisions" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Target market to observe for liquidity provisions.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Target party to observe for submitted liquidity provisions.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"liquidityProvisions":{"items":{"properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"},"type":"array"}},"title":"Response from liquidity provisions subscription","type":"object"}},"title":"Stream result of v2ObserveLiquidityProvisionsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"Subscribe to a stream of liquidity provision events for a given market and party","operationId":"TradingDataService_ObserveLiquidityProvisions","method":"get","path":"/api/v2/stream/liquidity-provisions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe liquidity provisions","description":{"content":"Subscribe to a stream of liquidity provision events for a given market and party","type":"text/plain"},"url":{"path":["api","v2","stream","liquidity-provisions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Target market to observe for liquidity provisions.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Target party to observe for submitted liquidity provisions.","type":"text/plain"},"key":"partyId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Target market to observe for liquidity provisions.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Target party to observe for submitted liquidity provisions.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"liquidityProvisions":{"items":{"properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"properties":{"liquidityOrder":{"description":"Liquidity order from the original submission.","properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"description":"Pegged reference point for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Represents a liquidity order","type":"object"},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"type":"array"},"status":{"description":"Status of this liquidity provision.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string","title":"vegaLiquidityProvisionStatus"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"},"type":"array"}},"title":"Response from liquidity provisions subscription","type":"object"}},"title":"Stream result of v2ObserveLiquidityProvisionsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"Subscribe to a stream of liquidity provision events for a given market and party","operationId":"TradingDataService_ObserveLiquidityProvisions","method":"get","path":"/api/v2/stream/liquidity-provisions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe liquidity provisions","description":{"content":"Subscribe to a stream of liquidity provision events for a given market and party","type":"text/plain"},"url":{"path":["api","v2","stream","liquidity-provisions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Target market to observe for liquidity provisions.","type":"text/plain"},"key":"marketId","value":""},{"disabled":false,"description":{"content":"Target party to observe for submitted liquidity provisions.","type":"text/plain"},"key":"partyId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe liquidity provisions' (trading-data-service-observe-liquidity-provisions)" diff --git a/docs/api/rest/data-v2/trading-data-service-observe-margin-levels.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-margin-levels.api.mdx index be4add406..e3f9967e4 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-margin-levels.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-margin-levels.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-margin-levels title: "Observe margin levels" description: "Subscribe to a stream of margin levels updates" sidebar_label: "Observe margin levels" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict margin level updates to those relating to the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict margin level updates to those relating to the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"marginLevels":{"description":"Margin levels data that match the subscription request filters.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"title":"Response from subscribing to margin levels data","type":"object"}},"title":"Stream result of v2ObserveMarginLevelsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Margin levels"],"description":"Subscribe to a stream of margin levels updates","operationId":"TradingDataService_ObserveMarginLevels","method":"get","path":"/api/v2/stream/margin/levels","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe margin levels","description":{"content":"Subscribe to a stream of margin levels updates","type":"text/plain"},"url":{"path":["api","v2","stream","margin","levels"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict margin level updates to those relating to the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict margin level updates to those relating to the given market.","type":"text/plain"},"key":"marketId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict margin level updates to those relating to the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict margin level updates to those relating to the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"marginLevels":{"description":"Margin levels data that match the subscription request filters.","properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"description":"Margin mode for the party, cross margin or isolated margin.","default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"}},"title":"Response from subscribing to margin levels data","type":"object"}},"title":"Stream result of v2ObserveMarginLevelsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Margin levels"],"description":"Subscribe to a stream of margin levels updates","operationId":"TradingDataService_ObserveMarginLevels","method":"get","path":"/api/v2/stream/margin/levels","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe margin levels","description":{"content":"Subscribe to a stream of margin levels updates","type":"text/plain"},"url":{"path":["api","v2","stream","margin","levels"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict margin level updates to those relating to the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict margin level updates to those relating to the given market.","type":"text/plain"},"key":"marketId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe margin levels' (trading-data-service-observe-margin-levels)" @@ -35,7 +35,7 @@ A successful response.(streaming responses) Margin levels data that match the subscription request filters. -
    +
    An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-markets-data.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-markets-data.api.mdx index b122cb5a1..d9c72b49b 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-markets-data.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-markets-data.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-markets-data title: "Observe markets data" description: "Subscribe to a stream of data about a given market" sidebar_label: "Observe markets data" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict updates to market data by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"marketData":{"description":"List of market data.","items":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"type":"array"}},"title":"Response that is received for market data subscription","type":"object"}},"title":"Stream result of v2ObserveMarketsDataResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of data about a given market","operationId":"TradingDataService_ObserveMarketsData","method":"get","path":"/api/v2/stream/markets/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe markets data","description":{"content":"Subscribe to a stream of data about a given market","type":"text/plain"},"url":{"path":["api","v2","stream","markets","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict updates to market data by the given market IDs.","type":"text/plain"},"key":"marketIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict updates to market data by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"marketData":{"description":"List of market data.","items":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"description":"The method used for calculating the mark price.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"description":"The method used for calculating the index price (perps only).","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"type":"array"}},"title":"Response that is received for market data subscription","type":"object"}},"title":"Stream result of v2ObserveMarketsDataResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of data about a given market","operationId":"TradingDataService_ObserveMarketsData","method":"get","path":"/api/v2/stream/markets/data","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe markets data","description":{"content":"Subscribe to a stream of data about a given market","type":"text/plain"},"url":{"path":["api","v2","stream","markets","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict updates to market data by the given market IDs.","type":"text/plain"},"key":"marketIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe markets data' (trading-data-service-observe-markets-data)" @@ -43,7 +43,7 @@ Equity like share of liquidity fee for each liquidity provider. SLA performance for each liquidity provider. -
  • Array [
  • ]
  • priceMonitoringBounds object[]
    +
  • Array [
  • ]
  • priceMonitoringBounds object[]
    One or more price monitoring bounds for the current timestamp. @@ -59,7 +59,7 @@ Data related to the particular product type of the market. Represents market data specific to a perpetual market. -
  • ]
  • +
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-markets-depth-updates.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-markets-depth-updates.api.mdx index cfacdd36d..b74c84c73 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-markets-depth-updates.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-markets-depth-updates.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-markets-depth-updates title: "Observe markets depth updates" description: "Subscribe to a stream of updates on market depth for a given market" sidebar_label: "Observe markets depth updates" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict updates to market depth by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"update":{"description":"List of market depth update data.","items":{"properties":{"buy":{"description":"Collection of updated price levels for the buy side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"marketId":{"description":"Market ID for which the market depth updates are for.","type":"string"},"previousSequenceNumber":{"description":"Sequence number of the previous market depth update, for checking there are no gaps.","format":"uint64","type":"string"},"sell":{"description":"Collection of updated price levels for the sell side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"sequenceNumber":{"description":"Sequence number for the market depth update data returned. It is increasing but not monotonic.","format":"uint64","type":"string"}},"title":"Represents the changed market depth since the last update","type":"object"},"type":"array"}},"title":"Response that is received for market depth update subscription","type":"object"}},"title":"Stream result of v2ObserveMarketsDepthUpdatesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of updates on market depth for a given market","operationId":"TradingDataService_ObserveMarketsDepthUpdates","method":"get","path":"/api/v2/stream/markets/depth/updates","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe markets depth updates","description":{"content":"Subscribe to a stream of updates on market depth for a given market","type":"text/plain"},"url":{"path":["api","v2","stream","markets","depth","updates"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict updates to market depth by the given market IDs.","type":"text/plain"},"key":"marketIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict updates to market depth by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"update":{"description":"List of market depth update data.","items":{"properties":{"buy":{"description":"Collection of updated price levels for the buy side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"marketId":{"description":"Market ID for which the market depth updates are for.","type":"string"},"previousSequenceNumber":{"description":"Sequence number of the previous market depth update, for checking there are no gaps.","format":"uint64","type":"string"},"sell":{"description":"Collection of updated price levels for the sell side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"sequenceNumber":{"description":"Sequence number for the market depth update data returned. It is increasing but not monotonic.","format":"uint64","type":"string"}},"title":"Represents the changed market depth since the last update","type":"object"},"type":"array"}},"title":"Response that is received for market depth update subscription","type":"object"}},"title":"Stream result of v2ObserveMarketsDepthUpdatesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of updates on market depth for a given market","operationId":"TradingDataService_ObserveMarketsDepthUpdates","method":"get","path":"/api/v2/stream/markets/depth/updates","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe markets depth updates","description":{"content":"Subscribe to a stream of updates on market depth for a given market","type":"text/plain"},"url":{"path":["api","v2","stream","markets","depth","updates"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict updates to market depth by the given market IDs.","type":"text/plain"},"key":"marketIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe markets depth updates' (trading-data-service-observe-markets-depth-updates)" diff --git a/docs/api/rest/data-v2/trading-data-service-observe-markets-depth.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-markets-depth.api.mdx index 5b6c6cdd0..c82e70d80 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-markets-depth.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-markets-depth.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-markets-depth title: "Observe markets depth" description: "Subscribe to a stream of the latest market depth for a given market" sidebar_label: "Observe markets depth" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict market depth data by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Response that is received for MarketDepth subscription.","properties":{"marketDepth":{"description":"List of market depth data.","items":{"properties":{"buy":{"description":"Collection of price levels for the buy side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"marketId":{"description":"Market ID for which the depth levels apply.","type":"string"},"sell":{"description":"Collection of price levels for the sell side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"sequenceNumber":{"description":"Sequence number for the market depth data returned.","format":"uint64","type":"string"}},"title":"Represents market depth or order book data for the specified market on Vega","type":"object"},"type":"array"}},"type":"object","title":"v2ObserveMarketsDepthResponse"}},"title":"Stream result of v2ObserveMarketsDepthResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of the latest market depth for a given market","operationId":"TradingDataService_ObserveMarketsDepth","method":"get","path":"/api/v2/stream/markets/depth","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe markets depth","description":{"content":"Subscribe to a stream of the latest market depth for a given market","type":"text/plain"},"url":{"path":["api","v2","stream","markets","depth"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict market depth data by the given market IDs.","type":"text/plain"},"key":"marketIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict market depth data by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Response that is received for MarketDepth subscription.","properties":{"marketDepth":{"description":"List of market depth data.","items":{"properties":{"buy":{"description":"Collection of price levels for the buy side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"marketId":{"description":"Market ID for which the depth levels apply.","type":"string"},"sell":{"description":"Collection of price levels for the sell side of the book.","items":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"type":"array"},"sequenceNumber":{"description":"Sequence number for the market depth data returned.","format":"uint64","type":"string"}},"title":"Represents market depth or order book data for the specified market on Vega","type":"object"},"type":"array"}},"type":"object","title":"v2ObserveMarketsDepthResponse"}},"title":"Stream result of v2ObserveMarketsDepthResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of the latest market depth for a given market","operationId":"TradingDataService_ObserveMarketsDepth","method":"get","path":"/api/v2/stream/markets/depth","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe markets depth","description":{"content":"Subscribe to a stream of the latest market depth for a given market","type":"text/plain"},"url":{"path":["api","v2","stream","markets","depth"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict market depth data by the given market IDs.","type":"text/plain"},"key":"marketIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe markets depth' (trading-data-service-observe-markets-depth)" diff --git a/docs/api/rest/data-v2/trading-data-service-observe-orders.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-orders.api.mdx index 0fb15945b..839338550 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-orders.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-orders.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-orders title: "Observe orders" description: "Subscribe to a stream of orders" sidebar_label: "Observe orders" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict orders to those placed on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Whether liquidity orders should be excluded from the stream. If not set, liquidity orders will be included.","in":"query","name":"excludeLiquidity","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Response that is received from an orders subscription.","properties":{"snapshot":{"description":"An 'initial image' snapshot containing current live orders.","properties":{"lastPage":{"description":"Indicator if the last page is reached or not.","type":"boolean"},"orders":{"description":"List of order data parts.","items":{"properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"},"type":"array"}},"type":"object","title":"v2OrderSnapshotPage"},"updates":{"description":"List of order updates in the last block.","properties":{"orders":{"description":"List of orders data.","items":{"properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"},"type":"array"}},"type":"object","title":"v2OrderUpdates"}},"type":"object","title":"v2ObserveOrdersResponse"}},"title":"Stream result of v2ObserveOrdersResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Subscribe to a stream of orders","operationId":"TradingDataService_ObserveOrders","method":"get","path":"/api/v2/stream/orders","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe orders","description":{"content":"Subscribe to a stream of orders","type":"text/plain"},"url":{"path":["api","v2","stream","orders"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict orders to those placed on the given markets.","type":"text/plain"},"key":"marketIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed on the by the given parties.","type":"text/plain"},"key":"partyIds","value":""},{"disabled":false,"description":{"content":"Whether liquidity orders should be excluded from the stream. If not set, liquidity orders will be included.","type":"text/plain"},"key":"excludeLiquidity","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict orders to those placed on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Whether liquidity orders should be excluded from the stream. If not set, liquidity orders will be included.","in":"query","name":"excludeLiquidity","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"description":"Response that is received from an orders subscription.","properties":{"snapshot":{"description":"An 'initial image' snapshot containing current live orders.","properties":{"lastPage":{"description":"Indicator if the last page is reached or not.","type":"boolean"},"orders":{"description":"List of order data parts.","items":{"properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"},"type":"array"}},"type":"object","title":"v2OrderSnapshotPage"},"updates":{"description":"List of order updates in the last block.","properties":{"orders":{"description":"List of orders data.","items":{"properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"title":"Details of an iceberg order","properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"type":"object"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"description":"Pegged order details, used only if the order represents a pegged order.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","default":"ORDER_ERROR_UNSPECIFIED","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"description":"Current status of the order.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"timeInForce":{"title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":{"description":"Type for the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"},"type":"array"}},"type":"object","title":"v2OrderUpdates"}},"type":"object","title":"v2ObserveOrdersResponse"}},"title":"Stream result of v2ObserveOrdersResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Subscribe to a stream of orders","operationId":"TradingDataService_ObserveOrders","method":"get","path":"/api/v2/stream/orders","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe orders","description":{"content":"Subscribe to a stream of orders","type":"text/plain"},"url":{"path":["api","v2","stream","orders"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict orders to those placed on the given markets.","type":"text/plain"},"key":"marketIds","value":""},{"disabled":false,"description":{"content":"Restrict orders to those placed on the by the given parties.","type":"text/plain"},"key":"partyIds","value":""},{"disabled":false,"description":{"content":"Whether liquidity orders should be excluded from the stream. If not set, liquidity orders will be included.","type":"text/plain"},"key":"excludeLiquidity","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe orders' (trading-data-service-observe-orders)" @@ -47,7 +47,7 @@ List of order data parts. Pegged order details, used only if the order represents a pegged order. -
  • ]
  • updates object
    +
  • ]
  • updates object
    List of order updates in the last block. @@ -59,7 +59,7 @@ List of orders data. Pegged order details, used only if the order represents a pegged order. -
  • ]
  • +
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-positions.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-positions.api.mdx index f8c092ed1..d6ded7896 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-positions.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-positions.api.mdx @@ -1,13 +1,13 @@ --- +hide_send_button: true id: trading-data-service-observe-positions title: "Observe positions" description: "Subscribe to a stream of position updates. The first messages sent through the stream will contain information about current positions, followed by updates to those positions." sidebar_label: "Observe positions" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict position updates to those related to the given parties.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict position updates to those related to the given markets.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"snapshot":{"description":"An 'initial image' snapshot containing current positions.","properties":{"lastPage":{"description":"Indicator if last page is reached or not.","type":"boolean"},"positions":{"description":"List of positions data.","items":{"properties":{"averageEntryPrice":{"description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"lossSocialisationAmount":{"description":"Sum of profit that could not be paid due to loss socialisation.","type":"string"},"marketId":{"description":"Market ID in which the position is held.","type":"string"},"openVolume":{"description":"Open volume for the position, value is signed +ve for long and -ve for short.","format":"int64","type":"string"},"partyId":{"description":"Party ID holding the position.","type":"string"},"positionStatus":{"description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out.","default":"POSITION_STATUS_UNSPECIFIED","enum":["POSITION_STATUS_UNSPECIFIED","POSITION_STATUS_ORDERS_CLOSED","POSITION_STATUS_CLOSED_OUT","POSITION_STATUS_DISTRESSED"],"title":"Represents the status of a position","type":"string"},"realisedPnl":{"description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"unrealisedPnl":{"description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"updatedAt":{"description":"Timestamp for the latest time the position was updated.","format":"int64","type":"string"}},"title":"Represents position data for a party on the specified market on Vega","type":"object"},"type":"array"}},"title":"'Initial image' of current positions, may be sent over multiple response messages","type":"object"},"updates":{"description":"List of position updates in the last block.","properties":{"positions":{"description":"List of positions data.","items":{"properties":{"averageEntryPrice":{"description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"lossSocialisationAmount":{"description":"Sum of profit that could not be paid due to loss socialisation.","type":"string"},"marketId":{"description":"Market ID in which the position is held.","type":"string"},"openVolume":{"description":"Open volume for the position, value is signed +ve for long and -ve for short.","format":"int64","type":"string"},"partyId":{"description":"Party ID holding the position.","type":"string"},"positionStatus":{"description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out.","default":"POSITION_STATUS_UNSPECIFIED","enum":["POSITION_STATUS_UNSPECIFIED","POSITION_STATUS_ORDERS_CLOSED","POSITION_STATUS_CLOSED_OUT","POSITION_STATUS_DISTRESSED"],"title":"Represents the status of a position","type":"string"},"realisedPnl":{"description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"unrealisedPnl":{"description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"updatedAt":{"description":"Timestamp for the latest time the position was updated.","format":"int64","type":"string"}},"title":"Represents position data for a party on the specified market on Vega","type":"object"},"type":"array"}},"title":"List of position updates in the last block","type":"object"}},"title":"Response received from a positions subscription request","type":"object"}},"title":"Stream result of v2ObservePositionsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Subscribe to a stream of position updates. The first messages sent through the stream will contain\ninformation about current positions, followed by updates to those positions.","operationId":"TradingDataService_ObservePositions","method":"get","path":"/api/v2/stream/positions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe positions","description":{"content":"Subscribe to a stream of position updates. The first messages sent through the stream will contain\ninformation about current positions, followed by updates to those positions.","type":"text/plain"},"url":{"path":["api","v2","stream","positions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict position updates to those related to the given parties.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict position updates to those related to the given markets.","type":"text/plain"},"key":"marketId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict position updates to those related to the given parties.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict position updates to those related to the given markets.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"snapshot":{"description":"An 'initial image' snapshot containing current positions.","properties":{"lastPage":{"description":"Indicator if last page is reached or not.","type":"boolean"},"positions":{"description":"List of positions data.","items":{"properties":{"averageEntryPrice":{"description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"lossSocialisationAmount":{"description":"Sum of profit that could not be paid due to loss socialisation.","type":"string"},"marketId":{"description":"Market ID in which the position is held.","type":"string"},"openVolume":{"description":"Open volume for the position, value is signed +ve for long and -ve for short.","format":"int64","type":"string"},"partyId":{"description":"Party ID holding the position.","type":"string"},"positionStatus":{"description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out.","default":"POSITION_STATUS_UNSPECIFIED","enum":["POSITION_STATUS_UNSPECIFIED","POSITION_STATUS_ORDERS_CLOSED","POSITION_STATUS_CLOSED_OUT","POSITION_STATUS_DISTRESSED"],"title":"Represents the status of a position","type":"string"},"realisedPnl":{"description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"unrealisedPnl":{"description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"updatedAt":{"description":"Timestamp for the latest time the position was updated.","format":"int64","type":"string"}},"title":"Represents position data for a party on the specified market on Vega","type":"object"},"type":"array"}},"title":"'Initial image' of current positions, may be sent over multiple response messages","type":"object"},"updates":{"description":"List of position updates in the last block.","properties":{"positions":{"description":"List of positions data.","items":{"properties":{"averageEntryPrice":{"description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"lossSocialisationAmount":{"description":"Sum of profit that could not be paid due to loss socialisation.","type":"string"},"marketId":{"description":"Market ID in which the position is held.","type":"string"},"openVolume":{"description":"Open volume for the position, value is signed +ve for long and -ve for short.","format":"int64","type":"string"},"partyId":{"description":"Party ID holding the position.","type":"string"},"positionStatus":{"description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out.","default":"POSITION_STATUS_UNSPECIFIED","enum":["POSITION_STATUS_UNSPECIFIED","POSITION_STATUS_ORDERS_CLOSED","POSITION_STATUS_CLOSED_OUT","POSITION_STATUS_DISTRESSED"],"title":"Represents the status of a position","type":"string"},"realisedPnl":{"description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"unrealisedPnl":{"description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"updatedAt":{"description":"Timestamp for the latest time the position was updated.","format":"int64","type":"string"}},"title":"Represents position data for a party on the specified market on Vega","type":"object"},"type":"array"}},"title":"List of position updates in the last block","type":"object"}},"title":"Response received from a positions subscription request","type":"object"}},"title":"Stream result of v2ObservePositionsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Subscribe to a stream of position updates. The first messages sent through the stream will contain\ninformation about current positions, followed by updates to those positions.","operationId":"TradingDataService_ObservePositions","method":"get","path":"/api/v2/stream/positions","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe positions","description":{"content":"Subscribe to a stream of position updates. The first messages sent through the stream will contain\ninformation about current positions, followed by updates to those positions.","type":"text/plain"},"url":{"path":["api","v2","stream","positions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict position updates to those related to the given parties.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict position updates to those related to the given markets.","type":"text/plain"},"key":"marketId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe positions' (trading-data-service-observe-positions)" diff --git a/docs/api/rest/data-v2/trading-data-service-observe-trades.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-trades.api.mdx index 2ed11aee2..f3925667f 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-trades.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-trades.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-trades title: "Observe trades" description: "Subscribe to a stream of trades, optionally filtered by party/market" sidebar_label: "Observe trades" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict the trades streamed to those made on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict the trades streamed to those made by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"trades":{"description":"List of 0 or more trades.","items":{"properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"},"type":"array"}},"title":"Stream of trades","type":"object"}},"title":"Stream result of v2ObserveTradesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Subscribe to a stream of trades, optionally filtered by party/market","operationId":"TradingDataService_ObserveTrades","method":"get","path":"/api/v2/stream/trades","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe trades","description":{"content":"Subscribe to a stream of trades, optionally filtered by party/market","type":"text/plain"},"url":{"path":["api","v2","stream","trades"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the trades streamed to those made on the given markets.","type":"text/plain"},"key":"marketIds","value":""},{"disabled":false,"description":{"content":"Restrict the trades streamed to those made by the given parties.","type":"text/plain"},"key":"partyIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict the trades streamed to those made on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict the trades streamed to those made by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"trades":{"description":"List of 0 or more trades.","items":{"properties":{"aggressor":{"description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"description":"Fee amount charged to the buyer party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"description":"Fee amount charged to the seller party for the trade.","properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"description":"Type for the trade.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"},"type":"array"}},"title":"Stream of trades","type":"object"}},"title":"Stream result of v2ObserveTradesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Subscribe to a stream of trades, optionally filtered by party/market","operationId":"TradingDataService_ObserveTrades","method":"get","path":"/api/v2/stream/trades","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe trades","description":{"content":"Subscribe to a stream of trades, optionally filtered by party/market","type":"text/plain"},"url":{"path":["api","v2","stream","trades"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the trades streamed to those made on the given markets.","type":"text/plain"},"key":"marketIds","value":""},{"disabled":false,"description":{"content":"Restrict the trades streamed to those made by the given parties.","type":"text/plain"},"key":"partyIds","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe trades' (trading-data-service-observe-trades)" @@ -35,7 +35,7 @@ A successful response.(streaming responses) List of 0 or more trades. -
  • Array [
  • buyerFee object
    +
  • Array [
  • buyerFee object
    Fee amount charged to the buyer party for the trade. @@ -43,7 +43,7 @@ Fee amount charged to the buyer party for the trade. Fee amount charged to the seller party for the trade. -
  • ]
  • +
  • ]
  • An internal server error diff --git a/docs/api/rest/data-v2/trading-data-service-observe-transaction-results.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-transaction-results.api.mdx new file mode 100644 index 000000000..68f6f6872 --- /dev/null +++ b/docs/api/rest/data-v2/trading-data-service-observe-transaction-results.api.mdx @@ -0,0 +1,4416 @@ +--- +hide_send_button: true +id: trading-data-service-observe-transaction-results +title: "Observe transaction results" +description: "Subscribe to a stream of transaction results, optionally filtered by party/hash/status" +sidebar_label: "Observe transaction results" +hide_title: true +hide_table_of_contents: true +api: {"parameters":[{"description":"Restrict the transaction results streamed to those made by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict the transaction results streamed to those with given hashes.","explode":true,"in":"query","name":"hashes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict the transaction results streamed to those with given status true/false (success/failure).","in":"query","name":"status","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"transactionResults":{"description":"List of 0 or more transaction results.","items":{"properties":{"announceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"batchProposal":{"description":"Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"}},"type":"object","title":"v1BatchProposalSubmission"},"cancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"createReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"failure":{"properties":{"error":{"title":"Error message explaining the reason for the transaction failing processing","type":"string"}},"type":"object","title":"TransactionResultFailureDetails"},"hash":{"title":"Hash of the transaction","type":"string"},"issueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"joinTeam":{"description":"Command that allows the submitter to join a team or change teams if they are already a member of a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object","title":"v1JoinTeam"},"keyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"status":{"description":"Status of the transaction, did it succeed or an error was raised.","type":"boolean"},"stopOrderCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrderSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"success":{"type":"object","title":"TransactionResultSuccessDetails"},"transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"vegacommandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"v1UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"updatePartyProfile":{"description":"Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"type":"object","title":"v1UpdatePartyProfile"},"updateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"voteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object","title":"v1TransactionResult"},"type":"array"}},"title":"Stream of transaction results","type":"object"}},"title":"Stream result of v2ObserveTransactionResultsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["TransactionResults"],"description":"Subscribe to a stream of transaction results, optionally filtered by party/hash/status","operationId":"TradingDataService_ObserveTransactionResults","method":"get","path":"/api/v2/stream/transaction-results","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe transaction results","description":{"content":"Subscribe to a stream of transaction results, optionally filtered by party/hash/status","type":"text/plain"},"url":{"path":["api","v2","stream","transaction-results"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict the transaction results streamed to those made by the given parties.","type":"text/plain"},"key":"partyIds","value":""},{"disabled":false,"description":{"content":"Restrict the transaction results streamed to those with given hashes.","type":"text/plain"},"key":"hashes","value":""},{"disabled":false,"description":{"content":"Restrict the transaction results streamed to those with given status true/false (success/failure).","type":"text/plain"},"key":"status","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +sidebar_class_name: "get api-method" +info_path: api/rest/data-v2/vega-data-node-apis +custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe transaction results' (trading-data-service-observe-transaction-results)" +--- + +import ApiTabs from "@theme/ApiTabs"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import TabItem from "@theme/TabItem"; + +## Observe transaction results + + + +Subscribe to a stream of transaction results, optionally filtered by party/hash/status + +
    Query Parameters
    + +A successful response.(streaming responses) + +
    Schema
      error object
      details object[]
    • Array [
    • ]
    • result object
      transactionResults object[]
      + +List of 0 or more transaction results. + +
    • Array [
    • announceNode object
      + +A command that allows a new node operator to announce themselves to the network as a new validator. + +
      ethereumSignature object
      + +Signature from the node made using the ethereum wallet. + +
      vegaSignature object
      + +Signature from the node made using the Vega wallet. + +
      applyReferralCode object
      + +Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set. +A party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer. +To switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch. + +
      batchMarketInstructions object
      + +A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction. +These instructions are then processed sequentially in the following order: +- OrderCancellation +- OrderAmendment +- OrderSubmission +- StopOrderSubmission +where the maximum allow of instructions in a batch is controlled by the network parameter "spam.protection.max.batchSize". + +
      amendments object[]
      + +List of order amendments to be processed sequentially. + +
    • Array [
    • ]
    • cancellations object[]
      + +List of order cancellations to be processed sequentially. + +
    • Array [
    • ]
    • stopOrdersCancellation object[]
      + +List of stop order cancellations to be processed sequentially. + +
    • Array [
    • ]
    • stopOrdersSubmission object[]
      + +List of stop order submissions to be processed sequentially. + +
    • Array [
    • fallsBelow object
      + +Stop order that will be triggered if the price falls below a given trigger price. + +
      orderSubmission object
      + +A command that submits an order to the Vega network for a given market. + +
      icebergOpts object
      + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
      peggedOrder object
      + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
      sizeOverrideValue object
      risesAbove object
      + +Stop order that will be triggered if the price rises above a given trigger price. + +
      orderSubmission object
      + +A command that submits an order to the Vega network for a given market. + +
      icebergOpts object
      + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
      peggedOrder object
      + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
      sizeOverrideValue object
    • ]
    • submissions object[]
      + +List of order submissions to be processed sequentially. + +
    • Array [
    • icebergOpts object
      + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
      peggedOrder object
      + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    • ]
    • updateMarginMode object[]
    • Array [
    • ]
    • batchProposal object
      + +Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market and a network parameter change with it. + +
      rationale object
      + +Rationale behind a proposal. + +
      terms object
      + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
      changes object[]
      + +List of individual changes included in the batch proposal. + +
    • Array [
    • cancelTransfer object
      + +Proposal change to cancel a governance initiated transfe. + +
      changes object
      newMarket object
      + +Proposal change for creating new futures market. + +
      changes object
      + +Configuration of the new market. + +
      instrument object
      + +New futures market instrument configuration. + +
      future object
      + +Future. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForTradingTermination object
      + +The external data source spec describing the data source of trading termination. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • perpetual object
      + +Perpetual. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForSettlementSchedule object
      + +Data source spec describing the data source for settlement schedule. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • indexPriceConfiguration object
      + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • spot object
      + +Spot. + +
      liquidationStrategy object
      + +Liquidation strategy for this market. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      liquidityMonitoringParameters object
      + +Liquidity monitoring parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      liquiditySlaParameters object
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      markPriceConfiguration object
      + +Mark price configuration. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      successor object
      + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
      newSpotMarket object
      + +Proposal change for creating new spot market. + +
      changes object
      + +Configuration of the new spot market. + +
      instrument object
      + +New spot market instrument configuration. + +
      future object
      + +Future. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForTradingTermination object
      + +The external data source spec describing the data source of trading termination. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • perpetual object
      + +Perpetual. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForSettlementSchedule object
      + +Data source spec describing the data source for settlement schedule. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • indexPriceConfiguration object
      + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • spot object
      + +Spot. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      slaParams object
      + +Specifies the liquidity provision SLA parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      newTransfer object
      + +Proposal change for a governance initiated transfer. + +
      changes object
      + +Configuration for a new transfer. + +
      oneOff object
      recurring object
      dispatchStrategy object
      + +Optional parameter defining how a transfer is dispatched. + +
      rankTable object[]
      + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
    • Array [
    • ]
    • updateAsset object
      + +Proposal change for updating an asset. + +
      changes object
      + +Changes to apply on an existing asset. + +
      erc20 object
      + +Ethereum ERC20 asset update. + +
      updateMarket object
      + +Proposal change for modifying an existing futures market. + +
      changes object
      + +Updated configuration of the futures market. + +
      instrument object
      + +Updated futures market instrument configuration. + +
      future object
      + +Future. + +
      dataSourceSpecBinding object
      + +The binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForTradingTermination object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • perpetual object
      + +Perpetual. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForSettlementSchedule object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • indexPriceConfiguration object
      + +Configuration for the index price used in funding payment calculation. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • liquidationStrategy object
      + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      liquidityMonitoringParameters object
      + +Liquidity monitoring parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      liquiditySlaParameters object
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      markPriceConfiguration object
      + +Mark price configuration. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      updateMarketState object
      + +Proposal change for updating the state of a market. + +
      changes object
      updateNetworkParameter object
      + +Proposal change for updating Vega network parameters. + +
      changes object
      + +The network parameter to update. + +
      updateReferralProgram object
      + +Proposal change for updating the referral program. + +
      changes object
      + +Configuration for change to update a referral program. + +
      benefitTiers object[]
      + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
    • Array [
    • ]
    • stakingTiers object[]
      + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
    • Array [
    • ]
    • updateSpotMarket object
      + +Proposal change for modifying an existing spot market. + +
      changes object
      + +Updated configuration of the spot market. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      slaParams object
      + +Specifies the liquidity provision SLA parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      updateVolumeDiscountProgram object
      + +Proposal change for updating the volume discount program. + +
      changes object
      benefitTiers object[]
      + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
    • Array [
    • ]
    • ]
    • cancelTransfer object
      + +Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction. + +
      createReferralSet object
      + +Command that a party can use to instruct the network to create a new referral set on the network. +The submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set. +A referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set. + +
      team object
      + +Team details, if the referral set is to be considered a team. + +
      delegateSubmission object
      + +Command to allow a token holder to delegate their tokens to a validator to help secure the network. +A token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator. + +
      ethereumKeyRotateSubmission object
      + +A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated. + +
      ethereumSignature object
      + +Signature signed by the new Ethereum key that can be verified to prove ownership. + +
      failure object
      issueSignatures object
      + +Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract. +Signatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected. +The generated signatures can only be submitted to the contract by the Ethereum addresses included in the command. + +
      joinTeam object
      + +Command that allows the submitter to join a team or change teams if they are already a member of a team. + +
      keyRotateSubmission object
      + +A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated. + +
      liquidityProvisionAmendment object
      + +Command that allows a liquidity provider to update the details of their existing liquidity commitment. +Any field that is left unset or as a default value indicates that this field on the original submission will be left unchanged. + +
      liquidityProvisionCancellation object
      + +Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market. + +
      liquidityProvisionSubmission object
      + +A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider. +An active liquidity provider for a market will earn fees based on the trades that occur in the market. + +
      oracleDataSubmission object
      orderAmendment object
      + +A command that allows a party to update the details of an existing order. +Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. +It is not possible to change an order's type through this command. + +
      orderCancellation object
      + +A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. +It is not possible to cancel another party's order with this command. + +
      orderSubmission object
      + +A command that submits an order to the Vega network for a given market. + +
      icebergOpts object
      + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
      peggedOrder object
      + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
      proposal object
      + +Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network. +For example this command can be used to propose a new market. + +
      rationale object
      + +Rationale behind a proposal. + +
      terms object
      + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
      cancelTransfer object
      + +Cancel a governance transfer. + +
      changes object
      newAsset object
      + +Proposal change for creating new assets on Vega. + +
      changes object
      + +Configuration of the new asset. + +
      builtinAsset object
      + +Vega built-in asset. + +
      erc20 object
      + +Ethereum ERC20 asset. + +
      newMarket object
      + +Proposal change for creating new futures market on Vega. + +
      changes object
      + +Configuration of the new market. + +
      instrument object
      + +New futures market instrument configuration. + +
      future object
      + +Future. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForTradingTermination object
      + +The external data source spec describing the data source of trading termination. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • perpetual object
      + +Perpetual. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForSettlementSchedule object
      + +Data source spec describing the data source for settlement schedule. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • indexPriceConfiguration object
      + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • spot object
      + +Spot. + +
      liquidationStrategy object
      + +Liquidation strategy for this market. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      liquidityMonitoringParameters object
      + +Liquidity monitoring parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      liquiditySlaParameters object
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      markPriceConfiguration object
      + +Mark price configuration. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      successor object
      + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
      newSpotMarket object
      + +Proposal change for creating new spot market on Vega. + +
      changes object
      + +Configuration of the new spot market. + +
      instrument object
      + +New spot market instrument configuration. + +
      future object
      + +Future. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForTradingTermination object
      + +The external data source spec describing the data source of trading termination. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • perpetual object
      + +Perpetual. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Data source spec describing the data source for settlement. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForSettlementSchedule object
      + +Data source spec describing the data source for settlement schedule. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • indexPriceConfiguration object
      + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • spot object
      + +Spot. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      slaParams object
      + +Specifies the liquidity provision SLA parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      newTransfer object
      + +Proposal change for a governance transfer. + +
      changes object
      + +Configuration for a new transfer. + +
      oneOff object
      recurring object
      dispatchStrategy object
      + +Optional parameter defining how a transfer is dispatched. + +
      rankTable object[]
      + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
    • Array [
    • ]
    • updateAsset object
      + +Proposal change for updating an asset. + +
      changes object
      + +Changes to apply on an existing asset. + +
      erc20 object
      + +Ethereum ERC20 asset update. + +
      updateMarket object
      + +Proposal change for modifying an existing futures market on Vega. + +
      changes object
      + +Updated configuration of the futures market. + +
      instrument object
      + +Updated futures market instrument configuration. + +
      future object
      + +Future. + +
      dataSourceSpecBinding object
      + +The binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForTradingTermination object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • perpetual object
      + +Perpetual. + +
      dataSourceSpecBinding object
      + +Binding between the data source spec and the settlement data. + +
      dataSourceSpecForSettlementData object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForSettlementSchedule object
      + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
      external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • indexPriceConfiguration object
      + +Configuration for the index price used in funding payment calculation. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • liquidationStrategy object
      + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      liquidityMonitoringParameters object
      + +Liquidity monitoring parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      liquiditySlaParameters object
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      markPriceConfiguration object
      + +Mark price configuration. + +
      dataSourcesSpec object[]
      + +Additional price sources to be used for index price calculation. + +
    • Array [
    • external object
      + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
      ethOracle object
      + +Contains the data specification that is received from Ethereum sources. + +
      filters object[]
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • normalisers object[]
      + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
    • Array [
    • ]
    • trigger object
      + +Conditions for determining when to call the contract method. + +
      timeTrigger object
      + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
      oracle object
      + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
      filters object[]
      + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
    • Array [
    • conditions object[]
      + +Conditions that should be matched by the data to be +considered of interest. + +
    • Array [
    • ]
    • key object
      + +Data source's data property key targeted by the filter. + +
    • ]
    • signers object[]
      + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
    • Array [
    • ethAddress object
      + +In case of an open oracle - Ethereum address will be submitted. + +
      pubKey object
      + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
    • ]
    • internal object
      + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
      time object
      + +Internal data source used for emitting timestamps. + +
      conditions object[]
      + +Conditions that the timestamps should meet in order to be considered. + +
    • Array [
    • ]
    • timeTrigger object
      + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
      conditions object[]
      + +Conditions that the timestamps need to meet in order to be considered. + +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • ]
    • dataSourcesSpecBinding object[]
    • Array [
    • ]
    • priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      updateMarketState object
      + +Proposal change for updating the state of a market. + +
      changes object
      updateNetworkParameter object
      + +Proposal change for updating Vega network parameters. + +
      changes object
      + +The network parameter to update. + +
      updateReferralProgram object
      + +Proposal change for updating the referral program. + +
      changes object
      + +Configuration for change to update a referral program. + +
      benefitTiers object[]
      + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
    • Array [
    • ]
    • stakingTiers object[]
      + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
    • Array [
    • ]
    • updateSpotMarket object
      + +Proposal change for modifying an existing spot market on Vega. + +
      changes object
      + +Updated configuration of the spot market. + +
      liquidityFeeSettings object
      + +Specifies how the liquidity fee for the market will be calculated. + +
      logNormal object
      + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
      params object
      + +Risk model parameters for log normal. + +
      priceMonitoringParameters object
      + +Price monitoring parameters. + +
      triggers object[]
    • Array [
    • ]
    • simple object
      + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
      slaParams object
      + +Specifies the liquidity provision SLA parameters. + +
      targetStakeParameters object
      + +Specifies parameters related to target stake calculation. + +
      updateVolumeDiscountProgram object
      + +Proposal change for updating the volume discount program. + +
      changes object
      benefitTiers object[]
      + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
    • Array [
    • ]
    • protocolUpgradeProposal object
      + +A validator command sent manually by a node operator to propose a protocol upgrade. + +
      stopOrderCancellation object
      + +A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction. +If any cancelled stop order is part of an OCO, both stop orders will be cancelled. +It is not possible to cancel another party's stop orders with this command. + +
      stopOrderSubmission object
      + +A command that allows a party to submit a stop order for a given market. +A stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction. +If both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO). + +
      fallsBelow object
      + +Stop order that will be triggered if the price falls below a given trigger price. + +
      orderSubmission object
      + +A command that submits an order to the Vega network for a given market. + +
      icebergOpts object
      + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
      peggedOrder object
      + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
      sizeOverrideValue object
      risesAbove object
      + +Stop order that will be triggered if the price rises above a given trigger price. + +
      orderSubmission object
      + +A command that submits an order to the Vega network for a given market. + +
      icebergOpts object
      + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
      peggedOrder object
      + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
      sizeOverrideValue object
      transfer object
      oneOff object
      + +Details of a one-off transfer that is executed once at a specified time. + +
      recurring object
      + +Details of a transfer that is executed once every epoch until stopped. + +
      dispatchStrategy object
      + +Optional parameter defining how a transfer is dispatched. + +
      rankTable object[]
      + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
    • Array [
    • ]
    • undelegateSubmission object
      + +Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node. + +
      updateMarginMode object
      updatePartyProfile object
      + +Command to associate metadata to a public key, known as a party ID. +Partial update is not supported, meaning previous values must be included in +the update, otherwise they are removed. + +
      metadata object[]
      + +Freeform data to associate to the party. +Support a maximum of 10 entries. + +
    • Array [
    • ]
    • updateReferralSet object
      + +A command that allows the referrer of a referral set to update team details for a referral set. +Any field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged. + +
      team object
      + +Team details, if the referral set is to be considered a team. + +
      voteSubmission object
      + +Command that allows a token holder to vote for or against an active governance proposal. + +
      withdrawSubmission object
      + +Command to instruct the network to process an asset withdrawal from the Vega network. +The process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures +that allow funds to be taken across the bridge. + +
      ext object
      + +Details specific to the foreign chain, such as the receiver address. + +
      erc20 object
      + +ERC20 withdrawal details. + +
    • ]
    + +An internal server error + +
    Schema
      details object[]
    • Array [
    • ]
    + +An unexpected error response. + +
    Schema
      details object[]
    • Array [
    • ]
    diff --git a/docs/api/rest/data-v2/trading-data-service-observe-votes.api.mdx b/docs/api/rest/data-v2/trading-data-service-observe-votes.api.mdx index 9eceaf3be..0840cc273 100644 --- a/docs/api/rest/data-v2/trading-data-service-observe-votes.api.mdx +++ b/docs/api/rest/data-v2/trading-data-service-observe-votes.api.mdx @@ -1,12 +1,12 @@ --- +hide_send_button: true id: trading-data-service-observe-votes title: "Observe votes" description: "Subscribe to a stream of votes cast on a given proposal, or by all votes made by a given party" sidebar_label: "Observe votes" hide_title: true -hide_send_button: true hide_table_of_contents: true -api: {"parameters":[{"description":"Restrict vote updates to those made by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict vote updates to those made on the given proposal.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"vote":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object","description":"Data associated with governance votes that are published to the stream."}},"title":"Response that is received from votes subscription","type":"object"}},"title":"Stream result of v2ObserveVotesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Subscribe to a stream of votes cast on a given proposal, or by all votes made by a given party","operationId":"TradingDataService_ObserveVotes","method":"get","path":"/api/v2/stream/votes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"},{"url":"https://api.n09.testnet.vega.rocks","description":"n09 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.73.1"},"postman":{"name":"Observe votes","description":{"content":"Subscribe to a stream of votes cast on a given proposal, or by all votes made by a given party","type":"text/plain"},"url":{"path":["api","v2","stream","votes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict vote updates to those made by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict vote updates to those made on the given proposal.","type":"text/plain"},"key":"proposalId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Restrict vote updates to those made by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict vote updates to those made on the given proposal.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"},"result":{"properties":{"vote":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object","description":"Data associated with governance votes that are published to the stream."}},"title":"Response that is received from votes subscription","type":"object"}},"title":"Stream result of v2ObserveVotesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Subscribe to a stream of votes cast on a given proposal, or by all votes made by a given party","operationId":"TradingDataService_ObserveVotes","method":"get","path":"/api/v2/stream/votes","servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Observe votes","description":{"content":"Subscribe to a stream of votes cast on a given proposal, or by all votes made by a given party","type":"text/plain"},"url":{"path":["api","v2","stream","votes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Restrict vote updates to those made by the given party.","type":"text/plain"},"key":"partyId","value":""},{"disabled":false,"description":{"content":"Restrict vote updates to those made on the given proposal.","type":"text/plain"},"key":"proposalId","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/data-v2/vega-data-node-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Observe votes' (trading-data-service-observe-votes)" @@ -35,7 +35,11 @@ A successful response.(streaming responses) Data associated with governance votes that are published to the stream. -
    +
    perMarketEquityLikeShareWeight object
    + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
    An internal server error diff --git a/docs/api/rest/explorer/block-explorer-get-transaction.api.mdx b/docs/api/rest/explorer/block-explorer-get-transaction.api.mdx index 8d30a1141..e0758b322 100644 --- a/docs/api/rest/explorer/block-explorer-get-transaction.api.mdx +++ b/docs/api/rest/explorer/block-explorer-get-transaction.api.mdx @@ -5,7 +5,7 @@ description: "Get a transaction from the Vega blockchain" sidebar_label: "Get transaction" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Hash of the transaction","in":"path","name":"hash","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"transaction":{"properties":{"block":{"format":"uint64","title":"Height of the block the transaction was found in","type":"string"},"code":{"format":"int64","title":"Results code of the transaction. 0 indicates the transaction was successful","type":"integer"},"command":{"title":"Actual command of the transaction","description":"Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message.","properties":{"announceNode":{"description":"Command used by a node operator to announce its node as a pending validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command to apply a referral code.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"Command to submit a batch of order instructions.","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"blockHeight":{"description":"Block height which has been used to calculate the transaction proof-of-work.","format":"uint64","type":"string"},"cancelTransfer":{"description":"Command to cancel a recurring transfer.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"chainEvent":{"description":"Validator command sent automatically to notify the Vega chain of an off-chain event.","properties":{"builtin":{"description":"Built-in asset event.","properties":{"deposit":{"description":"Built-in asset deposit.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Deposit for a Vega built-in asset","type":"object"},"withdrawal":{"description":"Built-in asset withdrawal.","properties":{"amount":{"description":"The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega network party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Withdrawal for a Vega built-in asset","type":"object"}},"title":"Event related to a Vega built-in asset","type":"object"},"contractCall":{"description":"Ethereum contract call event.","properties":{"blockHeight":{"description":"Ethereum block height.","format":"uint64","type":"string"},"blockTime":{"description":"Ethereum block time in Unix seconds.","format":"uint64","type":"string"},"error":{"description":"Error message if the call failed.","type":"string"},"result":{"description":"Result of contract call, packed according to the ABI stored in the associated data source spec.","format":"byte","type":"string"},"specId":{"description":"ID of the data source spec that triggered this contract call.","type":"string"}},"title":"Result of calling an arbitrary Ethereum contract method","type":"object"},"erc20":{"description":"Ethereum ERC20 event.","properties":{"assetDelist":{"description":"De-list an ERC20 asset.","properties":{"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deny-listing for an ERC20 token","type":"object"},"assetLimitsUpdated":{"description":"Update an ERC20 asset.","properties":{"lifetimeLimits":{"description":"Updated lifetime limits.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"},"withdrawThreshold":{"description":"Updated withdrawal threshold.","type":"string"}},"type":"object","title":"vegaERC20AssetLimitsUpdated"},"assetList":{"description":"List an ERC20 asset.","properties":{"assetSource":{"description":"Ethereum address of the asset.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset allow-listing for an ERC20 token","type":"object"},"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"bridgeResumed":{"description":"Bridge operations has been resumed.","type":"boolean"},"bridgeStopped":{"description":"Bridge operations has been stopped.","type":"boolean"},"deposit":{"description":"Deposit ERC20 asset.","properties":{"amount":{"description":"Amount to be deposited.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"targetPartyId":{"description":"Vega party ID i.e. public key that is the target of the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deposit for an ERC20 token","type":"object"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"withdrawal":{"description":"Withdraw ERC20 asset.","properties":{"referenceNonce":{"description":"Reference nonce used for the transaction.","type":"string"},"targetEthereumAddress":{"description":"Target Ethereum wallet address.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset withdrawal for an ERC20 token","type":"object"}},"title":"Event related to an ERC20 token","type":"object"},"erc20Multisig":{"description":"Ethereum ERC20 multisig event.","properties":{"block":{"format":"uint64","title":"Block in which the transaction was added","type":"string"},"index":{"format":"uint64","title":"Index of the log in the transaction","type":"string"},"signerAdded":{"title":"Add a signer to the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this new signer","type":"string"}},"type":"object"},"signerRemoved":{"title":"Remove a signer from the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this old signer","type":"string"},"oldSigner":{"title":"Ethereum address of the old signer","type":"string"}},"type":"object"},"thresholdSet":{"title":"Threshold set","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newThreshold":{"format":"int64","title":"New threshold value to set","type":"integer"},"nonce":{"title":"Nonce created by the Vega network","type":"string"}},"type":"object"}},"title":"Event related to the ERC20 MultiSig","type":"object"},"nonce":{"description":"Arbitrary one-time integer used to prevent replay attacks.","format":"uint64","type":"string"},"stakingEvent":{"description":"Ethereum Staking event.","properties":{"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"stakeDeposited":{"properties":{"amount":{"description":"Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available.","format":"int64","type":"string"},"ethereumAddress":{"title":"Ethereum Address of the user depositing stake (hex encode with 0x prefix)","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party receiving the stake deposit.","type":"string"}},"type":"object","title":"vegaStakeDeposited"},"stakeRemoved":{"properties":{"amount":{"description":"Amount removed as a base 10 unsigned integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address of the user removing stake. This should be hex encoded with 0x prefix.","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party from which to remove stake.","type":"string"}},"type":"object","title":"vegaStakeRemoved"},"totalSupply":{"properties":{"tokenAddress":{"title":"Address of the staking asset","type":"string"},"totalSupply":{"description":"Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places.","type":"string"}},"type":"object","title":"vegaStakeTotalSupply"}},"type":"object","title":"vegaStakingEvent"},"txId":{"description":"ID of the transaction on the foreign chain that caused the event.","type":"string"}},"type":"object","title":"v1ChainEvent"},"createReferralSet":{"description":"Command to create a referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to delegate tokens to a validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Ethereum keys.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"issueSignatures":{"description":"Command to request signatures to amend the multisig-control contract.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"keyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Vega keys.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command to amend a liquidity commitment.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command to cancel a liquidity commitment.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"Command to submit a liquidity commitment.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"nodeSignature":{"description":"Validator command sent automatically to provide signatures for the Ethereum bridge.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object","title":"v1NodeSignature"},"nodeVote":{"description":"Validator command sent automatically to vote on that validity of an external resource.","properties":{"reference":{"description":"Reference identifying the resource that has been verified.","type":"string"},"type":{"description":"Type of external event that has been verified.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_STAKE_DEPOSITED","TYPE_STAKE_REMOVED","TYPE_FUNDS_DEPOSITED","TYPE_SIGNER_ADDED","TYPE_SIGNER_REMOVED","TYPE_BRIDGE_STOPPED","TYPE_BRIDGE_RESUMED","TYPE_ASSET_LISTED","TYPE_LIMITS_UPDATED","TYPE_STAKE_TOTAL_SUPPLY","TYPE_SIGNER_THRESHOLD_SET","TYPE_GOVERNANCE_VALIDATE_ASSET","TYPE_ETHEREUM_CONTRACT_CALL_RESULT"],"title":"- TYPE_UNSPECIFIED: Represents an unspecified or missing value from the input\n - TYPE_STAKE_DEPOSITED: Node vote for a new stake deposit\n - TYPE_STAKE_REMOVED: Node vote for a new stake removed event\n - TYPE_FUNDS_DEPOSITED: Node vote for a new collateral deposit\n - TYPE_SIGNER_ADDED: Node vote for a new signer added to the erc20 bridge\n - TYPE_SIGNER_REMOVED: Node vote for a signer removed from the erc20 bridge\n - TYPE_BRIDGE_STOPPED: Node vote for a bridge stopped event\n - TYPE_BRIDGE_RESUMED: Node vote for a bridge resumed event\n - TYPE_ASSET_LISTED: Node vote for a newly listed asset\n - TYPE_LIMITS_UPDATED: Node vote for an asset limits update\n - TYPE_STAKE_TOTAL_SUPPLY: Node vote to share the total supply of the staking token\n - TYPE_SIGNER_THRESHOLD_SET: Node vote to update the threshold of the signer set for the multisig contract\n - TYPE_GOVERNANCE_VALIDATE_ASSET: Node vote to validate a new assert governance proposal\n - TYPE_ETHEREUM_CONTRACT_CALL_RESULT: Node vote for an Ethereum contract call result","type":"string"}},"type":"object","title":"v1NodeVote"},"nonce":{"description":"Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly.","format":"uint64","type":"string"},"oracleDataSubmission":{"description":"Command to submit external oracle data.","properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"proposalSubmission":{"description":"Command to submit a governance proposal.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"Validator command sent manually to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"stateVariableProposal":{"description":"Validator command sent automatically to reach consensus on floating point values.","properties":{"proposal":{"description":"Details of the state variable being proposed.","properties":{"eventId":{"description":"Event ID.","type":"string"},"kvb":{"description":"Key value tolerance triplets.","items":{"properties":{"key":{"type":"string"},"tolerance":{"type":"string"},"value":{"properties":{"matrixVal":{"properties":{"value":{"items":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"},"type":"array"}},"type":"object","title":"vegaMatrixValue"},"scalarVal":{"properties":{"value":{"type":"string"}},"type":"object","title":"vegaScalarValue"},"vectorVal":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"}},"type":"object","title":"vegaStateVarValue"}},"type":"object","title":"vegaKeyValueBundle"},"type":"array"},"stateVarId":{"description":"State variable ID.","type":"string"}},"type":"object","title":"vegaStateValueProposal"}},"type":"object","title":"v1StateVariableProposal"},"stopOrdersCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrdersSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"transfer":{"description":"Command to submit a transfer.","properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"commandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to remove tokens delegated to a validator.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateReferralSet":{"description":"Command to update a referral set.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"validatorHeartbeat":{"description":"Validator command sent automatically to signal regular participation in the network.","properties":{"ethereumSignature":{"description":"Signature from the validator made using their Ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"message":{"description":"Message which has been signed.","type":"string"},"nodeId":{"description":"Node ID of the validator emitting the heartbeat.","type":"string"},"vegaSignature":{"description":"Signature from the validator made using their Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1ValidatorHeartbeat"},"voteSubmission":{"description":"Command to submit a vote on a governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to submit a withdrawal.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"createdAt":{"description":"Timestamp when the transaction happened, using RFC3399 format.","type":"string"},"cursor":{"title":"Cursor for this transaction. This is used for paginating results","type":"string"},"error":{"title":"Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0","type":"string"},"hash":{"title":"Hash of the transaction","type":"string"},"index":{"format":"int64","title":"Index of the transaction in the block","type":"integer"},"pow":{"title":"Proof of Work parameters of the transaction","description":"Components needed for the network to verify proof-of-work.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object"},"signature":{"title":"Signature generated by the submitter for the transaction","description":"Signature definition that allows the network to authenticate external data.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object"},"submitter":{"title":"Vega public key of the transaction's submitter","type":"string"},"type":{"title":"Type of transaction","type":"string"},"version":{"title":"Version format of the transaction","default":"TX_VERSION_UNSPECIFIED","description":"Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks.","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string"}},"type":"object","title":"blockexplorerapiv1Transaction"}},"type":"object","title":"v1GetTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"Get a transaction from the Vega blockchain","operationId":"BlockExplorer_GetTransaction","method":"get","path":"/transactions/{hash}","servers":[{"url":"https://be.testnet.vega.xyz/rest","description":"Block Explorer"}],"info":{"title":"Vega block explorer APIs","version":"v0.73.1"},"postman":{"name":"Get transaction","description":{"content":"Get a transaction from the Vega blockchain","type":"text/plain"},"url":{"path":["transactions",":hash"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Hash of the transaction","type":"text/plain"},"type":"any","value":"","key":"hash"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Hash of the transaction","in":"path","name":"hash","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"transaction":{"properties":{"block":{"format":"uint64","title":"Height of the block the transaction was found in","type":"string"},"code":{"format":"int64","title":"Results code of the transaction. 0 indicates the transaction was successful","type":"integer"},"command":{"title":"Actual command of the transaction","description":"Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message.","properties":{"announceNode":{"description":"Command used by a node operator to announce its node as a pending validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command to apply a referral code.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"Command to submit a batch of order instructions.","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"batchProposalSubmission":{"description":"Command to submit a batch governance proposal.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"}},"type":"object","title":"v1BatchProposalSubmission"},"blockHeight":{"description":"Block height which has been used to calculate the transaction proof-of-work.","format":"uint64","type":"string"},"cancelTransfer":{"description":"Command to cancel a recurring transfer.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"chainEvent":{"description":"Validator command sent automatically to notify the Vega chain of an off-chain event.","properties":{"builtin":{"description":"Built-in asset event.","properties":{"deposit":{"description":"Built-in asset deposit.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Deposit for a Vega built-in asset","type":"object"},"withdrawal":{"description":"Built-in asset withdrawal.","properties":{"amount":{"description":"The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega network party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Withdrawal for a Vega built-in asset","type":"object"}},"title":"Event related to a Vega built-in asset","type":"object"},"contractCall":{"description":"Ethereum contract call event.","properties":{"blockHeight":{"description":"Ethereum block height.","format":"uint64","type":"string"},"blockTime":{"description":"Ethereum block time in Unix seconds.","format":"uint64","type":"string"},"error":{"description":"Error message if the call failed.","type":"string"},"result":{"description":"Result of contract call, packed according to the ABI stored in the associated data source spec.","format":"byte","type":"string"},"sourceChainId":{"description":"Source chain for this chain event.","format":"uint64","type":"string"},"specId":{"description":"ID of the data source spec that triggered this contract call.","type":"string"}},"title":"Result of calling an arbitrary Ethereum contract method","type":"object"},"erc20":{"description":"Ethereum ERC20 event.","properties":{"assetDelist":{"description":"De-list an ERC20 asset.","properties":{"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deny-listing for an ERC20 token","type":"object"},"assetLimitsUpdated":{"description":"Update an ERC20 asset.","properties":{"lifetimeLimits":{"description":"Updated lifetime limits.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"},"withdrawThreshold":{"description":"Updated withdrawal threshold.","type":"string"}},"type":"object","title":"vegaERC20AssetLimitsUpdated"},"assetList":{"description":"List an ERC20 asset.","properties":{"assetSource":{"description":"Ethereum address of the asset.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset allow-listing for an ERC20 token","type":"object"},"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"bridgeResumed":{"description":"Bridge operations has been resumed.","type":"boolean"},"bridgeStopped":{"description":"Bridge operations has been stopped.","type":"boolean"},"deposit":{"description":"Deposit ERC20 asset.","properties":{"amount":{"description":"Amount to be deposited.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"targetPartyId":{"description":"Vega party ID i.e. public key that is the target of the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deposit for an ERC20 token","type":"object"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"withdrawal":{"description":"Withdraw ERC20 asset.","properties":{"referenceNonce":{"description":"Reference nonce used for the transaction.","type":"string"},"targetEthereumAddress":{"description":"Target Ethereum wallet address.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset withdrawal for an ERC20 token","type":"object"}},"title":"Event related to an ERC20 token","type":"object"},"erc20Multisig":{"description":"Ethereum ERC20 multisig event.","properties":{"block":{"format":"uint64","title":"Block in which the transaction was added","type":"string"},"index":{"format":"uint64","title":"Index of the log in the transaction","type":"string"},"signerAdded":{"title":"Add a signer to the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this new signer","type":"string"}},"type":"object"},"signerRemoved":{"title":"Remove a signer from the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this old signer","type":"string"},"oldSigner":{"title":"Ethereum address of the old signer","type":"string"}},"type":"object"},"thresholdSet":{"title":"Threshold set","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newThreshold":{"format":"int64","title":"New threshold value to set","type":"integer"},"nonce":{"title":"Nonce created by the Vega network","type":"string"}},"type":"object"}},"title":"Event related to the ERC20 MultiSig","type":"object"},"nonce":{"description":"Arbitrary one-time integer used to prevent replay attacks.","format":"uint64","type":"string"},"stakingEvent":{"description":"Ethereum Staking event.","properties":{"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"stakeDeposited":{"properties":{"amount":{"description":"Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available.","format":"int64","type":"string"},"ethereumAddress":{"title":"Ethereum Address of the user depositing stake (hex encode with 0x prefix)","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party receiving the stake deposit.","type":"string"}},"type":"object","title":"vegaStakeDeposited"},"stakeRemoved":{"properties":{"amount":{"description":"Amount removed as a base 10 unsigned integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address of the user removing stake. This should be hex encoded with 0x prefix.","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party from which to remove stake.","type":"string"}},"type":"object","title":"vegaStakeRemoved"},"totalSupply":{"properties":{"tokenAddress":{"title":"Address of the staking asset","type":"string"},"totalSupply":{"description":"Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places.","type":"string"}},"type":"object","title":"vegaStakeTotalSupply"}},"type":"object","title":"vegaStakingEvent"},"txId":{"description":"ID of the transaction on the foreign chain that caused the event.","type":"string"}},"type":"object","title":"v1ChainEvent"},"createReferralSet":{"description":"Command to create a referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to delegate tokens to a validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Ethereum keys.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"issueSignatures":{"description":"Command to request signatures to amend the multisig-control contract.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"joinTeam":{"description":"Command to join a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object","title":"v1JoinTeam"},"keyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Vega keys.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command to amend a liquidity commitment.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command to cancel a liquidity commitment.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"Command to submit a liquidity commitment.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"nodeSignature":{"description":"Validator command sent automatically to provide signatures for the Ethereum bridge.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object","title":"v1NodeSignature"},"nodeVote":{"description":"Validator command sent automatically to vote on that validity of an external resource.","properties":{"reference":{"description":"Reference identifying the resource that has been verified.","type":"string"},"type":{"description":"Type of external event that has been verified.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_STAKE_DEPOSITED","TYPE_STAKE_REMOVED","TYPE_FUNDS_DEPOSITED","TYPE_SIGNER_ADDED","TYPE_SIGNER_REMOVED","TYPE_BRIDGE_STOPPED","TYPE_BRIDGE_RESUMED","TYPE_ASSET_LISTED","TYPE_LIMITS_UPDATED","TYPE_STAKE_TOTAL_SUPPLY","TYPE_SIGNER_THRESHOLD_SET","TYPE_GOVERNANCE_VALIDATE_ASSET","TYPE_ETHEREUM_CONTRACT_CALL_RESULT"],"title":"- TYPE_UNSPECIFIED: Represents an unspecified or missing value from the input\n - TYPE_STAKE_DEPOSITED: Node vote for a new stake deposit\n - TYPE_STAKE_REMOVED: Node vote for a new stake removed event\n - TYPE_FUNDS_DEPOSITED: Node vote for a new collateral deposit\n - TYPE_SIGNER_ADDED: Node vote for a new signer added to the erc20 bridge\n - TYPE_SIGNER_REMOVED: Node vote for a signer removed from the erc20 bridge\n - TYPE_BRIDGE_STOPPED: Node vote for a bridge stopped event\n - TYPE_BRIDGE_RESUMED: Node vote for a bridge resumed event\n - TYPE_ASSET_LISTED: Node vote for a newly listed asset\n - TYPE_LIMITS_UPDATED: Node vote for an asset limits update\n - TYPE_STAKE_TOTAL_SUPPLY: Node vote to share the total supply of the staking token\n - TYPE_SIGNER_THRESHOLD_SET: Node vote to update the threshold of the signer set for the multisig contract\n - TYPE_GOVERNANCE_VALIDATE_ASSET: Node vote to validate a new assert governance proposal\n - TYPE_ETHEREUM_CONTRACT_CALL_RESULT: Node vote for an Ethereum contract call result","type":"string"}},"type":"object","title":"v1NodeVote"},"nonce":{"description":"Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly.","format":"uint64","type":"string"},"oracleDataSubmission":{"description":"Command to submit external oracle data.","properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"proposalSubmission":{"description":"Command to submit a governance proposal.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"Validator command sent manually to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"stateVariableProposal":{"description":"Validator command sent automatically to reach consensus on floating point values.","properties":{"proposal":{"description":"Details of the state variable being proposed.","properties":{"eventId":{"description":"Event ID.","type":"string"},"kvb":{"description":"Key value tolerance triplets.","items":{"properties":{"key":{"type":"string"},"tolerance":{"type":"string"},"value":{"properties":{"matrixVal":{"properties":{"value":{"items":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"},"type":"array"}},"type":"object","title":"vegaMatrixValue"},"scalarVal":{"properties":{"value":{"type":"string"}},"type":"object","title":"vegaScalarValue"},"vectorVal":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"}},"type":"object","title":"vegaStateVarValue"}},"type":"object","title":"vegaKeyValueBundle"},"type":"array"},"stateVarId":{"description":"State variable ID.","type":"string"}},"type":"object","title":"vegaStateValueProposal"}},"type":"object","title":"v1StateVariableProposal"},"stopOrdersCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrdersSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"transfer":{"description":"Command to submit a transfer.","properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"commandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to remove tokens delegated to a validator.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"v1UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode","description":"Command to update the margin mode of a party in a market."},"updatePartyProfile":{"description":"Command to update a party's profile.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"type":"object","title":"v1UpdatePartyProfile"},"updateReferralSet":{"description":"Command to update a referral set.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"validatorHeartbeat":{"description":"Validator command sent automatically to signal regular participation in the network.","properties":{"ethereumSignature":{"description":"Signature from the validator made using their Ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"message":{"description":"Message which has been signed.","type":"string"},"nodeId":{"description":"Node ID of the validator emitting the heartbeat.","type":"string"},"vegaSignature":{"description":"Signature from the validator made using their Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1ValidatorHeartbeat"},"voteSubmission":{"description":"Command to submit a vote on a governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to submit a withdrawal.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"createdAt":{"description":"Timestamp when the transaction happened, using RFC3399 format.","type":"string"},"cursor":{"title":"Cursor for this transaction. This is used for paginating results","type":"string"},"error":{"title":"Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0","type":"string"},"hash":{"title":"Hash of the transaction","type":"string"},"index":{"format":"int64","title":"Index of the transaction in the block","type":"integer"},"pow":{"title":"Proof of Work parameters of the transaction","description":"Components needed for the network to verify proof-of-work.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object"},"signature":{"title":"Signature generated by the submitter for the transaction","description":"Signature definition that allows the network to authenticate external data.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object"},"submitter":{"title":"Vega public key of the transaction's submitter","type":"string"},"type":{"title":"Type of transaction","type":"string"},"version":{"title":"Version format of the transaction","default":"TX_VERSION_UNSPECIFIED","description":"Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks.","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string"}},"type":"object","title":"blockexplorerapiv1Transaction"}},"type":"object","title":"v1GetTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"Get a transaction from the Vega blockchain","operationId":"BlockExplorer_GetTransaction","method":"get","path":"/transactions/{hash}","servers":[{"url":"https://be.testnet.vega.xyz/rest","description":"Block Explorer"}],"info":{"title":"Vega block explorer APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Get transaction","description":{"content":"Get a transaction from the Vega blockchain","type":"text/plain"},"url":{"path":["transactions",":hash"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) Hash of the transaction","type":"text/plain"},"type":"any","value":"","key":"hash"}]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/explorer/vega-block-explorer-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Get transaction' (block-explorer-get-transaction)" @@ -59,7 +59,7 @@ Command to submit a batch of order instructions. List of order amendments to be processed sequentially. -
  • Array [
  • ]
  • cancellations object[]
    +
  • Array [
  • ]
  • cancellations object[]
    List of order cancellations to be processed sequentially. @@ -87,7 +87,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -103,7 +103,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • submissions object[]
    +
    sizeOverrideValue object
  • ]
  • submissions object[]
    List of order submissions to be processed sequentially. @@ -115,192 +115,149 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • cancelTransfer object
    +
  • ]
  • updateMarginMode object[]
  • Array [
  • ]
  • batchProposalSubmission object
    -Command to cancel a recurring transfer. - -
    chainEvent object
    - -Validator command sent automatically to notify the Vega chain of an off-chain event. - -
    builtin object
    - -Built-in asset event. - -
    deposit object
    - -Built-in asset deposit. - -
    withdrawal object
    - -Built-in asset withdrawal. - -
    contractCall object
    - -Ethereum contract call event. - -
    erc20 object
    - -Ethereum ERC20 event. - -
    assetDelist object
    - -De-list an ERC20 asset. - -
    assetLimitsUpdated object
    - -Update an ERC20 asset. +Command to submit a batch governance proposal. -
    assetList object
    - -List an ERC20 asset. - -
    deposit object
    - -Deposit ERC20 asset. - -
    withdrawal object
    - -Withdraw ERC20 asset. - -
    erc20Multisig object
    - -Ethereum ERC20 multisig event. - -
    signerAdded object
    signerRemoved object
    thresholdSet object
    stakingEvent object
    - -Ethereum Staking event. - -
    stakeDeposited object
    stakeRemoved object
    totalSupply object
    createReferralSet object
    - -Command to create a referral set. - -
    team object
    - -Team details, if the referral set is to be considered a team. - -
    delegateSubmission object
    +
    rationale object
    -Command to delegate tokens to a validator. +Rationale behind a proposal. -
    ethereumKeyRotateSubmission object
    +
    terms object
    -Validator command sent manually by a node operator to rotate their node's Ethereum keys. +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. -
    ethereumSignature object
    +
    changes object[]
    -Signature signed by the new Ethereum key that can be verified to prove ownership. +List of individual changes included in the batch proposal. -
    issueSignatures object
    +
  • Array [
  • cancelTransfer object
    -Command to request signatures to amend the multisig-control contract. +Proposal change to cancel a governance initiated transfe. -
    keyRotateSubmission object
    +
    changes object
    newMarket object
    -Validator command sent manually by a node operator to rotate their node's Vega keys. +Proposal change for creating new futures market. -
    liquidityProvisionAmendment object
    +
    changes object
    -Command to amend a liquidity commitment. +Configuration of the new market. -
    liquidityProvisionCancellation object
    +
    instrument object
    -Command to cancel a liquidity commitment. +New futures market instrument configuration. -
    liquidityProvisionSubmission object
    +
    future object
    -Command to submit a liquidity commitment. +Future. -
    nodeSignature object
    +
    dataSourceSpecBinding object
    -Validator command sent automatically to provide signatures for the Ethereum bridge. +Binding between the data source spec and the settlement data. -
    nodeVote object
    +
    dataSourceSpecForSettlementData object
    -Validator command sent automatically to vote on that validity of an external resource. +Data source spec describing the data source for settlement. -
    oracleDataSubmission object
    +
    external object
    -Command to submit external oracle data. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    orderAmendment object
    +
    ethOracle object
    -A command that allows a party to update the details of an existing order. -Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. -It is not possible to change an order's type through this command. +Contains the data specification that is received from Ethereum sources. -
    orderCancellation object
    +
    filters object[]
  • Array [
  • conditions object[]
    -A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. -It is not possible to cancel another party's order with this command. +Conditions that should be matched by the data to be +considered of interest. -
    orderSubmission object
    +
  • Array [
  • ]
  • key object
    -A command that submits an order to the Vega network for a given market. +Data source's data property key targeted by the filter. -
    icebergOpts object
    +
  • ]
  • normalisers object[]
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    peggedOrder object
    +
  • Array [
  • ]
  • trigger object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Conditions for determining when to call the contract method. -
    proposalSubmission object
    +
    timeTrigger object
    -Command to submit a governance proposal. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    rationale object
    +
    oracle object
    -Rationale behind a proposal. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    terms object
    +
    filters object[]
    -Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    cancelTransfer object
    +
  • Array [
  • conditions object[]
    -Cancel a governance transfer. +Conditions that should be matched by the data to be +considered of interest. -
    changes object
    newAsset object
    +
  • Array [
  • ]
  • key object
    -Proposal change for creating new assets on Vega. +Data source's data property key targeted by the filter. -
    changes object
    +
  • ]
  • signers object[]
    -Configuration of the new asset. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    builtinAsset object
    +
  • Array [
  • ethAddress object
    -Vega built-in asset. +In case of an open oracle - Ethereum address will be submitted. -
    erc20 object
    +
    pubKey object
    -Ethereum ERC20 asset. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    newMarket object
    +
  • ]
  • internal object
    -Proposal change for creating new futures market on Vega. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    changes object
    +
    time object
    -Configuration of the new market. +Internal data source used for emitting timestamps. -
    instrument object
    +
    conditions object[]
    -New futures market instrument configuration. +Conditions that the timestamps should meet in order to be considered. -
    future object
    +
  • Array [
  • ]
  • timeTrigger object
    -Future. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    dataSourceSpecBinding object
    +
    conditions object[]
    -Binding between the data source spec and the settlement data. +Conditions that the timestamps need to meet in order to be considered. -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement. +The external data source spec describing the data source of trading termination.
    external object
    @@ -331,7 +288,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -398,9 +355,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -The external data source spec describing the data source of trading termination. +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement.
    external object
    @@ -431,7 +396,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -498,17 +463,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -539,7 +496,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -606,11 +563,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Data source spec describing the data source for settlement schedule. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -639,7 +600,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -706,11 +667,19 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. -
    liquidityMonitoringParameters object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -726,41 +695,2434 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    -Price monitoring parameters. +Mark price configuration. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
    dataSourcesSpec object[]
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Additional price sources to be used for index price calculation. -
    successor object
    +
  • Array [
  • external object
    -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    newSpotMarket object
    +
    ethOracle object
    -Proposal change for creating new spot market on Vega. +Contains the data specification that is received from Ethereum sources. -
    changes object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Configuration of the new spot market. +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • cancelTransfer object
    + +Command to cancel a recurring transfer. + +
    chainEvent object
    + +Validator command sent automatically to notify the Vega chain of an off-chain event. + +
    builtin object
    + +Built-in asset event. + +
    deposit object
    + +Built-in asset deposit. + +
    withdrawal object
    + +Built-in asset withdrawal. + +
    contractCall object
    + +Ethereum contract call event. + +
    erc20 object
    + +Ethereum ERC20 event. + +
    assetDelist object
    + +De-list an ERC20 asset. + +
    assetLimitsUpdated object
    + +Update an ERC20 asset. + +
    assetList object
    + +List an ERC20 asset. + +
    deposit object
    + +Deposit ERC20 asset. + +
    withdrawal object
    + +Withdraw ERC20 asset. + +
    erc20Multisig object
    + +Ethereum ERC20 multisig event. + +
    signerAdded object
    signerRemoved object
    thresholdSet object
    stakingEvent object
    + +Ethereum Staking event. + +
    stakeDeposited object
    stakeRemoved object
    totalSupply object
    createReferralSet object
    + +Command to create a referral set. + +
    team object
    + +Team details, if the referral set is to be considered a team. + +
    delegateSubmission object
    + +Command to delegate tokens to a validator. + +
    ethereumKeyRotateSubmission object
    + +Validator command sent manually by a node operator to rotate their node's Ethereum keys. + +
    ethereumSignature object
    + +Signature signed by the new Ethereum key that can be verified to prove ownership. + +
    issueSignatures object
    + +Command to request signatures to amend the multisig-control contract. + +
    joinTeam object
    + +Command to join a team. + +
    keyRotateSubmission object
    + +Validator command sent manually by a node operator to rotate their node's Vega keys. + +
    liquidityProvisionAmendment object
    + +Command to amend a liquidity commitment. + +
    liquidityProvisionCancellation object
    + +Command to cancel a liquidity commitment. + +
    liquidityProvisionSubmission object
    + +Command to submit a liquidity commitment. + +
    nodeSignature object
    + +Validator command sent automatically to provide signatures for the Ethereum bridge. + +
    nodeVote object
    + +Validator command sent automatically to vote on that validity of an external resource. + +
    oracleDataSubmission object
    + +Command to submit external oracle data. + +
    orderAmendment object
    + +A command that allows a party to update the details of an existing order. +Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. +It is not possible to change an order's type through this command. + +
    orderCancellation object
    + +A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. +It is not possible to cancel another party's order with this command. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    proposalSubmission object
    + +Command to submit a governance proposal. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. -
    instrument object
    +
    conditions object[]
    -New spot market instrument configuration. +Conditions that the timestamps should meet in order to be considered. -
    future object
    +
  • Array [
  • ]
  • timeTrigger object
    -Future. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    dataSourceSpecBinding object
    +
    conditions object[]
    -Binding between the data source spec and the settlement data. +Conditions that the timestamps need to meet in order to be considered. -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement. +The external data source spec describing the data source of trading termination.
    external object
    @@ -791,7 +3153,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -858,9 +3220,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -The external data source spec describing the data source of trading termination. +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement.
    external object
    @@ -891,7 +3261,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -958,17 +3328,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -999,7 +3361,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1066,11 +3428,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Data source spec describing the data source for settlement schedule. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1099,7 +3465,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1166,11 +3532,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1202,7 +3572,7 @@ Proposal change for a governance transfer. Configuration for a new transfer. -
    oneOff object
    recurring object
    dispatchStrategy object
    +
    oneOff object
    recurring object
    dispatchStrategy object
    Optional parameter defining how a transfer is dispatched. @@ -1210,7 +3580,7 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • updateAsset object
    +
  • Array [
  • ]
  • updateAsset object
    Proposal change for updating an asset. @@ -1244,7 +3614,9 @@ The binding between the data source spec and the settlement data.
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1275,7 +3647,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1344,7 +3716,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -The data source spec describing the data source for trading termination. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1375,7 +3749,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1442,7 +3816,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    Perpetual. @@ -1450,9 +3824,11 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -Data source spec describing the data source for settlement. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1483,7 +3859,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1552,7 +3928,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement schedule. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1583,7 +3961,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1650,7 +4132,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -1666,7 +4156,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -1714,7 +4308,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1792,7 +4390,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -1808,11 +4406,11 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    transfer object
    +
    sizeOverrideValue object
    transfer object
    Command to submit a transfer. -
    oneOff object
    +
    oneOff object
    Details of a one-off transfer that is executed once at a specified time. @@ -1828,11 +4426,24 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • undelegateSubmission object
    +
  • Array [
  • ]
  • undelegateSubmission object
    Command to remove tokens delegated to a validator. -
    updateReferralSet object
    +
    updateMarginMode object
    + +Command to update the margin mode of a party in a market. + +
    updatePartyProfile object
    + +Command to update a party's profile. + +
    metadata object[]
    + +Freeform data to associate to the party. +Support a maximum of 10 entries. + +
  • Array [
  • ]
  • updateReferralSet object
    Command to update a referral set. @@ -1840,7 +4451,7 @@ Command to update a referral set. Team details, if the referral set is to be considered a team. -
    validatorHeartbeat object
    +
    validatorHeartbeat object
    Validator command sent automatically to signal regular participation in the network. @@ -1876,7 +4487,7 @@ Components needed for the network to verify proof-of-work. Signature definition that allows the network to authenticate external data. -
    +
    An unexpected error response. diff --git a/docs/api/rest/explorer/block-explorer-info.api.mdx b/docs/api/rest/explorer/block-explorer-info.api.mdx index ce88bec90..0dc69e931 100644 --- a/docs/api/rest/explorer/block-explorer-info.api.mdx +++ b/docs/api/rest/explorer/block-explorer-info.api.mdx @@ -6,7 +6,7 @@ Response contains a semver formatted version of the data node and the commit has sidebar_label: "Info" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"commitHash":{"title":"Commit hash from which the data node was built","type":"string"},"version":{"title":"Semver formatted version of the data node","type":"string"}},"type":"object","title":"v1InfoResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"Get information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built","operationId":"BlockExplorer_Info","method":"get","path":"/info","servers":[{"url":"https://be.testnet.vega.xyz/rest","description":"Block Explorer"}],"info":{"title":"Vega block explorer APIs","version":"v0.73.1"},"postman":{"name":"Info","description":{"content":"Get information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built","type":"text/plain"},"url":{"path":["info"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"commitHash":{"title":"Commit hash from which the data node was built","type":"string"},"version":{"title":"Semver formatted version of the data node","type":"string"}},"type":"object","title":"v1InfoResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"Get information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built","operationId":"BlockExplorer_Info","method":"get","path":"/info","servers":[{"url":"https://be.testnet.vega.xyz/rest","description":"Block Explorer"}],"info":{"title":"Vega block explorer APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Info","description":{"content":"Get information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built","type":"text/plain"},"url":{"path":["info"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/explorer/vega-block-explorer-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Info' (block-explorer-info)" diff --git a/docs/api/rest/explorer/block-explorer-list-transactions.api.mdx b/docs/api/rest/explorer/block-explorer-list-transactions.api.mdx index 9787463d0..859397aa8 100644 --- a/docs/api/rest/explorer/block-explorer-list-transactions.api.mdx +++ b/docs/api/rest/explorer/block-explorer-list-transactions.api.mdx @@ -1,11 +1,11 @@ --- id: block-explorer-list-transactions title: "List transactions" -description: "List transactions from the Vega blockchain" +description: "List transactions from the Vega blockchain from the newest to the oldest transactions." sidebar_label: "List transactions" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"description":"Number of transactions to be returned from the blockchain.\nThis is deprecated, use first and last instead.","in":"query","name":"limit","required":false,"schema":{"format":"int64","type":"integer"}},{"description":"Optional cursor to paginate the request.","in":"query","name":"before","required":false,"schema":{"type":"string"}},{"description":"Optional cursor to paginate the request.","in":"query","name":"after","required":false,"schema":{"type":"string"}},{"description":"Transaction command types filter, for listing transactions with specified command types.","explode":true,"in":"query","name":"cmdTypes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Transaction command types exclusion filter, for listing all the transactions except the ones with specified command types.","explode":true,"in":"query","name":"excludeCmdTypes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Party IDs filter, can be sender or receiver.","explode":true,"in":"query","name":"parties","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of transactions to be returned from the blockchain. Use in conjunction with the `after` cursor to paginate forwards.\nOn its own, this will return the first `first` transactions.","in":"query","name":"first","required":false,"schema":{"format":"int64","type":"integer"}},{"description":"Number of transactions to be returned from the blockchain. Use in conjunction with the `before` cursor to paginate backwards.\nOn its own, this will return the last `last` transactions.","in":"query","name":"last","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"transactions":{"items":{"properties":{"block":{"format":"uint64","title":"Height of the block the transaction was found in","type":"string"},"code":{"format":"int64","title":"Results code of the transaction. 0 indicates the transaction was successful","type":"integer"},"command":{"title":"Actual command of the transaction","description":"Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message.","properties":{"announceNode":{"description":"Command used by a node operator to announce its node as a pending validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command to apply a referral code.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"Command to submit a batch of order instructions.","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"blockHeight":{"description":"Block height which has been used to calculate the transaction proof-of-work.","format":"uint64","type":"string"},"cancelTransfer":{"description":"Command to cancel a recurring transfer.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"chainEvent":{"description":"Validator command sent automatically to notify the Vega chain of an off-chain event.","properties":{"builtin":{"description":"Built-in asset event.","properties":{"deposit":{"description":"Built-in asset deposit.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Deposit for a Vega built-in asset","type":"object"},"withdrawal":{"description":"Built-in asset withdrawal.","properties":{"amount":{"description":"The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega network party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Withdrawal for a Vega built-in asset","type":"object"}},"title":"Event related to a Vega built-in asset","type":"object"},"contractCall":{"description":"Ethereum contract call event.","properties":{"blockHeight":{"description":"Ethereum block height.","format":"uint64","type":"string"},"blockTime":{"description":"Ethereum block time in Unix seconds.","format":"uint64","type":"string"},"error":{"description":"Error message if the call failed.","type":"string"},"result":{"description":"Result of contract call, packed according to the ABI stored in the associated data source spec.","format":"byte","type":"string"},"specId":{"description":"ID of the data source spec that triggered this contract call.","type":"string"}},"title":"Result of calling an arbitrary Ethereum contract method","type":"object"},"erc20":{"description":"Ethereum ERC20 event.","properties":{"assetDelist":{"description":"De-list an ERC20 asset.","properties":{"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deny-listing for an ERC20 token","type":"object"},"assetLimitsUpdated":{"description":"Update an ERC20 asset.","properties":{"lifetimeLimits":{"description":"Updated lifetime limits.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"},"withdrawThreshold":{"description":"Updated withdrawal threshold.","type":"string"}},"type":"object","title":"vegaERC20AssetLimitsUpdated"},"assetList":{"description":"List an ERC20 asset.","properties":{"assetSource":{"description":"Ethereum address of the asset.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset allow-listing for an ERC20 token","type":"object"},"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"bridgeResumed":{"description":"Bridge operations has been resumed.","type":"boolean"},"bridgeStopped":{"description":"Bridge operations has been stopped.","type":"boolean"},"deposit":{"description":"Deposit ERC20 asset.","properties":{"amount":{"description":"Amount to be deposited.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"targetPartyId":{"description":"Vega party ID i.e. public key that is the target of the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deposit for an ERC20 token","type":"object"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"withdrawal":{"description":"Withdraw ERC20 asset.","properties":{"referenceNonce":{"description":"Reference nonce used for the transaction.","type":"string"},"targetEthereumAddress":{"description":"Target Ethereum wallet address.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset withdrawal for an ERC20 token","type":"object"}},"title":"Event related to an ERC20 token","type":"object"},"erc20Multisig":{"description":"Ethereum ERC20 multisig event.","properties":{"block":{"format":"uint64","title":"Block in which the transaction was added","type":"string"},"index":{"format":"uint64","title":"Index of the log in the transaction","type":"string"},"signerAdded":{"title":"Add a signer to the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this new signer","type":"string"}},"type":"object"},"signerRemoved":{"title":"Remove a signer from the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this old signer","type":"string"},"oldSigner":{"title":"Ethereum address of the old signer","type":"string"}},"type":"object"},"thresholdSet":{"title":"Threshold set","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newThreshold":{"format":"int64","title":"New threshold value to set","type":"integer"},"nonce":{"title":"Nonce created by the Vega network","type":"string"}},"type":"object"}},"title":"Event related to the ERC20 MultiSig","type":"object"},"nonce":{"description":"Arbitrary one-time integer used to prevent replay attacks.","format":"uint64","type":"string"},"stakingEvent":{"description":"Ethereum Staking event.","properties":{"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"stakeDeposited":{"properties":{"amount":{"description":"Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available.","format":"int64","type":"string"},"ethereumAddress":{"title":"Ethereum Address of the user depositing stake (hex encode with 0x prefix)","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party receiving the stake deposit.","type":"string"}},"type":"object","title":"vegaStakeDeposited"},"stakeRemoved":{"properties":{"amount":{"description":"Amount removed as a base 10 unsigned integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address of the user removing stake. This should be hex encoded with 0x prefix.","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party from which to remove stake.","type":"string"}},"type":"object","title":"vegaStakeRemoved"},"totalSupply":{"properties":{"tokenAddress":{"title":"Address of the staking asset","type":"string"},"totalSupply":{"description":"Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places.","type":"string"}},"type":"object","title":"vegaStakeTotalSupply"}},"type":"object","title":"vegaStakingEvent"},"txId":{"description":"ID of the transaction on the foreign chain that caused the event.","type":"string"}},"type":"object","title":"v1ChainEvent"},"createReferralSet":{"description":"Command to create a referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to delegate tokens to a validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Ethereum keys.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"issueSignatures":{"description":"Command to request signatures to amend the multisig-control contract.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"keyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Vega keys.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command to amend a liquidity commitment.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command to cancel a liquidity commitment.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"Command to submit a liquidity commitment.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"nodeSignature":{"description":"Validator command sent automatically to provide signatures for the Ethereum bridge.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object","title":"v1NodeSignature"},"nodeVote":{"description":"Validator command sent automatically to vote on that validity of an external resource.","properties":{"reference":{"description":"Reference identifying the resource that has been verified.","type":"string"},"type":{"description":"Type of external event that has been verified.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_STAKE_DEPOSITED","TYPE_STAKE_REMOVED","TYPE_FUNDS_DEPOSITED","TYPE_SIGNER_ADDED","TYPE_SIGNER_REMOVED","TYPE_BRIDGE_STOPPED","TYPE_BRIDGE_RESUMED","TYPE_ASSET_LISTED","TYPE_LIMITS_UPDATED","TYPE_STAKE_TOTAL_SUPPLY","TYPE_SIGNER_THRESHOLD_SET","TYPE_GOVERNANCE_VALIDATE_ASSET","TYPE_ETHEREUM_CONTRACT_CALL_RESULT"],"title":"- TYPE_UNSPECIFIED: Represents an unspecified or missing value from the input\n - TYPE_STAKE_DEPOSITED: Node vote for a new stake deposit\n - TYPE_STAKE_REMOVED: Node vote for a new stake removed event\n - TYPE_FUNDS_DEPOSITED: Node vote for a new collateral deposit\n - TYPE_SIGNER_ADDED: Node vote for a new signer added to the erc20 bridge\n - TYPE_SIGNER_REMOVED: Node vote for a signer removed from the erc20 bridge\n - TYPE_BRIDGE_STOPPED: Node vote for a bridge stopped event\n - TYPE_BRIDGE_RESUMED: Node vote for a bridge resumed event\n - TYPE_ASSET_LISTED: Node vote for a newly listed asset\n - TYPE_LIMITS_UPDATED: Node vote for an asset limits update\n - TYPE_STAKE_TOTAL_SUPPLY: Node vote to share the total supply of the staking token\n - TYPE_SIGNER_THRESHOLD_SET: Node vote to update the threshold of the signer set for the multisig contract\n - TYPE_GOVERNANCE_VALIDATE_ASSET: Node vote to validate a new assert governance proposal\n - TYPE_ETHEREUM_CONTRACT_CALL_RESULT: Node vote for an Ethereum contract call result","type":"string"}},"type":"object","title":"v1NodeVote"},"nonce":{"description":"Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly.","format":"uint64","type":"string"},"oracleDataSubmission":{"description":"Command to submit external oracle data.","properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"proposalSubmission":{"description":"Command to submit a governance proposal.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"The data source spec describing the data of settlement data.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The data source spec describing the data source for trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"Validator command sent manually to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"stateVariableProposal":{"description":"Validator command sent automatically to reach consensus on floating point values.","properties":{"proposal":{"description":"Details of the state variable being proposed.","properties":{"eventId":{"description":"Event ID.","type":"string"},"kvb":{"description":"Key value tolerance triplets.","items":{"properties":{"key":{"type":"string"},"tolerance":{"type":"string"},"value":{"properties":{"matrixVal":{"properties":{"value":{"items":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"},"type":"array"}},"type":"object","title":"vegaMatrixValue"},"scalarVal":{"properties":{"value":{"type":"string"}},"type":"object","title":"vegaScalarValue"},"vectorVal":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"}},"type":"object","title":"vegaStateVarValue"}},"type":"object","title":"vegaKeyValueBundle"},"type":"array"},"stateVarId":{"description":"State variable ID.","type":"string"}},"type":"object","title":"vegaStateValueProposal"}},"type":"object","title":"v1StateVariableProposal"},"stopOrdersCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrdersSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"transfer":{"description":"Command to submit a transfer.","properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"commandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to remove tokens delegated to a validator.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateReferralSet":{"description":"Command to update a referral set.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"validatorHeartbeat":{"description":"Validator command sent automatically to signal regular participation in the network.","properties":{"ethereumSignature":{"description":"Signature from the validator made using their Ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"message":{"description":"Message which has been signed.","type":"string"},"nodeId":{"description":"Node ID of the validator emitting the heartbeat.","type":"string"},"vegaSignature":{"description":"Signature from the validator made using their Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1ValidatorHeartbeat"},"voteSubmission":{"description":"Command to submit a vote on a governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to submit a withdrawal.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"createdAt":{"description":"Timestamp when the transaction happened, using RFC3399 format.","type":"string"},"cursor":{"title":"Cursor for this transaction. This is used for paginating results","type":"string"},"error":{"title":"Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0","type":"string"},"hash":{"title":"Hash of the transaction","type":"string"},"index":{"format":"int64","title":"Index of the transaction in the block","type":"integer"},"pow":{"title":"Proof of Work parameters of the transaction","description":"Components needed for the network to verify proof-of-work.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object"},"signature":{"title":"Signature generated by the submitter for the transaction","description":"Signature definition that allows the network to authenticate external data.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object"},"submitter":{"title":"Vega public key of the transaction's submitter","type":"string"},"type":{"title":"Type of transaction","type":"string"},"version":{"title":"Version format of the transaction","default":"TX_VERSION_UNSPECIFIED","description":"Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks.","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string"}},"type":"object","title":"blockexplorerapiv1Transaction"},"title":"Transaction corresponding to the specific request and filters","type":"array"}},"type":"object","title":"v1ListTransactionsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"List transactions from the Vega blockchain","operationId":"BlockExplorer_ListTransactions","method":"get","path":"/transactions","servers":[{"url":"https://be.testnet.vega.xyz/rest","description":"Block Explorer"}],"info":{"title":"Vega block explorer APIs","version":"v0.73.1"},"postman":{"name":"List transactions","description":{"content":"List transactions from the Vega blockchain","type":"text/plain"},"url":{"path":["transactions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Number of transactions to be returned from the blockchain.\nThis is deprecated, use first and last instead.","type":"text/plain"},"key":"limit","value":""},{"disabled":false,"description":{"content":"Optional cursor to paginate the request.","type":"text/plain"},"key":"before","value":""},{"disabled":false,"description":{"content":"Optional cursor to paginate the request.","type":"text/plain"},"key":"after","value":""},{"disabled":false,"description":{"content":"Transaction command types filter, for listing transactions with specified command types.","type":"text/plain"},"key":"cmdTypes","value":""},{"disabled":false,"description":{"content":"Transaction command types exclusion filter, for listing all the transactions except the ones with specified command types.","type":"text/plain"},"key":"excludeCmdTypes","value":""},{"disabled":false,"description":{"content":"Party IDs filter, can be sender or receiver.","type":"text/plain"},"key":"parties","value":""},{"disabled":false,"description":{"content":"Number of transactions to be returned from the blockchain. Use in conjunction with the `after` cursor to paginate forwards.\nOn its own, this will return the first `first` transactions.","type":"text/plain"},"key":"first","value":""},{"disabled":false,"description":{"content":"Number of transactions to be returned from the blockchain. Use in conjunction with the `before` cursor to paginate backwards.\nOn its own, this will return the last `last` transactions.","type":"text/plain"},"key":"last","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"description":"Cursor to paginate the request. It can be used in conjunction with the `after` cursor.","in":"query","name":"before","required":false,"schema":{"type":"string"}},{"description":"Cursor to paginate the request. It can be used in conjunction with the `before` cursor.","in":"query","name":"after","required":false,"schema":{"type":"string"}},{"description":"Transaction command types filter, for listing transactions with specified command types.","explode":true,"in":"query","name":"cmdTypes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Transaction command types exclusion filter, for listing all the transactions except the ones with specified command types.","explode":true,"in":"query","name":"excludeCmdTypes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Party IDs filter, can be sender or receiver.","explode":true,"in":"query","name":"parties","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `after` cursor to paginate forwards. Paginating forwards means toward the most recent\ntransactions.\nIt cannot be used in conjunction with the `before` cursor.\nOn its own, this will return the `first` most recent transactions.","in":"query","name":"first","required":false,"schema":{"format":"int64","type":"integer"}},{"description":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `before` cursor to paginate backwards. Paginating forwards means toward the least recent\ntransactions.\nIt cannot be used in conjunction with the `after` cursor.\nOn its own, this will return the `last` oldest transactions.","in":"query","name":"last","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"transactions":{"items":{"properties":{"block":{"format":"uint64","title":"Height of the block the transaction was found in","type":"string"},"code":{"format":"int64","title":"Results code of the transaction. 0 indicates the transaction was successful","type":"integer"},"command":{"title":"Actual command of the transaction","description":"Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message.","properties":{"announceNode":{"description":"Command used by a node operator to announce its node as a pending validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"description":"Signature from the node made using the ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"description":"Signature from the node made using the Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1AnnounceNode"},"applyReferralCode":{"description":"Command to apply a referral code.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object","title":"v1ApplyReferralCode"},"batchMarketInstructions":{"description":"Command to submit a batch of order instructions.","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object","title":"v1BatchMarketInstructions"},"batchProposalSubmission":{"description":"Command to submit a batch governance proposal.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"}},"type":"object","title":"v1BatchProposalSubmission"},"blockHeight":{"description":"Block height which has been used to calculate the transaction proof-of-work.","format":"uint64","type":"string"},"cancelTransfer":{"description":"Command to cancel a recurring transfer.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object","title":"commandsv1CancelTransfer"},"chainEvent":{"description":"Validator command sent automatically to notify the Vega chain of an off-chain event.","properties":{"builtin":{"description":"Built-in asset event.","properties":{"deposit":{"description":"Built-in asset deposit.","properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Deposit for a Vega built-in asset","type":"object"},"withdrawal":{"description":"Built-in asset withdrawal.","properties":{"amount":{"description":"The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega network party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Withdrawal for a Vega built-in asset","type":"object"}},"title":"Event related to a Vega built-in asset","type":"object"},"contractCall":{"description":"Ethereum contract call event.","properties":{"blockHeight":{"description":"Ethereum block height.","format":"uint64","type":"string"},"blockTime":{"description":"Ethereum block time in Unix seconds.","format":"uint64","type":"string"},"error":{"description":"Error message if the call failed.","type":"string"},"result":{"description":"Result of contract call, packed according to the ABI stored in the associated data source spec.","format":"byte","type":"string"},"sourceChainId":{"description":"Source chain for this chain event.","format":"uint64","type":"string"},"specId":{"description":"ID of the data source spec that triggered this contract call.","type":"string"}},"title":"Result of calling an arbitrary Ethereum contract method","type":"object"},"erc20":{"description":"Ethereum ERC20 event.","properties":{"assetDelist":{"description":"De-list an ERC20 asset.","properties":{"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deny-listing for an ERC20 token","type":"object"},"assetLimitsUpdated":{"description":"Update an ERC20 asset.","properties":{"lifetimeLimits":{"description":"Updated lifetime limits.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"},"withdrawThreshold":{"description":"Updated withdrawal threshold.","type":"string"}},"type":"object","title":"vegaERC20AssetLimitsUpdated"},"assetList":{"description":"List an ERC20 asset.","properties":{"assetSource":{"description":"Ethereum address of the asset.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset allow-listing for an ERC20 token","type":"object"},"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"bridgeResumed":{"description":"Bridge operations has been resumed.","type":"boolean"},"bridgeStopped":{"description":"Bridge operations has been stopped.","type":"boolean"},"deposit":{"description":"Deposit ERC20 asset.","properties":{"amount":{"description":"Amount to be deposited.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"targetPartyId":{"description":"Vega party ID i.e. public key that is the target of the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deposit for an ERC20 token","type":"object"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"withdrawal":{"description":"Withdraw ERC20 asset.","properties":{"referenceNonce":{"description":"Reference nonce used for the transaction.","type":"string"},"targetEthereumAddress":{"description":"Target Ethereum wallet address.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset withdrawal for an ERC20 token","type":"object"}},"title":"Event related to an ERC20 token","type":"object"},"erc20Multisig":{"description":"Ethereum ERC20 multisig event.","properties":{"block":{"format":"uint64","title":"Block in which the transaction was added","type":"string"},"index":{"format":"uint64","title":"Index of the log in the transaction","type":"string"},"signerAdded":{"title":"Add a signer to the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this new signer","type":"string"}},"type":"object"},"signerRemoved":{"title":"Remove a signer from the erc20 bridge","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this old signer","type":"string"},"oldSigner":{"title":"Ethereum address of the old signer","type":"string"}},"type":"object"},"thresholdSet":{"title":"Threshold set","properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newThreshold":{"format":"int64","title":"New threshold value to set","type":"integer"},"nonce":{"title":"Nonce created by the Vega network","type":"string"}},"type":"object"}},"title":"Event related to the ERC20 MultiSig","type":"object"},"nonce":{"description":"Arbitrary one-time integer used to prevent replay attacks.","format":"uint64","type":"string"},"stakingEvent":{"description":"Ethereum Staking event.","properties":{"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"stakeDeposited":{"properties":{"amount":{"description":"Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available.","format":"int64","type":"string"},"ethereumAddress":{"title":"Ethereum Address of the user depositing stake (hex encode with 0x prefix)","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party receiving the stake deposit.","type":"string"}},"type":"object","title":"vegaStakeDeposited"},"stakeRemoved":{"properties":{"amount":{"description":"Amount removed as a base 10 unsigned integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address of the user removing stake. This should be hex encoded with 0x prefix.","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party from which to remove stake.","type":"string"}},"type":"object","title":"vegaStakeRemoved"},"totalSupply":{"properties":{"tokenAddress":{"title":"Address of the staking asset","type":"string"},"totalSupply":{"description":"Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places.","type":"string"}},"type":"object","title":"vegaStakeTotalSupply"}},"type":"object","title":"vegaStakingEvent"},"txId":{"description":"ID of the transaction on the foreign chain that caused the event.","type":"string"}},"type":"object","title":"v1ChainEvent"},"createReferralSet":{"description":"Command to create a referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object","title":"v1CreateReferralSetTeam"}},"type":"object","title":"v1CreateReferralSet"},"delegateSubmission":{"description":"Command to delegate tokens to a validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object","title":"v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Ethereum keys.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1EthereumKeyRotateSubmission"},"issueSignatures":{"description":"Command to request signatures to amend the multisig-control contract.","properties":{"kind":{"description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object","title":"v1IssueSignatures"},"joinTeam":{"description":"Command to join a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object","title":"v1JoinTeam"},"keyRotateSubmission":{"description":"Validator command sent manually by a node operator to rotate their node's Vega keys.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object","title":"v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"description":"Command to amend a liquidity commitment.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"description":"Command to cancel a liquidity commitment.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object","title":"v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"description":"Command to submit a liquidity commitment.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object","title":"v1LiquidityProvisionSubmission"},"nodeSignature":{"description":"Validator command sent automatically to provide signatures for the Ethereum bridge.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"description":"Kind of resource being signed.","default":"NODE_SIGNATURE_KIND_UNSPECIFIED","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object","title":"v1NodeSignature"},"nodeVote":{"description":"Validator command sent automatically to vote on that validity of an external resource.","properties":{"reference":{"description":"Reference identifying the resource that has been verified.","type":"string"},"type":{"description":"Type of external event that has been verified.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_STAKE_DEPOSITED","TYPE_STAKE_REMOVED","TYPE_FUNDS_DEPOSITED","TYPE_SIGNER_ADDED","TYPE_SIGNER_REMOVED","TYPE_BRIDGE_STOPPED","TYPE_BRIDGE_RESUMED","TYPE_ASSET_LISTED","TYPE_LIMITS_UPDATED","TYPE_STAKE_TOTAL_SUPPLY","TYPE_SIGNER_THRESHOLD_SET","TYPE_GOVERNANCE_VALIDATE_ASSET","TYPE_ETHEREUM_CONTRACT_CALL_RESULT"],"title":"- TYPE_UNSPECIFIED: Represents an unspecified or missing value from the input\n - TYPE_STAKE_DEPOSITED: Node vote for a new stake deposit\n - TYPE_STAKE_REMOVED: Node vote for a new stake removed event\n - TYPE_FUNDS_DEPOSITED: Node vote for a new collateral deposit\n - TYPE_SIGNER_ADDED: Node vote for a new signer added to the erc20 bridge\n - TYPE_SIGNER_REMOVED: Node vote for a signer removed from the erc20 bridge\n - TYPE_BRIDGE_STOPPED: Node vote for a bridge stopped event\n - TYPE_BRIDGE_RESUMED: Node vote for a bridge resumed event\n - TYPE_ASSET_LISTED: Node vote for a newly listed asset\n - TYPE_LIMITS_UPDATED: Node vote for an asset limits update\n - TYPE_STAKE_TOTAL_SUPPLY: Node vote to share the total supply of the staking token\n - TYPE_SIGNER_THRESHOLD_SET: Node vote to update the threshold of the signer set for the multisig contract\n - TYPE_GOVERNANCE_VALIDATE_ASSET: Node vote to validate a new assert governance proposal\n - TYPE_ETHEREUM_CONTRACT_CALL_RESULT: Node vote for an Ethereum contract call result","type":"string"}},"type":"object","title":"v1NodeVote"},"nonce":{"description":"Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly.","format":"uint64","type":"string"},"oracleDataSubmission":{"description":"Command to submit external oracle data.","properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"description":"Source from which the data is coming from.","default":"ORACLE_SOURCE_UNSPECIFIED","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"}},"title":"Command to submit new oracle data from third party providers","type":"object"},"orderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"description":"New pegged reference for the order.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"description":"New time in force for the order.","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"}},"type":"object","title":"v1OrderAmendment"},"orderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1OrderCancellation"},"orderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"proposalSubmission":{"description":"Command to submit a governance proposal.","properties":{"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"The external data source spec describing the data source of trading termination.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"description":"The network parameter to update.","properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"}},"type":"object","title":"v1ProposalSubmission"},"protocolUpgradeProposal":{"description":"Validator command sent manually to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object","title":"v1ProtocolUpgradeProposal"},"stateVariableProposal":{"description":"Validator command sent automatically to reach consensus on floating point values.","properties":{"proposal":{"description":"Details of the state variable being proposed.","properties":{"eventId":{"description":"Event ID.","type":"string"},"kvb":{"description":"Key value tolerance triplets.","items":{"properties":{"key":{"type":"string"},"tolerance":{"type":"string"},"value":{"properties":{"matrixVal":{"properties":{"value":{"items":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"},"type":"array"}},"type":"object","title":"vegaMatrixValue"},"scalarVal":{"properties":{"value":{"type":"string"}},"type":"object","title":"vegaScalarValue"},"vectorVal":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaVectorValue"}},"type":"object","title":"vegaStateVarValue"}},"type":"object","title":"vegaKeyValueBundle"},"type":"array"},"stateVarId":{"description":"State variable ID.","type":"string"}},"type":"object","title":"vegaStateValueProposal"}},"type":"object","title":"v1StateVariableProposal"},"stopOrdersCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object","title":"v1StopOrdersCancellation"},"stopOrdersSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"description":"Stop order that will be triggered if the price falls below a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"},"risesAbove":{"description":"Stop order that will be triggered if the price rises above a given trigger price.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"description":"Strategy to adopt if the expiry time is reached.","default":"EXPIRY_STRATEGY_UNSPECIFIED","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string","title":"StopOrderExpiryStrategy"},"orderSubmission":{"description":"Order to be submitted once the trigger is breached.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"description":"Iceberg order details. If set, the order will exist on the order book in chunks.","properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"description":"Price point the order is linked to.","default":"PEGGED_REFERENCE_UNSPECIFIED","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"description":"Which side of the order book the order is for, e.g. buy or sell.","default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"description":"Time in force indicates how long an order will remain active before it is executed or expires..","default":"TIME_IN_FORCE_UNSPECIFIED","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"type":{"description":"Type of the order.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"}},"type":"object","title":"v1OrderSubmission"},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"title":"Indicates if this order is linked to an order or position to derive the order size","default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"type":"string"},"sizeOverrideValue":{"title":"If this order is linked to a position, provide an optional scaling factor","properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object","title":"v1StopOrderSetup"}},"type":"object","title":"v1StopOrdersSubmission"},"transfer":{"description":"Command to submit a transfer.","properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"description":"Account type from which the funds of the party should be taken.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"oneOff":{"description":"Details of a one-off transfer that is executed once at a specified time.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object","title":"commandsv1OneOffTransfer"},"recurring":{"description":"Details of a transfer that is executed once every epoch until stopped.","properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"description":"Type of the destination account.","default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"undelegateSubmission":{"description":"Command to remove tokens delegated to a validator.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"description":"Method of delegation.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string","title":"v1UndelegateSubmissionMethod"},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object","title":"v1UndelegateSubmission"},"updateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"description":"Margin mode to use.","default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"}},"type":"object","title":"v1UpdateMarginMode","description":"Command to update the margin mode of a party in a market."},"updatePartyProfile":{"description":"Command to update a party's profile.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"type":"object","title":"v1UpdatePartyProfile"},"updateReferralSet":{"description":"Command to update a referral set.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"description":"Team details, if the referral set is to be considered a team.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object","title":"v1UpdateReferralSetTeam"}},"type":"object","title":"v1UpdateReferralSet"},"validatorHeartbeat":{"description":"Validator command sent automatically to signal regular participation in the network.","properties":{"ethereumSignature":{"description":"Signature from the validator made using their Ethereum wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"},"message":{"description":"Message which has been signed.","type":"string"},"nodeId":{"description":"Node ID of the validator emitting the heartbeat.","type":"string"},"vegaSignature":{"description":"Signature from the validator made using their Vega wallet.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object","title":"v1Signature"}},"type":"object","title":"v1ValidatorHeartbeat"},"voteSubmission":{"description":"Command to submit a vote on a governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"description":"Actual value of the vote.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"type":"object","title":"v1VoteSubmission"},"withdrawSubmission":{"description":"Command to submit a withdrawal.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"description":"Details specific to the foreign chain, such as the receiver address.","properties":{"erc20":{"description":"ERC20 withdrawal details.","properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"}},"title":"Withdrawal external details","type":"object"}},"type":"object","title":"v1WithdrawSubmission"}},"type":"object"},"createdAt":{"description":"Timestamp when the transaction happened, using RFC3399 format.","type":"string"},"cursor":{"title":"Cursor for this transaction. This is used for paginating results","type":"string"},"error":{"title":"Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0","type":"string"},"hash":{"title":"Hash of the transaction","type":"string"},"index":{"format":"int64","title":"Index of the transaction in the block","type":"integer"},"pow":{"title":"Proof of Work parameters of the transaction","description":"Components needed for the network to verify proof-of-work.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object"},"signature":{"title":"Signature generated by the submitter for the transaction","description":"Signature definition that allows the network to authenticate external data.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object"},"submitter":{"title":"Vega public key of the transaction's submitter","type":"string"},"type":{"title":"Type of transaction","type":"string"},"version":{"title":"Version format of the transaction","default":"TX_VERSION_UNSPECIFIED","description":"Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks.","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string"}},"type":"object","title":"blockexplorerapiv1Transaction"},"title":"Transaction corresponding to the specific request and filters","type":"array"}},"type":"object","title":"v1ListTransactionsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"List transactions from the Vega blockchain from the newest to the oldest transactions.","operationId":"BlockExplorer_ListTransactions","method":"get","path":"/transactions","servers":[{"url":"https://be.testnet.vega.xyz/rest","description":"Block Explorer"}],"info":{"title":"Vega block explorer APIs","version":"v0.74.0-preview.6"},"postman":{"name":"List transactions","description":{"content":"List transactions from the Vega blockchain from the newest to the oldest transactions.","type":"text/plain"},"url":{"path":["transactions"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"description":{"content":"Cursor to paginate the request. It can be used in conjunction with the `after` cursor.","type":"text/plain"},"key":"before","value":""},{"disabled":false,"description":{"content":"Cursor to paginate the request. It can be used in conjunction with the `before` cursor.","type":"text/plain"},"key":"after","value":""},{"disabled":false,"description":{"content":"Transaction command types filter, for listing transactions with specified command types.","type":"text/plain"},"key":"cmdTypes","value":""},{"disabled":false,"description":{"content":"Transaction command types exclusion filter, for listing all the transactions except the ones with specified command types.","type":"text/plain"},"key":"excludeCmdTypes","value":""},{"disabled":false,"description":{"content":"Party IDs filter, can be sender or receiver.","type":"text/plain"},"key":"parties","value":""},{"disabled":false,"description":{"content":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `after` cursor to paginate forwards. Paginating forwards means toward the most recent\ntransactions.\nIt cannot be used in conjunction with the `before` cursor.\nOn its own, this will return the `first` most recent transactions.","type":"text/plain"},"key":"first","value":""},{"disabled":false,"description":{"content":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `before` cursor to paginate backwards. Paginating forwards means toward the least recent\ntransactions.\nIt cannot be used in conjunction with the `after` cursor.\nOn its own, this will return the `last` oldest transactions.","type":"text/plain"},"key":"last","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/explorer/vega-block-explorer-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'List transactions' (block-explorer-list-transactions)" @@ -24,9 +24,9 @@ import TabItem from "@theme/TabItem"; -List transactions from the Vega blockchain +List transactions from the Vega blockchain from the newest to the oldest transactions. -
    Query Parameters
    +
    Query Parameters
    A successful response. @@ -59,7 +59,7 @@ Command to submit a batch of order instructions. List of order amendments to be processed sequentially. -
  • Array [
  • ]
  • cancellations object[]
    +
  • Array [
  • ]
  • cancellations object[]
    List of order cancellations to be processed sequentially. @@ -87,7 +87,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -103,7 +103,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • submissions object[]
    +
    sizeOverrideValue object
  • ]
  • submissions object[]
    List of order submissions to be processed sequentially. @@ -115,192 +115,149 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
  • ]
  • cancelTransfer object
    +
  • ]
  • updateMarginMode object[]
  • Array [
  • ]
  • batchProposalSubmission object
    -Command to cancel a recurring transfer. - -
    chainEvent object
    - -Validator command sent automatically to notify the Vega chain of an off-chain event. - -
    builtin object
    - -Built-in asset event. - -
    deposit object
    - -Built-in asset deposit. - -
    withdrawal object
    - -Built-in asset withdrawal. - -
    contractCall object
    - -Ethereum contract call event. - -
    erc20 object
    - -Ethereum ERC20 event. - -
    assetDelist object
    - -De-list an ERC20 asset. - -
    assetLimitsUpdated object
    - -Update an ERC20 asset. +Command to submit a batch governance proposal. -
    assetList object
    - -List an ERC20 asset. - -
    deposit object
    - -Deposit ERC20 asset. - -
    withdrawal object
    - -Withdraw ERC20 asset. - -
    erc20Multisig object
    - -Ethereum ERC20 multisig event. - -
    signerAdded object
    signerRemoved object
    thresholdSet object
    stakingEvent object
    - -Ethereum Staking event. - -
    stakeDeposited object
    stakeRemoved object
    totalSupply object
    createReferralSet object
    - -Command to create a referral set. - -
    team object
    - -Team details, if the referral set is to be considered a team. - -
    delegateSubmission object
    +
    rationale object
    -Command to delegate tokens to a validator. +Rationale behind a proposal. -
    ethereumKeyRotateSubmission object
    +
    terms object
    -Validator command sent manually by a node operator to rotate their node's Ethereum keys. +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. -
    ethereumSignature object
    +
    changes object[]
    -Signature signed by the new Ethereum key that can be verified to prove ownership. +List of individual changes included in the batch proposal. -
    issueSignatures object
    +
  • Array [
  • cancelTransfer object
    -Command to request signatures to amend the multisig-control contract. +Proposal change to cancel a governance initiated transfe. -
    keyRotateSubmission object
    +
    changes object
    newMarket object
    -Validator command sent manually by a node operator to rotate their node's Vega keys. +Proposal change for creating new futures market. -
    liquidityProvisionAmendment object
    +
    changes object
    -Command to amend a liquidity commitment. +Configuration of the new market. -
    liquidityProvisionCancellation object
    +
    instrument object
    -Command to cancel a liquidity commitment. +New futures market instrument configuration. -
    liquidityProvisionSubmission object
    +
    future object
    -Command to submit a liquidity commitment. +Future. -
    nodeSignature object
    +
    dataSourceSpecBinding object
    -Validator command sent automatically to provide signatures for the Ethereum bridge. +Binding between the data source spec and the settlement data. -
    nodeVote object
    +
    dataSourceSpecForSettlementData object
    -Validator command sent automatically to vote on that validity of an external resource. +Data source spec describing the data source for settlement. -
    oracleDataSubmission object
    +
    external object
    -Command to submit external oracle data. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    orderAmendment object
    +
    ethOracle object
    -A command that allows a party to update the details of an existing order. -Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. -It is not possible to change an order's type through this command. +Contains the data specification that is received from Ethereum sources. -
    orderCancellation object
    +
    filters object[]
  • Array [
  • conditions object[]
    -A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. -It is not possible to cancel another party's order with this command. +Conditions that should be matched by the data to be +considered of interest. -
    orderSubmission object
    +
  • Array [
  • ]
  • key object
    -A command that submits an order to the Vega network for a given market. +Data source's data property key targeted by the filter. -
    icebergOpts object
    +
  • ]
  • normalisers object[]
    -Iceberg order details. If set, the order will exist on the order book in chunks. +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. -
    peggedOrder object
    +
  • Array [
  • ]
  • trigger object
    -Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. +Conditions for determining when to call the contract method. -
    proposalSubmission object
    +
    timeTrigger object
    -Command to submit a governance proposal. +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. -
    rationale object
    +
    oracle object
    -Rationale behind a proposal. +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. -
    terms object
    +
    filters object[]
    -Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. +Filters describes which source data are considered of interest or not for +the product (or the risk model). -
    cancelTransfer object
    +
  • Array [
  • conditions object[]
    -Cancel a governance transfer. +Conditions that should be matched by the data to be +considered of interest. -
    changes object
    newAsset object
    +
  • Array [
  • ]
  • key object
    -Proposal change for creating new assets on Vega. +Data source's data property key targeted by the filter. -
    changes object
    +
  • ]
  • signers object[]
    -Configuration of the new asset. +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. -
    builtinAsset object
    +
  • Array [
  • ethAddress object
    -Vega built-in asset. +In case of an open oracle - Ethereum address will be submitted. -
    erc20 object
    +
    pubKey object
    -Ethereum ERC20 asset. +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. -
    newMarket object
    +
  • ]
  • internal object
    -Proposal change for creating new futures market on Vega. +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. -
    changes object
    +
    time object
    -Configuration of the new market. +Internal data source used for emitting timestamps. -
    instrument object
    +
    conditions object[]
    -New futures market instrument configuration. +Conditions that the timestamps should meet in order to be considered. -
    future object
    +
  • Array [
  • ]
  • timeTrigger object
    -Future. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    dataSourceSpecBinding object
    +
    conditions object[]
    -Binding between the data source spec and the settlement data. +Conditions that the timestamps need to meet in order to be considered. -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement. +The external data source spec describing the data source of trading termination.
    external object
    @@ -331,7 +288,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -398,9 +355,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -The external data source spec describing the data source of trading termination. +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement.
    external object
    @@ -431,7 +396,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -498,17 +463,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -539,7 +496,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -606,11 +563,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Data source spec describing the data source for settlement schedule. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -639,7 +600,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -706,11 +667,19 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. -
    liquidityMonitoringParameters object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -726,41 +695,2434 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    -Price monitoring parameters. +Mark price configuration. -
    triggers object[]
  • Array [
  • ]
  • simple object
    +
    dataSourcesSpec object[]
    -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. +Additional price sources to be used for index price calculation. -
    successor object
    +
  • Array [
  • external object
    -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. -
    newSpotMarket object
    +
    ethOracle object
    -Proposal change for creating new spot market on Vega. +Contains the data specification that is received from Ethereum sources. -
    changes object
    +
    filters object[]
  • Array [
  • conditions object[]
    -Configuration of the new spot market. +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • cancelTransfer object
    + +Command to cancel a recurring transfer. + +
    chainEvent object
    + +Validator command sent automatically to notify the Vega chain of an off-chain event. + +
    builtin object
    + +Built-in asset event. + +
    deposit object
    + +Built-in asset deposit. + +
    withdrawal object
    + +Built-in asset withdrawal. + +
    contractCall object
    + +Ethereum contract call event. + +
    erc20 object
    + +Ethereum ERC20 event. + +
    assetDelist object
    + +De-list an ERC20 asset. + +
    assetLimitsUpdated object
    + +Update an ERC20 asset. + +
    assetList object
    + +List an ERC20 asset. + +
    deposit object
    + +Deposit ERC20 asset. + +
    withdrawal object
    + +Withdraw ERC20 asset. + +
    erc20Multisig object
    + +Ethereum ERC20 multisig event. + +
    signerAdded object
    signerRemoved object
    thresholdSet object
    stakingEvent object
    + +Ethereum Staking event. + +
    stakeDeposited object
    stakeRemoved object
    totalSupply object
    createReferralSet object
    + +Command to create a referral set. + +
    team object
    + +Team details, if the referral set is to be considered a team. + +
    delegateSubmission object
    + +Command to delegate tokens to a validator. + +
    ethereumKeyRotateSubmission object
    + +Validator command sent manually by a node operator to rotate their node's Ethereum keys. + +
    ethereumSignature object
    + +Signature signed by the new Ethereum key that can be verified to prove ownership. + +
    issueSignatures object
    + +Command to request signatures to amend the multisig-control contract. + +
    joinTeam object
    + +Command to join a team. + +
    keyRotateSubmission object
    + +Validator command sent manually by a node operator to rotate their node's Vega keys. + +
    liquidityProvisionAmendment object
    + +Command to amend a liquidity commitment. + +
    liquidityProvisionCancellation object
    + +Command to cancel a liquidity commitment. + +
    liquidityProvisionSubmission object
    + +Command to submit a liquidity commitment. + +
    nodeSignature object
    + +Validator command sent automatically to provide signatures for the Ethereum bridge. + +
    nodeVote object
    + +Validator command sent automatically to vote on that validity of an external resource. + +
    oracleDataSubmission object
    + +Command to submit external oracle data. + +
    orderAmendment object
    + +A command that allows a party to update the details of an existing order. +Any field that is left unset or as a default value indicates that this field on the original order will be left unchanged. +It is not possible to change an order's type through this command. + +
    orderCancellation object
    + +A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction. +It is not possible to cancel another party's order with this command. + +
    orderSubmission object
    + +A command that submits an order to the Vega network for a given market. + +
    icebergOpts object
    + +Iceberg order details. If set, the order will exist on the order book in chunks. + +
    peggedOrder object
    + +Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. + +
    proposalSubmission object
    + +Command to submit a governance proposal. + +
    rationale object
    + +Rationale behind a proposal. + +
    terms object
    + +Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +The external data source spec describing the data source of trading termination. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Data source spec describing the data source for settlement schedule. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. -
    instrument object
    +
    conditions object[]
    -New spot market instrument configuration. +Conditions that the timestamps should meet in order to be considered. -
    future object
    +
  • Array [
  • ]
  • timeTrigger object
    -Future. +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. -
    dataSourceSpecBinding object
    +
    conditions object[]
    -Binding between the data source spec and the settlement data. +Conditions that the timestamps need to meet in order to be considered. -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -Data source spec describing the data source for settlement. +The external data source spec describing the data source of trading termination.
    external object
    @@ -791,7 +3153,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -858,9 +3220,17 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -The external data source spec describing the data source of trading termination. +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Data source spec describing the data source for settlement.
    external object
    @@ -891,7 +3261,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -958,17 +3328,9 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    - -Binding between the data source spec and the settlement data. - -
    dataSourceSpecForSettlementData object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement. +Data source spec describing the data source for settlement schedule.
    external object
    @@ -999,7 +3361,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1066,11 +3428,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Data source spec describing the data source for settlement schedule. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    external object
    +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1099,7 +3465,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1166,11 +3532,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1202,7 +3572,7 @@ Proposal change for a governance transfer. Configuration for a new transfer. -
    oneOff object
    recurring object
    dispatchStrategy object
    +
    oneOff object
    recurring object
    dispatchStrategy object
    Optional parameter defining how a transfer is dispatched. @@ -1210,7 +3580,7 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • updateAsset object
    +
  • Array [
  • ]
  • updateAsset object
    Proposal change for updating an asset. @@ -1244,7 +3614,9 @@ The binding between the data source spec and the settlement data.
    dataSourceSpecForSettlementData object
    -The data source spec describing the data of settlement data. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1275,7 +3647,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1344,7 +3716,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    -The data source spec describing the data source for trading termination. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1375,7 +3749,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1442,7 +3816,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    Perpetual. @@ -1450,9 +3824,11 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    -Data source spec describing the data source for settlement. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1483,7 +3859,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1552,7 +3928,9 @@ Conditions that the timestamps need to meet in order to be considered.
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    -Data source spec describing the data source for settlement schedule. +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below.
    external object
    @@ -1583,7 +3961,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1650,7 +4132,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -1666,7 +4156,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -1714,7 +4308,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1792,7 +4390,7 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    risesAbove object
    +
    sizeOverrideValue object
    risesAbove object
    Stop order that will be triggered if the price rises above a given trigger price. @@ -1808,11 +4406,11 @@ Iceberg order details. If set, the order will exist on the order book in chunks. Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times. -
    transfer object
    +
    sizeOverrideValue object
    transfer object
    Command to submit a transfer. -
    oneOff object
    +
    oneOff object
    Details of a one-off transfer that is executed once at a specified time. @@ -1828,11 +4426,24 @@ Optional parameter defining how a transfer is dispatched. Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. -
  • Array [
  • ]
  • undelegateSubmission object
    +
  • Array [
  • ]
  • undelegateSubmission object
    Command to remove tokens delegated to a validator. -
    updateReferralSet object
    +
    updateMarginMode object
    + +Command to update the margin mode of a party in a market. + +
    updatePartyProfile object
    + +Command to update a party's profile. + +
    metadata object[]
    + +Freeform data to associate to the party. +Support a maximum of 10 entries. + +
  • Array [
  • ]
  • updateReferralSet object
    Command to update a referral set. @@ -1840,7 +4451,7 @@ Command to update a referral set. Team details, if the referral set is to be considered a team. -
    validatorHeartbeat object
    +
    validatorHeartbeat object
    Validator command sent automatically to signal regular participation in the network. @@ -1876,7 +4487,7 @@ Components needed for the network to verify proof-of-work. Signature definition that allows the network to authenticate external data. -
  • ]
  • +
  • ]
  • An unexpected error response. diff --git a/docs/api/rest/state/core-state-service-list-accounts.api.mdx b/docs/api/rest/state/core-state-service-list-accounts.api.mdx index c1df2fe96..087d82932 100644 --- a/docs/api/rest/state/core-state-service-list-accounts.api.mdx +++ b/docs/api/rest/state/core-state-service-list-accounts.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-accounts title: "Accounts list" -description: "Get a list of accounts" +description: "Get a list of accounts. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Accounts list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}},{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"accounts":{"items":{"properties":{"asset":{"type":"string"},"balance":{"type":"string"},"market":{"type":"string"},"party":{"type":"string"},"type":{"type":"string"}},"type":"object","title":"apiv1Account"},"type":"array"}},"type":"object","title":"v1ListAccountsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of accounts","operationId":"CoreStateService_ListAccounts","method":"get","path":"/accounts","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Accounts list","description":{"content":"Get a list of accounts","type":"text/plain"},"url":{"path":["accounts"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"party","value":""},{"disabled":false,"key":"market","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}},{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"accounts":{"items":{"properties":{"asset":{"type":"string"},"balance":{"type":"string"},"market":{"type":"string"},"party":{"type":"string"},"type":{"type":"string"}},"type":"object","title":"apiv1Account"},"type":"array"}},"type":"object","title":"v1ListAccountsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of accounts. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListAccounts","method":"get","path":"/accounts","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Accounts list","description":{"content":"Get a list of accounts. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["accounts"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"party","value":""},{"disabled":false,"key":"market","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Accounts list' (core-state-service-list-accounts)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of accounts +Get a list of accounts. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    diff --git a/docs/api/rest/state/core-state-service-list-assets.api.mdx b/docs/api/rest/state/core-state-service-list-assets.api.mdx index 08ec2e1cd..fa7b10bf4 100644 --- a/docs/api/rest/state/core-state-service-list-assets.api.mdx +++ b/docs/api/rest/state/core-state-service-list-assets.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-assets title: "Assets list" -description: "Get a list of assets" +description: "Get a list of assets. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Assets list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"asset","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assets":{"items":{"properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"type":"array"}},"type":"object","title":"v1ListAssetsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of assets","operationId":"CoreStateService_ListAssets","method":"get","path":"/assets","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Assets list","description":{"content":"Get a list of assets","type":"text/plain"},"url":{"path":["assets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"asset","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"asset","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"assets":{"items":{"properties":{"details":{"description":"Definition of the external source for this asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"description":"Status of the asset.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"type":"array"}},"type":"object","title":"v1ListAssetsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of assets. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListAssets","method":"get","path":"/assets","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Assets list","description":{"content":"Get a list of assets. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["assets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"asset","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Assets list' (core-state-service-list-assets)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of assets +Get a list of assets. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    diff --git a/docs/api/rest/state/core-state-service-list-delegations.api.mdx b/docs/api/rest/state/core-state-service-list-delegations.api.mdx index e05c2e5da..0b99842de 100644 --- a/docs/api/rest/state/core-state-service-list-delegations.api.mdx +++ b/docs/api/rest/state/core-state-service-list-delegations.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-delegations title: "Delegations list" -description: "Get a list of delegations" +description: "Get a list of delegations. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Delegations list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}},{"in":"query","name":"node","required":false,"schema":{"type":"string"}},{"in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"delegations":{"items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"}},"type":"object","title":"v1ListDelegationsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of delegations","operationId":"CoreStateService_ListDelegations","method":"get","path":"/delegations","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Delegations list","description":{"content":"Get a list of delegations","type":"text/plain"},"url":{"path":["delegations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"party","value":""},{"disabled":false,"key":"node","value":""},{"disabled":false,"key":"epochSeq","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}},{"in":"query","name":"node","required":false,"schema":{"type":"string"}},{"in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"delegations":{"items":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object","title":"vegaDelegation"},"type":"array"}},"type":"object","title":"v1ListDelegationsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of delegations. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListDelegations","method":"get","path":"/delegations","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Delegations list","description":{"content":"Get a list of delegations. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["delegations"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"party","value":""},{"disabled":false,"key":"node","value":""},{"disabled":false,"key":"epochSeq","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Delegations list' (core-state-service-list-delegations)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of delegations +Get a list of delegations. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    diff --git a/docs/api/rest/state/core-state-service-list-markets-data.api.mdx b/docs/api/rest/state/core-state-service-list-markets-data.api.mdx index 95ff1321d..46b1d2f0c 100644 --- a/docs/api/rest/state/core-state-service-list-markets-data.api.mdx +++ b/docs/api/rest/state/core-state-service-list-markets-data.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-markets-data title: "Markets data list" -description: "Get a list of markets data" +description: "Get a list of markets' data. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Markets data list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketsData":{"items":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"type":"array"}},"type":"object","title":"v1ListMarketsDataResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of markets data","operationId":"CoreStateService_ListMarketsData","method":"get","path":"/markets/data","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Markets data list","description":{"content":"Get a list of markets data","type":"text/plain"},"url":{"path":["markets","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"market","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"marketsData":{"items":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"description":"When a market auction is extended, this field indicates what caused the extension.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"description":"The method used for calculating the mark price.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"marketTradingMode":{"description":"Current trading mode for the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"type":"array"},"productData":{"description":"Data related to the particular product type of the market.","properties":{"perpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"description":"The method used for calculating the index price (perps only).","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object","title":"vegaPerpetualData"}},"type":"object","title":"vegaProductData"},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","default":"AUCTION_TRIGGER_UNSPECIFIED","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"}},"title":"Represents data generated by a market when open","type":"object"},"type":"array"}},"type":"object","title":"v1ListMarketsDataResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of markets' data. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListMarketsData","method":"get","path":"/markets/data","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Markets data list","description":{"content":"Get a list of markets' data. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["markets","data"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"market","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Markets data list' (core-state-service-list-markets-data)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of markets data +Get a list of markets' data. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    @@ -38,7 +38,7 @@ Equity like share of liquidity fee for each liquidity provider. SLA performance for each liquidity provider. -
  • Array [
  • ]
  • priceMonitoringBounds object[]
    +
  • Array [
  • ]
  • priceMonitoringBounds object[]
    One or more price monitoring bounds for the current timestamp. @@ -54,7 +54,7 @@ Data related to the particular product type of the market. Represents market data specific to a perpetual market. -
  • ]
  • +
  • ]
  • An unexpected error response. diff --git a/docs/api/rest/state/core-state-service-list-markets.api.mdx b/docs/api/rest/state/core-state-service-list-markets.api.mdx index db54040c9..43aba8969 100644 --- a/docs/api/rest/state/core-state-service-list-markets.api.mdx +++ b/docs/api/rest/state/core-state-service-list-markets.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-markets title: "Markets list" -description: "Get a list of markets" +description: "Get a list of markets. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Markets list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"markets":{"items":{"properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"},"type":"array"}},"type":"object","title":"v1ListMarketsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of markets","operationId":"CoreStateService_ListMarkets","method":"get","path":"/markets","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Markets list","description":{"content":"Get a list of markets","type":"text/plain"},"url":{"path":["markets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"market","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"markets":{"items":{"properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"description":"Fees configuration that apply to the market.","properties":{"factors":{"description":"Fee factors.","properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"liquidityFeeSettings":{"description":"Liquidity fee settings for the market describing how the fee was calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"}},"title":"Fees definition","type":"object"},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy used by this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityMonitoringParameters":{"description":"LiquidityMonitoringParameters for the market.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParams":{"description":"Liquidity SLA parameters for the market.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price calculation configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"marketTimestamps":{"description":"Timestamps for when the market state changes.","properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"openingAuction":{"description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"description":"PriceMonitoringSettings for the market.","properties":{"parameters":{"description":"Specifies price monitoring parameters to be used for price monitoring purposes.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"description":"Current state of the market.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"description":"Tradable instrument configuration.","properties":{"instrument":{"description":"Details for the underlying instrument.","properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data spec and the data source.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Data source specification that describes the settlement data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForTradingTermination":{"description":"Data source specification that describes the trading termination data source filter.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"description":"Collection of instrument meta-data.","properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Data source spec describing the data source for settlement.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"dataSourceSpecForSettlementSchedule":{"description":"Data source spec describing the data source for settlement schedule.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"title":"Status describes the status of the data source spec","default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"type":"string"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object","title":"vegaDataSourceSpec"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"description":"Optional configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"}},"title":"Instrument definition","type":"object"},"logNormalRiskModel":{"description":"Log normal.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"marginCalculator":{"description":"Margin calculator for the instrument.","properties":{"scalingFactors":{"description":"Scaling factors for margin calculation.","properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"}},"title":"Margin Calculator definition","type":"object"},"simpleRiskModel":{"description":"Simple.","properties":{"params":{"description":"Risk model params for simple modelling.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Risk model for simple modelling","type":"object"}},"title":"Tradable Instrument definition","type":"object"},"tradingMode":{"description":"Current mode of execution of the market.","default":"TRADING_MODE_UNSPECIFIED","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"}},"title":"Market definition","type":"object"},"type":"array"}},"type":"object","title":"v1ListMarketsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of markets. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListMarkets","method":"get","path":"/markets","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Markets list","description":{"content":"Get a list of markets. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["markets"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"market","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Markets list' (core-state-service-list-markets)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of markets +Get a list of markets. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    @@ -38,7 +38,15 @@ Fees configuration that apply to the market. Fee factors. -
    liquidityMonitoringParameters object
    +
    liquidityFeeSettings object
    + +Liquidity fee settings for the market describing how the fee was calculated. + +
    liquidationStrategy object
    + +Liquidation strategy used by this market. + +
    liquidityMonitoringParameters object
    LiquidityMonitoringParameters for the market. @@ -50,7 +58,111 @@ Specifies parameters related to target stake calculation. Liquidity SLA parameters for the market. -
    marketTimestamps object
    +
    markPriceConfiguration object
    + +Mark price calculation configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • marketTimestamps object
    Timestamps for when the market state changes. @@ -122,7 +234,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -228,7 +340,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -307,7 +419,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Data source spec describing the data source for settlement. @@ -346,7 +458,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -452,7 +564,111 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfig object
    + +Optional configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -519,7 +735,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    Spot. @@ -547,7 +763,7 @@ Simple. Risk model params for simple modelling. -
  • ]
  • +
  • ]
  • An unexpected error response. diff --git a/docs/api/rest/state/core-state-service-list-network-limits.api.mdx b/docs/api/rest/state/core-state-service-list-network-limits.api.mdx index be3e66401..d8aa88014 100644 --- a/docs/api/rest/state/core-state-service-list-network-limits.api.mdx +++ b/docs/api/rest/state/core-state-service-list-network-limits.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-network-limits title: "Network limits list" -description: "Get a list of network limits" +description: "Get a list of network limits. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Network limits list" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkLimits":{"properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"title":"Network limits, defined in the genesis file","type":"object"}},"type":"object","title":"v1ListNetworkLimitsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of network limits","operationId":"CoreStateService_ListNetworkLimits","method":"get","path":"/network/limits","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Network limits list","description":{"content":"Get a list of network limits","type":"text/plain"},"url":{"path":["network","limits"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkLimits":{"properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"title":"Network limits, defined in the genesis file","type":"object"}},"type":"object","title":"v1ListNetworkLimitsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of network limits. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListNetworkLimits","method":"get","path":"/network/limits","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Network limits list","description":{"content":"Get a list of network limits. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["network","limits"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Network limits list' (core-state-service-list-network-limits)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of network limits +Get a list of network limits. This endpoint may not be exposed by mainnet nodes.
    diff --git a/docs/api/rest/state/core-state-service-list-network-parameters.api.mdx b/docs/api/rest/state/core-state-service-list-network-parameters.api.mdx index 3e08ebb44..22f9eb5e7 100644 --- a/docs/api/rest/state/core-state-service-list-network-parameters.api.mdx +++ b/docs/api/rest/state/core-state-service-list-network-parameters.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-network-parameters title: "Network parameters list" -description: "Get a list of network parameters" +description: "Get a list of network parameters. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Network parameters list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"networkParameterKey","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkParameters":{"items":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"},"type":"array"}},"type":"object","title":"v1ListNetworkParametersResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of network parameters","operationId":"CoreStateService_ListNetworkParameters","method":"get","path":"/network/parameters","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Network parameters list","description":{"content":"Get a list of network parameters","type":"text/plain"},"url":{"path":["network","parameters"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"networkParameterKey","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"networkParameterKey","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"networkParameters":{"items":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"},"type":"array"}},"type":"object","title":"v1ListNetworkParametersResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of network parameters. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListNetworkParameters","method":"get","path":"/network/parameters","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Network parameters list","description":{"content":"Get a list of network parameters. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["network","parameters"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"networkParameterKey","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Network parameters list' (core-state-service-list-network-parameters)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of network parameters +Get a list of network parameters. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    diff --git a/docs/api/rest/state/core-state-service-list-parties-stake.api.mdx b/docs/api/rest/state/core-state-service-list-parties-stake.api.mdx index ad6043f3c..98947ee91 100644 --- a/docs/api/rest/state/core-state-service-list-parties-stake.api.mdx +++ b/docs/api/rest/state/core-state-service-list-parties-stake.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-parties-stake title: "Parties stake list" -description: "Get a list of parties stake" +description: "Get a list of parties' stake. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Parties stake list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"partiesStake":{"items":{"properties":{"currentStakeAvailable":{"type":"string"},"party":{"type":"string"},"stakeLinkings":{"items":{"properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"title":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","type":"object"},"type":"array"}},"type":"object","title":"v1PartyStake"},"type":"array"}},"type":"object","title":"v1ListPartiesStakeResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of parties stake","operationId":"CoreStateService_ListPartiesStake","method":"get","path":"/parties/stake","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Parties stake list","description":{"content":"Get a list of parties stake","type":"text/plain"},"url":{"path":["parties","stake"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"party","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"partiesStake":{"items":{"properties":{"currentStakeAvailable":{"type":"string"},"party":{"type":"string"},"stakeLinkings":{"items":{"properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"description":"Status of the event.","default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"description":"Stake linking event type.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"}},"title":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","type":"object"},"type":"array"}},"type":"object","title":"v1PartyStake"},"type":"array"}},"type":"object","title":"v1ListPartiesStakeResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of parties' stake. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListPartiesStake","method":"get","path":"/parties/stake","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Parties stake list","description":{"content":"Get a list of parties' stake. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["parties","stake"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"party","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Parties stake list' (core-state-service-list-parties-stake)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of parties stake +Get a list of parties' stake. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    diff --git a/docs/api/rest/state/core-state-service-list-parties.api.mdx b/docs/api/rest/state/core-state-service-list-parties.api.mdx index 509a65886..dfae169f0 100644 --- a/docs/api/rest/state/core-state-service-list-parties.api.mdx +++ b/docs/api/rest/state/core-state-service-list-parties.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-parties title: "Parties list" -description: "Get a list of parties" +description: "Get a list of parties. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Parties list" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"parties":{"items":{"properties":{"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"},"type":"array"}},"type":"object","title":"v1ListPartiesResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of parties","operationId":"CoreStateService_ListParties","method":"get","path":"/parties","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Parties list","description":{"content":"Get a list of parties","type":"text/plain"},"url":{"path":["parties"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"parties":{"items":{"properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object","title":"vegaMetadata"},"type":"array"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"},"type":"array"}},"type":"object","title":"v1ListPartiesResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of parties. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListParties","method":"get","path":"/parties","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Parties list","description":{"content":"Get a list of parties. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["parties"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Parties list' (core-state-service-list-parties)" @@ -24,13 +24,18 @@ import TabItem from "@theme/TabItem"; -Get a list of parties +Get a list of parties. This endpoint may not be exposed by mainnet nodes.
    A successful response. -
    Schema
      parties object[]
    • Array [
    • ]
    +
    Schema
      parties object[]
    • Array [
    • metadata object[]
      + +Metadata to associate to a party, in a key/value format where the key +describes the type of metadata in the value field. + +
    • Array [
    • ]
    • ]
    An unexpected error response. diff --git a/docs/api/rest/state/core-state-service-list-proposals.api.mdx b/docs/api/rest/state/core-state-service-list-proposals.api.mdx index 5bd7204d5..09ffa59e1 100644 --- a/docs/api/rest/state/core-state-service-list-proposals.api.mdx +++ b/docs/api/rest/state/core-state-service-list-proposals.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-proposals title: "Proposals list" -description: "Get a list of proposals" +description: "Get a list of proposals. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Proposals list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"proposal","required":false,"schema":{"type":"string"}},{"in":"query","name":"proposer","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"proposals":{"items":{"properties":{"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the perpetual market will use the value of\nthis property as settlement data.","type":"string"}},"title":"Describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object","description":"The network parameter to update."}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"type":"array"}},"type":"object","title":"v1ListProposalsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of proposals","operationId":"CoreStateService_ListProposals","method":"get","path":"/proposals","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Proposals list","description":{"content":"Get a list of proposals","type":"text/plain"},"url":{"path":["proposals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"proposal","value":""},{"disabled":false,"key":"proposer","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"proposal","required":false,"schema":{"type":"string"}},{"in":"query","name":"proposer","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"proposals":{"items":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"description":"Batch proposal terms.","properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"properties":{"cancelTransfer":{"description":"Proposal change to cancel a governance initiated transfe.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance initiated transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object","description":"The network parameter to update."}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"}},"title":"Terms change for a batch governance proposal","type":"object"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"description":"Specific parameters defining the proposal's characteristics used for validation.","properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object","title":"vegaProposalParameters"}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object","title":"vegaProposalRationale"},"reason":{"description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","default":"PROPOSAL_ERROR_UNSPECIFIED","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"terms":{"description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","properties":{"cancelTransfer":{"description":"Cancel a governance transfer.","properties":{"changes":{"title":"Configuration for cancellation of a governance-initiated transfer","properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"}},"type":"object","title":"vegaCancelTransfer"},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"description":"Proposal change for creating new assets on Vega.","properties":{"changes":{"description":"Configuration of the new asset.","properties":{"builtinAsset":{"description":"Vega built-in asset.","properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"description":"Ethereum ERC20 asset.","properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"}},"title":"New asset on Vega","type":"object"},"newFreeform":{"description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","type":"object","title":"vegaNewFreeform"},"newMarket":{"description":"Proposal change for creating new futures market on Vega.","properties":{"changes":{"description":"Configuration of the new market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"description":"Liquidation strategy for this market.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object","title":"vegaLiquidationStrategy"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"successor":{"description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object","title":"vegaSuccessorConfiguration"}},"title":"Configuration for a new futures market on Vega","type":"object"}},"title":"New market on Vega","type":"object"},"newSpotMarket":{"description":"Proposal change for creating new spot market on Vega.","properties":{"changes":{"description":"Configuration of the new spot market.","properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"description":"New spot market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"spot":{"description":"Spot.","properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration for a new spot market on Vega","type":"object"}},"title":"New spot market on Vega","type":"object"},"newTransfer":{"description":"Proposal change for a governance transfer.","properties":{"changes":{"description":"Configuration for a new transfer.","properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"recurring":{"properties":{"dispatchStrategy":{"description":"Optional parameter defining how a transfer is dispatched.","properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"title":"Controls how the reward is distributed between qualifying parties","default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"entityScope":{"description":"Mandatory enum that defines the entities within scope.","default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"individualScope":{"description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","default":"INDIVIDUAL_SCOPE_UNSPECIFIED","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string","title":"vegaIndividualScope"},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"description":"Metric to apply.","default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object","title":"vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object","title":"vegaDispatchStrategy"},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"title":"Source account type, such as network treasury, market insurance pool","default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"transferType":{"title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"}},"type":"object","title":"vegaNewTransferConfiguration"}},"title":"New governance transfer","type":"object"},"updateAsset":{"description":"Proposal change for updating an asset.","properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"description":"Ethereum ERC20 asset update.","properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object","title":"vegaERC20Update"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object","title":"vegaAssetDetailsUpdate"}},"title":"Update an existing asset on Vega","type":"object"},"updateMarket":{"description":"Proposal change for modifying an existing futures market on Vega.","properties":{"changes":{"description":"Updated configuration of the futures market.","properties":{"instrument":{"description":"Updated futures market instrument configuration.","properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"description":"Future.","properties":{"dataSourceSpecBinding":{"description":"The binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForTradingTermination":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"name":{"title":"Instrument name","type":"string"},"perpetual":{"description":"Perpetual.","properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"description":"Binding between the data source spec and the settlement data.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object","title":"vegaDataSourceSpecToPerpetualBinding"},"dataSourceSpecForSettlementData":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"dataSourceSpecForSettlementSchedule":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"description":"Configuration for the index price used in funding payment calculation.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"}},"title":"Instrument configuration","type":"object"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"title":"Liquidation strategy parameters","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"liquidityMonitoringParameters":{"description":"Liquidity monitoring parameters.","properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"liquiditySlaParameters":{"title":"Liquidity SLA parameters","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"description":"Mark price configuration.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"description":"Which method is used for the calculation of the composite price for the market.","default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string","title":"vegaCompositePriceType"},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"description":"Contains the data specification that is received from Ethereum sources.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object","title":"vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"description":"Conditions for determining when to call the contract method.","properties":{"timeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object","title":"vegaEthTimeTrigger"}},"type":"object","title":"vegaEthCallTrigger"}},"type":"object","title":"vegaEthCallSpec"},"oracle":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"key":{"description":"Data source's data property key targeted by the filter.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"description":"Data type of the property.","default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string","title":"v1PropertyKeyType"}},"type":"object","title":"v1PropertyKey"}},"type":"object","title":"v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"properties":{"ethAddress":{"description":"In case of an open oracle - Ethereum address will be submitted.","properties":{"address":{"type":"string"}},"type":"object","title":"v1ETHAddress"},"pubKey":{"description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","properties":{"key":{"type":"string"}},"type":"object","title":"v1PubKey"}},"type":"object","title":"v1Signer"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfiguration"}},"type":"object","title":"vegaDataSourceDefinitionExternal"},"internal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"properties":{"operator":{"description":"Type of comparison to make on the value.","default":"OPERATOR_UNSPECIFIED","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string","title":"ConditionOperator"},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"type":"array"},"triggers":{"items":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object","title":"v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object","title":"vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object","title":"vegaDataSourceDefinitionInternal"}},"type":"object","title":"vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object","title":"vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object","title":"vegaCompositePriceConfiguration"},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"}},"title":"Configuration to update a futures market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"updateMarketState":{"description":"Proposal change for updating the state of a market.","properties":{"changes":{"title":"Configuration for governance-initiated change of a market's state","properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"title":"Type of the market update","default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateMarketState"},"updateNetworkParameter":{"description":"Proposal change for updating Vega network parameters.","properties":{"changes":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object","description":"The network parameter to update."}},"title":"Update network configuration on Vega","type":"object"},"updateReferralProgram":{"description":"Proposal change for updating the referral program.","properties":{"changes":{"description":"Configuration for change to update a referral program.","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object","title":"vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object","title":"vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object","title":"vegaReferralProgramChanges"}},"type":"object","title":"vegaUpdateReferralProgram"},"updateSpotMarket":{"description":"Proposal change for modifying an existing spot market on Vega.","properties":{"changes":{"description":"Updated configuration of the spot market.","properties":{"liquidityFeeSettings":{"description":"Specifies how the liquidity fee for the market will be calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"description":"Method used to calculate the market's liquidity fee.","default":"METHOD_UNSPECIFIED","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string","title":"vegaLiquidityFeeSettingsMethod"}},"type":"object","title":"vegaLiquidityFeeSettings"},"logNormal":{"description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","properties":{"params":{"description":"Risk model parameters for log normal.","properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"description":"Price monitoring parameters.","properties":{"triggers":{"items":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"simple":{"description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"slaParams":{"description":"Specifies the liquidity provision SLA parameters.","properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object","title":"vegaLiquiditySLAParameters"},"targetStakeParameters":{"description":"Specifies parameters related to target stake calculation.","properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"}},"title":"Configuration to update a spot market on Vega","type":"object"},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"updateVolumeDiscountProgram":{"description":"Proposal change for updating the volume discount program.","properties":{"changes":{"title":"Configuration for a change to update a volume discount program","properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object","title":"vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"}},"type":"object","title":"vegaUpdateVolumeDiscountProgram"},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"type":"array"}},"type":"object","title":"v1ListProposalsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of proposals. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListProposals","method":"get","path":"/proposals","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Proposals list","description":{"content":"Get a list of proposals. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["proposals"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"proposal","value":""},{"disabled":false,"key":"proposer","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Proposals list' (core-state-service-list-proposals)" @@ -24,43 +24,27 @@ import TabItem from "@theme/TabItem"; -Get a list of proposals +Get a list of proposals. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    A successful response. -
    Schema
      proposals object[]
    • Array [
    • rationale object
      +
      Schema
        proposals object[]
      • Array [
      • batchTerms object
        -Rationale behind a proposal. - -
        \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
        terms object
        - -Proposal configuration and the actual change that is meant to be executed when proposal is enacted. - -
        cancelTransfer object
        - -Cancel a governance transfer. - -
        changes object
        newAsset object
        - -Proposal change for creating new assets on Vega. - -
        changes object
        - -Configuration of the new asset. +Batch proposal terms. -
        builtinAsset object
        +
        changes object[]
        -Vega built-in asset. +List of individual changes included in the batch proposal. -
        erc20 object
        +
      • Array [
      • cancelTransfer object
        -Ethereum ERC20 asset. +Proposal change to cancel a governance initiated transfe. -
        newMarket object
        +
        changes object
        newMarket object
        -Proposal change for creating new futures market on Vega. +Proposal change for creating new futures market.
        changes object
        @@ -113,7 +97,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
      • Array [
      • ]
      • trigger object
        +
      • Array [
      • ]
      • trigger object
        Conditions for determining when to call the contract method. @@ -215,7 +199,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
      • Array [
      • ]
      • trigger object
        +
      • Array [
      • ]
      • trigger object
        Conditions for determining when to call the contract method. @@ -290,7 +274,7 @@ Perpetual. Binding between the data source spec and the settlement data. -
        dataSourceSpecForSettlementData object
        +
        dataSourceSpecForSettlementData object
        Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -325,7 +309,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
      • Array [
      • ]
      • trigger object
        +
      • Array [
      • ]
      • trigger object
        Conditions for determining when to call the contract method. @@ -427,7 +411,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
      • Array [
      • ]
      • trigger object
        +
      • Array [
      • ]
      • trigger object
        Conditions for determining when to call the contract method. @@ -494,65 +478,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
      • Array [
      • ]
      • triggers object[]
      • Array [
      • ]
      • spot object
        - -Spot. - -
        liquidityMonitoringParameters object
        - -Liquidity monitoring parameters. - -
        targetStakeParameters object
        - -Specifies parameters related to target stake calculation. - -
        liquiditySlaParameters object
        logNormal object
        - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
        params object
        - -Risk model parameters for log normal. - -
        priceMonitoringParameters object
        - -Price monitoring parameters. - -
        triggers object[]
      • Array [
      • ]
      • simple object
        - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
        successor object
        - -Successor configuration. If this proposal is meant to succeed a given market, then this should be set. - -
      newSpotMarket object
      - -Proposal change for creating new spot market on Vega. - -
      changes object
      - -Configuration of the new spot market. - -
      instrument object
      - -New spot market instrument configuration. - -
      future object
      - -Future. - -
      dataSourceSpecBinding object
      +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • indexPriceConfiguration object
      -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
      dataSourceSpecForSettlementData object
      +
      dataSourcesSpec object[]
      -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
      external object
      +
    • Array [
    • external object
      DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -581,7 +515,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
    • Array [
    • ]
    • trigger object
      +
    • Array [
    • ]
    • trigger object
      Conditions for determining when to call the contract method. @@ -648,13 +582,43 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
    • dataSourceSpecForTradingTermination object
      +
    • Array [
    • ]
    • triggers object[]
    • Array [
    • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Spot. -
    external object
    +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -683,7 +647,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -750,15 +714,39 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    -Perpetual. +Price monitoring parameters. -
    dataSourceSpecBinding object
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -793,7 +781,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -860,7 +848,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -895,7 +883,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -962,83 +950,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • spot object
    - -Spot. - -
    logNormal object
    - -Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. - -
    params object
    - -Risk model parameters for log normal. - -
    priceMonitoringParameters object
    - -Price monitoring parameters. - -
    triggers object[]
  • Array [
  • ]
  • simple object
    - -Simple risk model parameters, valid only if MODEL_SIMPLE is selected. - -
    slaParams object
    - -Specifies the liquidity provision SLA parameters. - -
    targetStakeParameters object
    - -Specifies parameters related to target stake calculation. - -
    newTransfer object
    - -Proposal change for a governance transfer. - -
    changes object
    - -Configuration for a new transfer. - -
    oneOff object
    recurring object
    dispatchStrategy object
    - -Optional parameter defining how a transfer is dispatched. - -
    rankTable object[]
    - -Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. - -
  • Array [
  • ]
  • updateAsset object
    - -Proposal change for updating an asset. - -
    changes object
    - -Changes to apply on an existing asset. - -
    erc20 object
    - -Ethereum ERC20 asset update. - -
    updateMarket object
    - -Proposal change for modifying an existing futures market on Vega. - -
    changes object
    - -Updated configuration of the futures market. - -
    instrument object
    - -Updated futures market instrument configuration. - -
    future object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    -Future. +Perpetual. -
    dataSourceSpecBinding object
    +
    dataSourceSpecBinding object
    -The binding between the data source spec and the settlement data. +Binding between the data source spec and the settlement data. -
    dataSourceSpecForSettlementData object
    +
    dataSourceSpecForSettlementData object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -1073,7 +993,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1140,7 +1060,7 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever @@ -1175,7 +1095,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1242,21 +1162,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    - -Perpetual. - -
    dataSourceSpecBinding object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    -Binding between the data source spec and the settlement data. +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. -
    dataSourceSpecForSettlementData object
    +
    dataSourcesSpec object[]
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Additional price sources to be used for index price calculation. -
    external object
    +
  • Array [
  • external object
    DataSourceDefinitionExternal is the top level object used for all external data sources. It contains one of any of the defined `SourceType` variants. @@ -1285,7 +1199,7 @@ located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists. -
  • Array [
  • ]
  • trigger object
    +
  • Array [
  • ]
  • trigger object
    Conditions for determining when to call the contract method. @@ -1352,49 +1266,2618 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    -Represents the top level object that handles data sources. -Data source definition can be external or internal, with whatever -number of data sources are defined for each type in the child objects below. +Spot. -
    external object
    +
    liquidityFeeSettings object
    -DataSourceDefinitionExternal is the top level object used for all external -data sources. It contains one of any of the defined `SourceType` variants. +Specifies how the liquidity fee for the market will be calculated. -
    ethOracle object
    +
    logNormal object
    -Contains the data specification that is received from Ethereum sources. +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. -
    filters object[]
  • Array [
  • conditions object[]
    +
    params object
    -Conditions that should be matched by the data to be -considered of interest. +Risk model parameters for log normal. -
  • Array [
  • ]
  • key object
    +
    priceMonitoringParameters object
    -Data source's data property key targeted by the filter. +Price monitoring parameters. -
  • ]
  • normalisers object[]
    +
    triggers object[]
  • Array [
  • ]
  • simple object
    -Normalisers are used to convert the data returned from the contract method -into a standard format. The key of the map is the name of the property, -which identifies the specific piece of data to other parts of the data -sourcing framework, for example filters. The value is a JSONPath expression -for expressing where in the contract call result the required data is -located, for example $[0] indicates the first result. $[1].price would look -in the second result returned from the contract for a structure with a key -called 'price' and use that if it exists. +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. -
  • Array [
  • ]
  • trigger object
    +
    slaParams object
    -Conditions for determining when to call the contract method. +Specifies the liquidity provision SLA parameters. -
    timeTrigger object
    +
    targetStakeParameters object
    -Trigger for an Ethereum call based on the Ethereum block timestamp. Can be -one-off or repeating. +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance initiated transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    updateMarketState object
    + +Proposal change for updating the state of a market. + +
    changes object
    updateNetworkParameter object
    + +Proposal change for updating Vega network parameters. + +
    changes object
    + +The network parameter to update. + +
    updateReferralProgram object
    + +Proposal change for updating the referral program. + +
    changes object
    + +Configuration for change to update a referral program. + +
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • stakingTiers object[]
    + +Defined staking tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on their staking. + +
  • Array [
  • ]
  • updateSpotMarket object
    + +Proposal change for modifying an existing spot market. + +
    changes object
    + +Updated configuration of the spot market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    updateVolumeDiscountProgram object
    + +Proposal change for updating the volume discount program. + +
    changes object
    benefitTiers object[]
    + +Defined benefit tiers in increasing order. First element will give Tier 1, +second element will give Tier 2, and so on. Determines the level of +benefit a party can expect based on performance criteria. + +
  • Array [
  • ]
  • ]
  • proposalParams object
    + +Specific parameters defining the proposal's characteristics used for validation. + +
    rationale object
    + +Rationale behind a proposal. + +
    \n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state"} qualifierMessage={"**Possible values:** [`STATE_UNSPECIFIED`, `STATE_FAILED`, `STATE_OPEN`, `STATE_PASSED`, `STATE_REJECTED`, `STATE_DECLINED`, `STATE_ENACTED`, `STATE_WAITING_FOR_NODE_VOTE`]"} schema={{"description":"Current state of the proposal, i.e. open, passed, failed etc.","default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"}}>
    terms object
    + +Proposal configuration and the actual change that is meant to be executed when proposal is enacted. +Single proposal term. + +
    cancelTransfer object
    + +Cancel a governance transfer. + +
    changes object
    newAsset object
    + +Proposal change for creating new assets on Vega. + +
    changes object
    + +Configuration of the new asset. + +
    builtinAsset object
    + +Vega built-in asset. + +
    erc20 object
    + +Ethereum ERC20 asset. + +
    newMarket object
    + +Proposal change for creating new futures market on Vega. + +
    changes object
    + +Configuration of the new market. + +
    instrument object
    + +New futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidationStrategy object
    + +Liquidation strategy for this market. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    + +Liquidity monitoring parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    liquiditySlaParameters object
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    successor object
    + +Successor configuration. If this proposal is meant to succeed a given market, then this should be set. + +
    newSpotMarket object
    + +Proposal change for creating new spot market on Vega. + +
    changes object
    + +Configuration of the new spot market. + +
    instrument object
    + +New spot market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • spot object
    + +Spot. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    + +Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. + +
    params object
    + +Risk model parameters for log normal. + +
    priceMonitoringParameters object
    + +Price monitoring parameters. + +
    triggers object[]
  • Array [
  • ]
  • simple object
    + +Simple risk model parameters, valid only if MODEL_SIMPLE is selected. + +
    slaParams object
    + +Specifies the liquidity provision SLA parameters. + +
    targetStakeParameters object
    + +Specifies parameters related to target stake calculation. + +
    newTransfer object
    + +Proposal change for a governance transfer. + +
    changes object
    + +Configuration for a new transfer. + +
    oneOff object
    recurring object
    dispatchStrategy object
    + +Optional parameter defining how a transfer is dispatched. + +
    rankTable object[]
    + +Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy. + +
  • Array [
  • ]
  • updateAsset object
    + +Proposal change for updating an asset. + +
    changes object
    + +Changes to apply on an existing asset. + +
    erc20 object
    + +Ethereum ERC20 asset update. + +
    updateMarket object
    + +Proposal change for modifying an existing futures market on Vega. + +
    changes object
    + +Updated configuration of the futures market. + +
    instrument object
    + +Updated futures market instrument configuration. + +
    future object
    + +Future. + +
    dataSourceSpecBinding object
    + +The binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForTradingTermination object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • perpetual object
    + +Perpetual. + +
    dataSourceSpecBinding object
    + +Binding between the data source spec and the settlement data. + +
    dataSourceSpecForSettlementData object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • dataSourceSpecForSettlementSchedule object
    + +Represents the top level object that handles data sources. +Data source definition can be external or internal, with whatever +number of data sources are defined for each type in the child objects below. + +
    external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • indexPriceConfiguration object
    + +Configuration for the index price used in funding payment calculation. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating.
    oracle object
    @@ -1454,7 +3937,15 @@ Internal data source used for emitting timestamps automatically using predefined Conditions that the timestamps need to meet in order to be considered. -
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • liquidityMonitoringParameters object
    +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • liquidationStrategy object
    + +Liquidation strategy used when the network holds a position resulting from position resolution. + +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    liquidityMonitoringParameters object
    Liquidity monitoring parameters. @@ -1470,7 +3961,111 @@ Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. Risk model parameters for log normal. -
    priceMonitoringParameters object
    +
    markPriceConfiguration object
    + +Mark price configuration. + +
    dataSourcesSpec object[]
    + +Additional price sources to be used for index price calculation. + +
  • Array [
  • external object
    + +DataSourceDefinitionExternal is the top level object used for all external +data sources. It contains one of any of the defined `SourceType` variants. + +
    ethOracle object
    + +Contains the data specification that is received from Ethereum sources. + +
    filters object[]
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • normalisers object[]
    + +Normalisers are used to convert the data returned from the contract method +into a standard format. The key of the map is the name of the property, +which identifies the specific piece of data to other parts of the data +sourcing framework, for example filters. The value is a JSONPath expression +for expressing where in the contract call result the required data is +located, for example $[0] indicates the first result. $[1].price would look +in the second result returned from the contract for a structure with a key +called 'price' and use that if it exists. + +
  • Array [
  • ]
  • trigger object
    + +Conditions for determining when to call the contract method. + +
    timeTrigger object
    + +Trigger for an Ethereum call based on the Ethereum block timestamp. Can be +one-off or repeating. + +
    oracle object
    + +All types of external data sources use the same configuration set for meeting +requirements in order for the data to be useful for Vega - valid signatures +and matching filters. + +
    filters object[]
    + +Filters describes which source data are considered of interest or not for +the product (or the risk model). + +
  • Array [
  • conditions object[]
    + +Conditions that should be matched by the data to be +considered of interest. + +
  • Array [
  • ]
  • key object
    + +Data source's data property key targeted by the filter. + +
  • ]
  • signers object[]
    + +Signers is the list of authorized signatures that signed the data for this +source. All the signatures in the data source data should be contained in +this external source. All the signatures in the data should be contained in +this list. + +
  • Array [
  • ethAddress object
    + +In case of an open oracle - Ethereum address will be submitted. + +
    pubKey object
    + +List of authorized public keys that signed the data for this +source. All the public keys in the data should be contained in these +public keys. + +
  • ]
  • internal object
    + +Top level object used for all internal data sources. +It contains one of any of the defined source type variants. + +
    time object
    + +Internal data source used for emitting timestamps. + +
    conditions object[]
    + +Conditions that the timestamps should meet in order to be considered. + +
  • Array [
  • ]
  • timeTrigger object
    + +Internal data source used for emitting timestamps automatically using predefined intervals and conditions. + +
    conditions object[]
    + +Conditions that the timestamps need to meet in order to be considered. + +
  • Array [
  • ]
  • triggers object[]
  • Array [
  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • ]
  • priceMonitoringParameters object
    Price monitoring parameters. @@ -1518,7 +4113,11 @@ Proposal change for modifying an existing spot market on Vega. Updated configuration of the spot market. -
    logNormal object
    +
    liquidityFeeSettings object
    + +Specifies how the liquidity fee for the market will be calculated. + +
    logNormal object
    Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected. @@ -1552,7 +4151,7 @@ Defined benefit tiers in increasing order. First element will give Tier 1, second element will give Tier 2, and so on. Determines the level of benefit a party can expect based on performance criteria. -
  • Array [
  • ]
  • ]
  • +
  • Array [
  • ]
  • ]
  • An unexpected error response. diff --git a/docs/api/rest/state/core-state-service-list-validators.api.mdx b/docs/api/rest/state/core-state-service-list-validators.api.mdx index 868c47334..c109822a4 100644 --- a/docs/api/rest/state/core-state-service-list-validators.api.mdx +++ b/docs/api/rest/state/core-state-service-list-validators.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-validators title: "Validators list" -description: "Get a list of validators" +description: "Get a list of validators. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Validators list" hide_title: true hide_table_of_contents: true -api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"validators":{"items":{"properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"title":"Validator update event contains information about validator node","type":"object"},"type":"array"}},"type":"object","title":"v1ListValidatorsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of validators","operationId":"CoreStateService_ListValidators","method":"get","path":"/validators","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Validators list","description":{"content":"Get a list of validators","type":"text/plain"},"url":{"path":["validators"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"validators":{"items":{"properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"title":"Validator update event contains information about validator node","type":"object"},"type":"array"}},"type":"object","title":"v1ListValidatorsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of validators. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListValidators","method":"get","path":"/validators","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Validators list","description":{"content":"Get a list of validators. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["validators"],"host":["{{baseUrl}}"],"query":[],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Validators list' (core-state-service-list-validators)" @@ -24,7 +24,7 @@ import TabItem from "@theme/TabItem"; -Get a list of validators +Get a list of validators. This endpoint may not be exposed by mainnet nodes.
    diff --git a/docs/api/rest/state/core-state-service-list-votes.api.mdx b/docs/api/rest/state/core-state-service-list-votes.api.mdx index 097afce29..2f02458fd 100644 --- a/docs/api/rest/state/core-state-service-list-votes.api.mdx +++ b/docs/api/rest/state/core-state-service-list-votes.api.mdx @@ -1,11 +1,11 @@ --- id: core-state-service-list-votes title: "Votes list" -description: "Get a list of votes" +description: "Get a list of votes. This endpoint may not be exposed by mainnet nodes." sidebar_label: "Votes list" hide_title: true hide_table_of_contents: true -api: {"parameters":[{"in":"query","name":"proposal","required":false,"schema":{"type":"string"}},{"in":"query","name":"party","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"votes":{"items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"}},"type":"object","title":"v1ListVotesResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of votes","operationId":"CoreStateService_ListVotes","method":"get","path":"/votes","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"},{"url":"https://n09.testnet.vega.rocks","description":"n09"}],"info":{"title":"Vega core state APIs","version":"v0.73.1"},"postman":{"name":"Votes list","description":{"content":"Get a list of votes","type":"text/plain"},"url":{"path":["votes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"proposal","value":""},{"disabled":false,"key":"party","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} +api: {"parameters":[{"in":"query","name":"proposal","required":false,"schema":{"type":"string"}},{"in":"query","name":"party","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"votes":{"items":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"description":"Which way the party voted.","default":"VALUE_UNSPECIFIED","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}},"title":"Governance vote","type":"object"},"type":"array"}},"type":"object","title":"v1ListVotesResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object","title":"protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object","title":"googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of votes. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListVotes","method":"get","path":"/votes","servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"postman":{"name":"Votes list","description":{"content":"Get a list of votes. This endpoint may not be exposed by mainnet nodes.","type":"text/plain"},"url":{"path":["votes"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"proposal","value":""},{"disabled":false,"key":"party","value":""}],"variable":[]},"header":[{"key":"Accept","value":"application/json"}],"method":"GET"}} sidebar_class_name: "get api-method" info_path: api/rest/state/vega-core-state-apis custom_edit_url: "https://github.com/vegaprotocol/documentation/issues/new?labels=documentation&title=[Documentation] Requesting changes to 'Votes list' (core-state-service-list-votes)" @@ -24,13 +24,17 @@ import TabItem from "@theme/TabItem"; -Get a list of votes +Get a list of votes. This endpoint may not be exposed by mainnet nodes.
    Query Parameters
    A successful response. -
    Schema
      votes object[]
    • Array [
    • ]
    +
    Schema
      votes object[]
    • Array [
    • perMarketEquityLikeShareWeight object
      + +The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal. + +
    • ]
    An unexpected error response. diff --git a/docs/api/vega-wallet/reference/local-service/wallet-api.info.mdx b/docs/api/vega-wallet/reference/local-service/wallet-api.info.mdx index 9f3454a49..74adee0fd 100644 --- a/docs/api/vega-wallet/reference/local-service/wallet-api.info.mdx +++ b/docs/api/vega-wallet/reference/local-service/wallet-api.info.mdx @@ -14,7 +14,7 @@ import Export from "@theme/ApiDemoPanel/Export"; Version: 2.0.0 - + # Wallet API diff --git a/docs/tutorials/proposals/_generated-proposals/_newAsset_annotated.md b/docs/tutorials/proposals/_generated-proposals/_newAsset_annotated.md index 147c9de98..4ba4fbe36 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newAsset_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_newAsset_annotated.md @@ -38,14 +38,14 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, // Validation timestamp as Unix time in seconds. (int64 as string) - validationTimestamp: 1701021239 + validationTimestamp: 1708008220 } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_newAsset_cmd.md b/docs/tutorials/proposals/_generated-proposals/_newAsset_cmd.md index b3efed665..d3fd2b74f 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newAsset_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_newAsset_cmd.md @@ -20,9 +20,9 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239, - "validationTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220, + "validationTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_newAsset_json.md b/docs/tutorials/proposals/_generated-proposals/_newAsset_json.md index 90d7aa6c4..af273fc9c 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newAsset_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_newAsset_json.md @@ -19,9 +19,9 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239, - "validationTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220, + "validationTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_newAsset_win.md b/docs/tutorials/proposals/_generated-proposals/_newAsset_win.md index 26fd3f662..e1abf5242 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newAsset_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_newAsset_win.md @@ -21,9 +21,9 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ }^ },^ - \"closingTimestamp\": 1700934839,^ - \"enactmentTimestamp\": 1701021239,^ - \"validationTimestamp\": 1701021239^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220,^ + \"validationTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_newFreeform_annotated.md b/docs/tutorials/proposals/_generated-proposals/_newFreeform_annotated.md index 6806af698..4d06e246e 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newFreeform_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_newFreeform_annotated.md @@ -13,7 +13,7 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string}) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_newFreeform_cmd.md b/docs/tutorials/proposals/_generated-proposals/_newFreeform_cmd.md index 7ea5d4bc6..eb853fdbb 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newFreeform_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_newFreeform_cmd.md @@ -8,7 +8,7 @@ }, "terms": { "newFreeform": {}, - "closingTimestamp": 1700934839 + "closingTimestamp": 1707921820 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_newFreeform_json.md b/docs/tutorials/proposals/_generated-proposals/_newFreeform_json.md index 884c16a9e..351bb58c2 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newFreeform_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_newFreeform_json.md @@ -7,7 +7,7 @@ }, "terms": { "newFreeform": {}, - "closingTimestamp": 1700934839 + "closingTimestamp": 1707921820 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_newFreeform_win.md b/docs/tutorials/proposals/_generated-proposals/_newFreeform_win.md index 83a40e61b..e8f9ee01e 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newFreeform_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_newFreeform_win.md @@ -9,7 +9,7 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE },^ \"terms\": {^ \"newFreeform\": {},^ - \"closingTimestamp\": 1700934839^ + \"closingTimestamp\": 1707921820^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_newMarket_annotated.md b/docs/tutorials/proposals/_generated-proposals/_newMarket_annotated.md index 07539ad71..568df97f2 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newMarket_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_newMarket_annotated.md @@ -23,10 +23,10 @@ // Instrument configuration instrument: { // Instrument name. - name: "Apples Yearly (2022)", + name: "Oranges Daily", // Instrument code, human-readable shortcode used to describe the instrument. - code: "APPLES.22", + code: "ORANGES.24h", // Future product configuration future: { @@ -126,8 +126,8 @@ // Optional new futures market metadata, tags. metadata: [ - "enactment:2023-11-26T17:53:59Z", - "settlement:2023-11-25T17:53:59Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], @@ -211,11 +211,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_newMarket_cmd.md b/docs/tutorials/proposals/_generated-proposals/_newMarket_cmd.md index 07adfbfeb..ef3677d17 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newMarket_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_newMarket_cmd.md @@ -14,8 +14,8 @@ "decimalPlaces": "5", "positionDecimalPlaces": "5", "instrument": { - "name": "Apples Yearly (2022)", - "code": "APPLES.22", + "name": "Oranges Daily", + "code": "ORANGES.24h", "future": { "settlementAsset": "8b52d4a3a4b0ffe733cddbc2b67be273816cfeb6ca4c8b339bac03ffba08e4e4", "quoteName": "tEuro", @@ -78,8 +78,8 @@ } }, "metadata": [ - "enactment:2023-11-26T17:53:59Z", - "settlement:2023-11-25T17:53:59Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], "priceMonitoringParameters": { @@ -116,8 +116,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_newMarket_json.md b/docs/tutorials/proposals/_generated-proposals/_newMarket_json.md index 2f156718a..53f73dd23 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newMarket_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_newMarket_json.md @@ -13,8 +13,8 @@ "decimalPlaces": "5", "positionDecimalPlaces": "5", "instrument": { - "name": "Apples Yearly (2022)", - "code": "APPLES.22", + "name": "Oranges Daily", + "code": "ORANGES.24h", "future": { "settlementAsset": "8b52d4a3a4b0ffe733cddbc2b67be273816cfeb6ca4c8b339bac03ffba08e4e4", "quoteName": "tEuro", @@ -77,8 +77,8 @@ } }, "metadata": [ - "enactment:2023-11-26T17:53:59Z", - "settlement:2023-11-25T17:53:59Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], "priceMonitoringParameters": { @@ -115,8 +115,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_newMarket_json_instrument.md b/docs/tutorials/proposals/_generated-proposals/_newMarket_json_instrument.md index f8dafde97..319b3015c 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newMarket_json_instrument.md +++ b/docs/tutorials/proposals/_generated-proposals/_newMarket_json_instrument.md @@ -1,9 +1,9 @@ ```javascript { // Instrument name. - name: "Apples Yearly (2022)", + name: "Oranges Daily", // Instrument code, human-readable shortcode used to describe the instrument. - code: "APPLES.22", + code: "ORANGES.24h", // Future product configuration future: { // Asset ID for the product's settlement asset. (string) diff --git a/docs/tutorials/proposals/_generated-proposals/_newMarket_json_overview.md b/docs/tutorials/proposals/_generated-proposals/_newMarket_json_overview.md index 1f2cd0c4d..f51b33a2e 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newMarket_json_overview.md +++ b/docs/tutorials/proposals/_generated-proposals/_newMarket_json_overview.md @@ -41,10 +41,10 @@ }, // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_newMarket_win.md b/docs/tutorials/proposals/_generated-proposals/_newMarket_win.md index 407d3ae6f..b5d973dfc 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newMarket_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_newMarket_win.md @@ -15,8 +15,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE \"decimalPlaces\": \"5\",^ \"positionDecimalPlaces\": \"5\",^ \"instrument\": {^ - \"name\": \"Apples Yearly (2022)\",^ - \"code\": \"APPLES.22\",^ + \"name\": \"Oranges Daily\",^ + \"code\": \"ORANGES.24h\",^ \"future\": {^ \"settlementAsset\": \"8b52d4a3a4b0ffe733cddbc2b67be273816cfeb6ca4c8b339bac03ffba08e4e4\",^ \"quoteName\": \"tEuro\",^ @@ -79,8 +79,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ },^ \"metadata\": [^ - \"enactment:2023-11-26T17:53:59Z\",^ - \"settlement:2023-11-25T17:53:59Z\",^ + \"enactment:2024-02-15T14:43:40Z\",^ + \"settlement:2024-02-14T14:43:40Z\",^ \"source:docs.vega.xyz\"^ ],^ \"priceMonitoringParameters\": {^ @@ -117,8 +117,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ }^ },^ - \"closingTimestamp\": 1700934839,^ - \"enactmentTimestamp\": 1701021239^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_annotated.md b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_annotated.md index 919cbf36b..5b6b80994 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_annotated.md @@ -130,12 +130,11 @@ }, - /* Describes which property of the data source data is to be - * used as settlement data and which to use as the trading terminated trigger */ + /* undefined */ dataSourceSpecBinding: { - /* Name of the property in the source data that should be used as settlement data. - * If it is set to "prices.BTC.value", then the perpetual market will use the value of - * this property as settlement data. */ + /* Name of the property in the source data that should be used for settlement data. + * If it is set to "prices.BTC.value" for example, then the perpetual market will use the value of + * this property to get settlement data. */ settlementDataProperty: "prices.ORANGES.value", settlementScheduleProperty: "vegaprotocol.builtin.timetrigger" } @@ -143,8 +142,8 @@ // Optional new futures market metadata, tags. metadata: [ - "enactment:2023-11-28T18:16:03Z", - "settlement:2023-11-27T18:16:03Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], @@ -228,11 +227,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1701108963, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701195363, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_cmd.md b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_cmd.md index 4a238dcd0..d70e590f2 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_cmd.md @@ -83,8 +83,8 @@ } }, "metadata": [ - "enactment:2023-11-28T18:16:03Z", - "settlement:2023-11-27T18:16:03Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], "priceMonitoringParameters": { @@ -121,8 +121,8 @@ } } }, - "closingTimestamp": 1701108963, - "enactmentTimestamp": 1701195363 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_json.md b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_json.md index fe07cac48..79db70599 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_json.md @@ -82,8 +82,8 @@ } }, "metadata": [ - "enactment:2023-11-28T18:16:03Z", - "settlement:2023-11-27T18:16:03Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], "priceMonitoringParameters": { @@ -120,8 +120,8 @@ } } }, - "closingTimestamp": 1701108963, - "enactmentTimestamp": 1701195363 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_win.md b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_win.md index bd8150475..3da835ec4 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_newPerpetualMarket_win.md @@ -84,8 +84,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ },^ \"metadata\": [^ - \"enactment:2023-11-28T18:16:03Z\",^ - \"settlement:2023-11-27T18:16:03Z\",^ + \"enactment:2024-02-15T14:43:40Z\",^ + \"settlement:2024-02-14T14:43:40Z\",^ \"source:docs.vega.xyz\"^ ],^ \"priceMonitoringParameters\": {^ @@ -122,8 +122,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ }^ },^ - \"closingTimestamp\": 1701108963,^ - \"enactmentTimestamp\": 1701195363^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_annotated.md b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_annotated.md index 07878573c..eaaec5af0 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_annotated.md @@ -135,8 +135,8 @@ // Optional new futures market metadata, tags. metadata: [ - "enactment:2024-01-03T15:20:02Z", - "settlement:2024-01-02T15:20:02Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], @@ -220,11 +220,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1704208802, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1704295202, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_cmd.md b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_cmd.md index bedb35fda..9dfe7cb2e 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_cmd.md @@ -82,8 +82,8 @@ } }, "metadata": [ - "enactment:2024-01-03T15:20:02Z", - "settlement:2024-01-02T15:20:02Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], "priceMonitoringParameters": { @@ -120,8 +120,8 @@ } } }, - "closingTimestamp": 1704208802, - "enactmentTimestamp": 1704295202 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_json.md b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_json.md index cae0f8fc1..f3ffd6c34 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_json.md @@ -81,8 +81,8 @@ } }, "metadata": [ - "enactment:2024-01-03T15:20:02Z", - "settlement:2024-01-02T15:20:02Z", + "enactment:2024-02-15T14:43:40Z", + "settlement:2024-02-14T14:43:40Z", "source:docs.vega.xyz" ], "priceMonitoringParameters": { @@ -119,8 +119,8 @@ } } }, - "closingTimestamp": 1704208802, - "enactmentTimestamp": 1704295202 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_win.md b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_win.md index 87cf94a1d..cff7e1594 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_newSuccessorMarket_win.md @@ -83,8 +83,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ },^ \"metadata\": [^ - \"enactment:2024-01-03T15:20:02Z\",^ - \"settlement:2024-01-02T15:20:02Z\",^ + \"enactment:2024-02-15T14:43:40Z\",^ + \"settlement:2024-02-14T14:43:40Z\",^ \"source:docs.vega.xyz\"^ ],^ \"priceMonitoringParameters\": {^ @@ -121,8 +121,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ }^ },^ - \"closingTimestamp\": 1704208802,^ - \"enactmentTimestamp\": 1704295202^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_newTransfer_annotated.md b/docs/tutorials/proposals/_generated-proposals/_newTransfer_annotated.md index 0db2a44db..851a0de92 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newTransfer_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_newTransfer_annotated.md @@ -40,11 +40,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_newTransfer_cmd.md b/docs/tutorials/proposals/_generated-proposals/_newTransfer_cmd.md index 29bc8135a..bb7c05636 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newTransfer_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_newTransfer_cmd.md @@ -21,8 +21,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_newTransfer_json.md b/docs/tutorials/proposals/_generated-proposals/_newTransfer_json.md index e39fd7577..2d75cd624 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newTransfer_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_newTransfer_json.md @@ -20,8 +20,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_newTransfer_win.md b/docs/tutorials/proposals/_generated-proposals/_newTransfer_win.md index 7c2fcf127..ebd235768 100644 --- a/docs/tutorials/proposals/_generated-proposals/_newTransfer_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_newTransfer_win.md @@ -22,8 +22,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ }^ },^ - \"closingTimestamp\": 1700934839,^ - \"enactmentTimestamp\": 1701021239^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_updateAsset_annotated.md b/docs/tutorials/proposals/_generated-proposals/_updateAsset_annotated.md index f544ab7ba..7f2eafe65 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateAsset_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateAsset_annotated.md @@ -26,11 +26,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_updateAsset_cmd.md b/docs/tutorials/proposals/_generated-proposals/_updateAsset_cmd.md index e4a2f6201..7c9f14785 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateAsset_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateAsset_cmd.md @@ -17,8 +17,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_updateAsset_json.md b/docs/tutorials/proposals/_generated-proposals/_updateAsset_json.md index 6200c8cba..64ede702f 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateAsset_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateAsset_json.md @@ -16,8 +16,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_updateAsset_win.md b/docs/tutorials/proposals/_generated-proposals/_updateAsset_win.md index 084d0541c..47fb50ae9 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateAsset_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateAsset_win.md @@ -18,8 +18,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ }^ },^ - \"closingTimestamp\": 1700934839,^ - \"enactmentTimestamp\": 1701021239^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_annotated.md b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_annotated.md index 7e348cb9d..7b1667766 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_annotated.md @@ -22,11 +22,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_cmd.md b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_cmd.md index 45da19f1a..dc2fe9e12 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_cmd.md @@ -14,8 +14,8 @@ "price": "123456" } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_json.md b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_json.md index 16f1d1ce8..c70893c66 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_json.md @@ -13,8 +13,8 @@ "price": "123456" } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_win.md b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_win.md index 89b0e886f..d34e2c26e 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarketState_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarketState_win.md @@ -15,8 +15,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE \"price\": \"123456\"^ }^ },^ - \"closingTimestamp\": 1700934839,^ - \"enactmentTimestamp\": 1701021239^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarket_annotated.md b/docs/tutorials/proposals/_generated-proposals/_updateMarket_annotated.md index aed2c588c..cdd9b40cc 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarket_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarket_annotated.md @@ -145,7 +145,7 @@ must be a strictly non - negative real number.(number) tau: 0.0001140771161, // Risk Aversion Parameter. (double as number) - riskAversionParameter: "0.0001", + riskAversionParameter: "0.01", // Risk model parameters for log normal params: { @@ -156,7 +156,7 @@ r: 0.016, // Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number. (double as number) - sigma: 0.8, + sigma: 1.25, } }, @@ -180,11 +180,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarket_cmd.md b/docs/tutorials/proposals/_generated-proposals/_updateMarket_cmd.md index 3dd8506a4..b6a1cda40 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarket_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarket_cmd.md @@ -88,11 +88,11 @@ }, "logNormal": { "tau": 0.0001140771161, - "riskAversionParameter": 0.0001, + "riskAversionParameter": 0.01, "params": { "mu": 0, "r": 0.016, - "sigma": 0.8 + "sigma": 1.25 } }, "liquiditySlaParameters": { @@ -103,8 +103,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarket_json.md b/docs/tutorials/proposals/_generated-proposals/_updateMarket_json.md index 32349b28b..1478e0ccb 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarket_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarket_json.md @@ -87,11 +87,11 @@ }, "logNormal": { "tau": 0.0001140771161, - "riskAversionParameter": 0.0001, + "riskAversionParameter": 0.01, "params": { "mu": 0, "r": 0.016, - "sigma": 0.8 + "sigma": 1.25 } }, "liquiditySlaParameters": { @@ -102,8 +102,8 @@ } } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_updateMarket_win.md b/docs/tutorials/proposals/_generated-proposals/_updateMarket_win.md index 3f18b0e19..323069fe9 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateMarket_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateMarket_win.md @@ -89,11 +89,11 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE },^ \"logNormal\": {^ \"tau\": 0.0001140771161,^ - \"riskAversionParameter\": 0.0001,^ + \"riskAversionParameter\": 0.01,^ \"params\": {^ \"mu\": 0,^ \"r\": 0.016,^ - \"sigma\": 0.8^ + \"sigma\": 1.25^ }^ },^ \"liquiditySlaParameters\": {^ @@ -104,8 +104,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE }^ }^ },^ - \"closingTimestamp\": 1700934839,^ - \"enactmentTimestamp\": 1701021239^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_annotated.md b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_annotated.md index 451cbd740..09bd5ce2d 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_annotated.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_annotated.md @@ -18,11 +18,11 @@ // Timestamp as Unix time in seconds when voting closes for this proposal, // constrained by `minClose` and `maxClose` network parameters. (int64 as string) - closingTimestamp: 1700934839, + closingTimestamp: 1707921820, // Timestamp as Unix time in seconds when proposal gets enacted if passed, // constrained by `minEnact` and `maxEnact` network parameters. (int64 as string) - enactmentTimestamp: 1701021239, + enactmentTimestamp: 1708008220, } } ``` \ No newline at end of file diff --git a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_cmd.md b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_cmd.md index c53d36bd3..8f7361bf6 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_cmd.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_cmd.md @@ -13,8 +13,8 @@ "value": "300" } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } }' diff --git a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_json.md b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_json.md index 7912a1688..5f6f721dc 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_json.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_json.md @@ -12,8 +12,8 @@ "value": "300" } }, - "closingTimestamp": 1700934839, - "enactmentTimestamp": 1701021239 + "closingTimestamp": 1707921820, + "enactmentTimestamp": 1708008220 } } ``` diff --git a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_win.md b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_win.md index 06dfa39f1..39798e07b 100644 --- a/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_win.md +++ b/docs/tutorials/proposals/_generated-proposals/_updateNetworkParameter_win.md @@ -14,8 +14,8 @@ vegawallet.exe transaction send --wallet YOUR_WALLETNAME --pubkey YOUR_PUBLIC_KE \"value\": \"300\"^ }^ },^ - \"closingTimestamp\": 1700934839,^ - \"enactmentTimestamp\": 1701021239^ + \"closingTimestamp\": 1707921820,^ + \"enactmentTimestamp\": 1708008220^ }^ }^ }" diff --git a/package.json b/package.json index 948d3587a..f5c90ef82 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vega-documentation", - "version": "0.73.10", + "version": "0.74.0", "mainnetVersion": "0.73.10", "license": "MIT", "engines": { diff --git a/scripts/build-post-fix-generated.sh b/scripts/build-post-fix-generated.sh index d3d624477..a686c5b93 100755 --- a/scripts/build-post-fix-generated.sh +++ b/scripts/build-post-fix-generated.sh @@ -26,10 +26,6 @@ find "versioned_docs" -name "trading-data-service-export-ledger-entries.api.mdx" echo "- REST: Hide submit buttons for mainnet core state api" find "versioned_docs" -name "core-state-service-*.mdx" | while read -r file; do hide_send_button "$file"; done -echo "- REST: Hide submit buttons for export ledger entries endpoint" -find "docs/api/rest/data-v2/" -name "trading-data-service-export-ledger-entries.api.mdx" -exec sed -i -E 's/hide_title: true/hide_title: true\r\nhide_send_button: true/g' {} + -find "versioned_docs" -name "trading-data-service-export-ledger-entries.api.mdx" -exec sed -i -E 's/hide_title: true/hide_title: true\r\nhide_send_button: true/g' {} + - echo "- REST: Remove indexes (todo: fix hardcoded version)" find 'versioned_docs/version-v0.73/api/rest/' -name '*-service.mdx' -exec rm {} + find 'versioned_docs/version-v0.73/api/rest/' -name '*.info.mdx' -exec rm {} + diff --git a/scripts/build-post-fix-sidebars.sh b/scripts/build-post-fix-sidebars.sh index 2eb881541..e5640f776 100755 --- a/scripts/build-post-fix-sidebars.sh +++ b/scripts/build-post-fix-sidebars.sh @@ -3,7 +3,7 @@ if command -v gsed >/dev/null 2>&1; then SED_CMD=gsed else if [ "$(uname -s)" = "Darwin" ]; then - echo "Error: gsed is not available on this Mac system. Try `brew install sed` Exiting." + echo "Error: gsed is not available on this Mac system. Try `brew install gsed` Exiting." exit 1 else SED_CMD=sed @@ -11,21 +11,20 @@ else fi echo "REST: Rename services (improve search results appearance)" -sed -i -E 's/CoreService/Core service/g' docs/api/rest/core/sidebar.js -sed -i -E 's/CoreStateService/Core State/g' docs/api/rest/state/sidebar.js -sed -i -E 's/TradingDataService/Trading Data \(v2\)/g' docs/api/rest/data-v2/sidebar.js -sed -i -E 's/TradingDataService/Trading Data \(v1\)/g' docs/api/rest/data-v1/sidebar.js +$SED_CMD -i -E 's/CoreService/Core service/g' docs/api/rest/core/sidebar.js +$SED_CMD -i -E 's/CoreStateService/Core State/g' docs/api/rest/state/sidebar.js +$SED_CMD -i -E 's/TradingDataService/Trading Data \(v2\)/g' docs/api/rest/data-v2/sidebar.js echo "GRPC: Rename root ('Files' is not useful)" -sed -i -E 's/Files/GRPC/g' docs/api/grpc/sidebar.js +$SED_CMD -i -E 's/Files/GRPC/g' docs/api/grpc/sidebar.js echo "GRPC: Fix explorer links" -sed -i -E 's/"blockexplorer\/api\/v1\/blockexplorer\.proto"/"api\/grpc\/blockexplorer\/api\/v1\/blockexplorer\.proto"/g' docs/api/grpc/sidebar.js +$SED_CMD -i -E 's/"blockexplorer\/api\/v1\/blockexplorer\.proto"/"api\/grpc\/blockexplorer\/api\/v1\/blockexplorer\.proto"/g' docs/api/grpc/sidebar.js echo "GRPC: Fix sidebar links (fixes incorrect path mappings for the versioned world)" -sed -i -E 's/"vega/"api\/grpc\/vega/g' docs/api/grpc/sidebar.js -sed -i -E 's/"data-node/"api\/grpc\/data-node/g' docs/api/grpc/sidebar.js -find 'docs/api/rest/' -name 'sidebar.js' -exec sed -i 's/{"type":"doc","id":"[^"]*"},//g' {} + +$SED_CMD -i -E 's/"vega/"api\/grpc\/vega/g' docs/api/grpc/sidebar.js +$SED_CMD -i -E 's/"data-node/"api\/grpc\/data-node/g' docs/api/grpc/sidebar.js +find 'docs/api/rest/' -name 'sidebar.js' -exec $SED_CMD -i 's/{"type":"doc","id":"[^"]*"},//g' {} + find 'versioned_docs/version-v0.73/api/rest/' -name 'sidebar.js' -exec $SED_CMD -i 's/{"type":"doc","id":"[^"]*"},//g' {} + cat versioned_sidebars/version-v0.73-sidebars.json | jq 'def recurse: if type == "array" then map(recurse) elif type == "object" then if has("id") and (.id | type == "string" and test("^api/rest.*-apis$")) then empty else with_entries( .value |= recurse ) end else . end; recurse' > temp.json && mv temp.json versioned_sidebars/version-v0.72-sidebars.json # echo "GRPC: Fix sidebar links (fixes incorrect path mappings for the versioned world)" diff --git a/specs/mainnet_vaguer.json b/specs/mainnet_vaguer.json index 8d1cf54b2..6f3e23ff1 100644 --- a/specs/mainnet_vaguer.json +++ b/specs/mainnet_vaguer.json @@ -1 +1 @@ -[{"host":"vega-mainnet-data.commodum.io/graphql","blockHeight":"-","totalPeers":"-","startupHash":"-","paramHash":"-","steakHash":"-","marketsHash":"-","assetsHash":"-","governanceHash":"-","hashHash":"-","https":"✓","🥇":"-"},{"host":"vega-data.nodes.guru/graphql","blockHeight":"31683862","totalPeers":"30","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"vega-data.bharvest.io/graphql","blockHeight":"31683863","totalPeers":"33","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"datanode.vega.pathrocknetwork.org/graphql","blockHeight":"-","totalPeers":"-","startupHash":"-","paramHash":"-","steakHash":"-","marketsHash":"-","assetsHash":"-","governanceHash":"-","hashHash":"-","https":"✓","🥇":"-"},{"host":"vega.aurora-edge.com/graphql","blockHeight":"31683862","totalPeers":"10","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"darling.network/graphql","blockHeight":"31683862","totalPeers":"10","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"gql.velvet.tm.p2p.org/graphql","blockHeight":"31683863","totalPeers":"13","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"vega-query.mainnet.lovali.xyz/graphql","blockHeight":"31683862","totalPeers":"9","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"graphqlvega.gpvalidator.com/graphql","blockHeight":"31683862","totalPeers":"11","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"vega-mainnet.anyvalid.com/graphql","blockHeight":"31683863","totalPeers":"28","startupHash":"738321","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"c51de0","https":"✓","🥇":"🥇"},{"host":"vega.mainnet.stakingcabin.com/query","blockHeight":"-","totalPeers":"-","startupHash":"-","paramHash":"-","steakHash":"-","marketsHash":"-","assetsHash":"-","governanceHash":"-","hashHash":"-","https":"✓","🥇":"-"}] +[{"host":"vega-mainnet-data.commodum.io/graphql","blockHeight":"-","totalPeers":"-","startupHash":"-","paramHash":"-","steakHash":"-","marketsHash":"-","assetsHash":"-","governanceHash":"-","hashHash":"-","https":"✓","🥇":"-"},{"host":"vega-data.nodes.guru/graphql","blockHeight":"33110675","totalPeers":"29","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"vega-data.bharvest.io/graphql","blockHeight":"33110676","totalPeers":"34","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"datanode.vega.pathrocknetwork.org/graphql","blockHeight":"-","totalPeers":"-","startupHash":"-","paramHash":"-","steakHash":"-","marketsHash":"-","assetsHash":"-","governanceHash":"-","hashHash":"-","https":"✓","🥇":"-"},{"host":"vega.aurora-edge.com/graphql","blockHeight":"33110676","totalPeers":"8","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"darling.network/graphql","blockHeight":"33110676","totalPeers":"10","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"gql.velvet.tm.p2p.org/graphql","blockHeight":"33110676","totalPeers":"14","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"vega-query.mainnet.lovali.xyz/graphql","blockHeight":"33110676","totalPeers":"10","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"graphqlvega.gpvalidator.com/graphql","blockHeight":"33110676","totalPeers":"11","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"vega-mainnet.anyvalid.com/graphql","blockHeight":"33110677","totalPeers":"20","startupHash":"9ca0a6","paramHash":"ff07fd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"7fbb53","https":"✓","🥇":"🥇"},{"host":"vega.mainnet.stakingcabin.com/query","blockHeight":"-","totalPeers":"-","startupHash":"-","paramHash":"-","steakHash":"-","marketsHash":"-","assetsHash":"-","governanceHash":"-","hashHash":"-","https":"✓","🥇":"-"}] diff --git a/specs/mainnet_vaguer_timestamp.json b/specs/mainnet_vaguer_timestamp.json index a1d083dd7..09407ec70 100644 --- a/specs/mainnet_vaguer_timestamp.json +++ b/specs/mainnet_vaguer_timestamp.json @@ -1 +1 @@ -{"date": "Tue 16 Jan 2024 14:36:23 UTC", "timestamp": "1705415783"} +{"date": "Fri 26 Jan 2024 14:42:58 UTC", "timestamp": "1706280178"} diff --git a/specs/testnet_network.json b/specs/testnet_network.json index bfcd73c7a..68978fc10 100644 --- a/specs/testnet_network.json +++ b/specs/testnet_network.json @@ -1 +1 @@ -{"FileVersion":2,"Name":"fairground","Metadata":[{"key":"network","name":"fairground"}],"API":{"GRPC":{"Hosts":["api.n00.testnet.vega.rocks:3007","api.n06.testnet.vega.rocks:3007","api.n07.testnet.vega.rocks:3007","api.n08.testnet.vega.rocks:3007","api.n09.testnet.vega.rocks:3007"],"Retries":5},"GraphQL":{"Hosts":["https://api.n00.testnet.vega.rocks/graphql","https://api.n06.testnet.vega.rocks/graphql","https://api.n07.testnet.vega.rocks/graphql","https://api.n08.testnet.vega.rocks/graphql","https://api.n09.testnet.vega.rocks/graphql"]},"REST":{"Hosts":["https://api.n00.testnet.vega.rocks","https://api.n06.testnet.vega.rocks","https://api.n07.testnet.vega.rocks","https://api.n08.testnet.vega.rocks","https://api.n09.testnet.vega.rocks"]}},"Apps":{"Console":"https://console.fairground.wtf","TokenDApp":"https://token.fairground.wtf","Explorer":"https://explorer.fairground.wtf"}} \ No newline at end of file +{"FileVersion":2,"Name":"fairground","Metadata":[{"key":"network","name":"fairground"}],"API":{"GRPC":{"Hosts":["api.n00.testnet.vega.rocks:3007","api.n06.testnet.vega.rocks:3007","api.n07.testnet.vega.rocks:3007","api.n08.testnet.vega.rocks:3007"],"Retries":5},"GraphQL":{"Hosts":["https://api.n00.testnet.vega.rocks/graphql","https://api.n06.testnet.vega.rocks/graphql","https://api.n07.testnet.vega.rocks/graphql","https://api.n08.testnet.vega.rocks/graphql"]},"REST":{"Hosts":["https://api.n00.testnet.vega.rocks","https://api.n06.testnet.vega.rocks","https://api.n07.testnet.vega.rocks","https://api.n08.testnet.vega.rocks"]}},"Apps":{"Console":"https://console.fairground.wtf","TokenDApp":"https://token.fairground.wtf","Explorer":"https://explorer.fairground.wtf"}} \ No newline at end of file diff --git a/specs/testnet_network_parameters.json b/specs/testnet_network_parameters.json index 08160a991..4713ae861 100644 --- a/specs/testnet_network_parameters.json +++ b/specs/testnet_network_parameters.json @@ -1 +1 @@ -{"networkParameters":{"edges":[{"node":{"key":"blockchains.ethereumConfig","value":"{\"network_id\":\"11155111\",\"chain_id\":\"11155111\",\"collateral_bridge_contract\":{\"address\":\"0xcC68d87cAEF9580E3F383d6438F7B3F2C71E3fe5\"},\"confirmations\":64,\"staking_bridge_contract\":{\"address\":\"0xFFb0A0d4806502ceF491aF1141f66669A1Bd0D03\",\"deployment_block_height\":2011705},\"token_vesting_contract\":{\"address\":\"0x680fF88252FA7071CAce7398e77872d54D781d0B\",\"deployment_block_height\":2011709},\"multisig_control_contract\":{\"address\":\"0x6eBc32d66277D94DB8FF2ccF86E36f37F29a52D3\",\"deployment_block_height\":2011699}}"},"cursor":"YmxvY2tjaGFpbnMuZXRoZXJldW1Db25maWc="},{"node":{"key":"ethereum.oracles.enabled","value":"1"},"cursor":"ZXRoZXJldW0ub3JhY2xlcy5lbmFibGVk"},{"node":{"key":"governance.proposal.VolumeDiscountProgram.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.maxEnact","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minClose","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluQ2xvc2U="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minEnact","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluRW5hY3Q="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.VolumeDiscountProgram.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.requiredParticipation","value":"0.00001"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.asset.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.asset.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.asset.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.asset.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.asset.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.asset.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.asset.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.asset.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.freeform.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.freeform.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.freeform.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.freeform.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.freeform.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.freeform.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.market.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.market.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.market.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluQ2xvc2U="},{"node":{"key":"governance.proposal.market.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluRW5hY3Q="},{"node":{"key":"governance.proposal.market.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.market.minVoterBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.market.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.market.requiredParticipation","value":"0.07"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.referralProgram.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.referralProgram.maxEnact","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.referralProgram.minClose","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluQ2xvc2U="},{"node":{"key":"governance.proposal.referralProgram.minEnact","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluRW5hY3Q="},{"node":{"key":"governance.proposal.referralProgram.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.referralProgram.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.referralProgram.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.referralProgram.requiredParticipation","value":"0.00001"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.transfer.maxAmount","value":"7000000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhBbW91bnQ="},{"node":{"key":"governance.proposal.transfer.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.transfer.maxEnact","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.transfer.maxFraction","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhGcmFjdGlvbg=="},{"node":{"key":"governance.proposal.transfer.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.transfer.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.transfer.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.transfer.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.transfer.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.transfer.requiredParticipation","value":"0.00001"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.updateAsset.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.updateAsset.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.updateAsset.minClose","value":"5s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.updateAsset.minEnact","value":"5s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.updateAsset.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateAsset.minVoterBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateAsset.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.updateAsset.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.updateMarket.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.updateMarket.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.updateMarket.minClose","value":"0h1m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluQ2xvc2U="},{"node":{"key":"governance.proposal.updateMarket.minEnact","value":"0h1m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluRW5hY3Q="},{"node":{"key":"governance.proposal.updateMarket.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.updateMarket.minProposerEquityLikeShare","value":"0"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluUHJvcG9zZXJFcXVpdHlMaWtlU2hhcmU="},{"node":{"key":"governance.proposal.updateMarket.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.updateMarket.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.updateMarket.requiredMajorityLP","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRNYWpvcml0eUxQ"},{"node":{"key":"governance.proposal.updateMarket.requiredParticipation","value":"0.07"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.updateMarket.requiredParticipationLP","value":"0"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRQYXJ0aWNpcGF0aW9uTFA="},{"node":{"key":"governance.proposal.updateNetParam.maxClose","value":"1440h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.updateNetParam.maxEnact","value":"1440h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.updateNetParam.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.updateNetParam.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.updateNetParam.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateNetParam.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateNetParam.requiredMajority","value":"0.5"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.updateNetParam.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"limits.assets.proposeEnabledFrom","value":""},"cursor":"bGltaXRzLmFzc2V0cy5wcm9wb3NlRW5hYmxlZEZyb20="},{"node":{"key":"limits.markets.maxPeggedOrders","value":"1500"},"cursor":"bGltaXRzLm1hcmtldHMubWF4UGVnZ2VkT3JkZXJz"},{"node":{"key":"limits.markets.proposeEnabledFrom","value":""},"cursor":"bGltaXRzLm1hcmtldHMucHJvcG9zZUVuYWJsZWRGcm9t"},{"node":{"key":"limits.markets.proposePerpetualEnabled","value":"1"},"cursor":"bGltaXRzLm1hcmtldHMucHJvcG9zZVBlcnBldHVhbEVuYWJsZWQ="},{"node":{"key":"limits.markets.proposeSpotEnabled","value":"0"},"cursor":"bGltaXRzLm1hcmtldHMucHJvcG9zZVNwb3RFbmFibGVk"},{"node":{"key":"market.auction.maximumDuration","value":"168h0m0s"},"cursor":"bWFya2V0LmF1Y3Rpb24ubWF4aW11bUR1cmF0aW9u"},{"node":{"key":"market.auction.minimumDuration","value":"30s"},"cursor":"bWFya2V0LmF1Y3Rpb24ubWluaW11bUR1cmF0aW9u"},{"node":{"key":"market.fee.factors.infrastructureFee","value":"0.0005"},"cursor":"bWFya2V0LmZlZS5mYWN0b3JzLmluZnJhc3RydWN0dXJlRmVl"},{"node":{"key":"market.fee.factors.makerFee","value":"0.0002"},"cursor":"bWFya2V0LmZlZS5mYWN0b3JzLm1ha2VyRmVl"},{"node":{"key":"market.liquidity.bondPenaltyParameter","value":"0.000001"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5ib25kUGVuYWx0eVBhcmFtZXRlcg=="},{"node":{"key":"market.liquidity.earlyExitPenalty","value":"0.05"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5lYXJseUV4aXRQZW5hbHR5"},{"node":{"key":"market.liquidity.maximumLiquidityFeeFactorLevel","value":"0.03"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5tYXhpbXVtTGlxdWlkaXR5RmVlRmFjdG9yTGV2ZWw="},{"node":{"key":"market.liquidity.minimum.probabilityOfTrading.lpOrders","value":"1e-6"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5taW5pbXVtLnByb2JhYmlsaXR5T2ZUcmFkaW5nLmxwT3JkZXJz"},{"node":{"key":"market.liquidity.probabilityOfTrading.tau.scaling","value":"10"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5wcm9iYWJpbGl0eU9mVHJhZGluZy50YXUuc2NhbGluZw=="},{"node":{"key":"market.liquidity.providers.fee.distributionTimeStep","value":"0m"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5wcm92aWRlcnMuZmVlLmRpc3RyaWJ1dGlvblRpbWVTdGVw"},{"node":{"key":"market.liquidity.providersFeeCalculationTimeStep","value":"1m"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5wcm92aWRlcnNGZWVDYWxjdWxhdGlvblRpbWVTdGVw"},{"node":{"key":"market.liquidity.sla.nonPerformanceBondPenaltyMax","value":"0.05"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zbGEubm9uUGVyZm9ybWFuY2VCb25kUGVuYWx0eU1heA=="},{"node":{"key":"market.liquidity.sla.nonPerformanceBondPenaltySlope","value":"1"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zbGEubm9uUGVyZm9ybWFuY2VCb25kUGVuYWx0eVNsb3Bl"},{"node":{"key":"market.liquidity.stakeToCcyVolume","value":"1.0"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zdGFrZVRvQ2N5Vm9sdW1l"},{"node":{"key":"market.liquidity.successorLaunchWindowLength","value":"168h"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zdWNjZXNzb3JMYXVuY2hXaW5kb3dMZW5ndGg="},{"node":{"key":"market.liquidity.targetstake.triggering.ratio","value":"0.25"},"cursor":"bWFya2V0LmxpcXVpZGl0eS50YXJnZXRzdGFrZS50cmlnZ2VyaW5nLnJhdGlv"},{"node":{"key":"market.liquidityProvision.minLpStakeQuantumMultiple","value":"5000"},"cursor":"bWFya2V0LmxpcXVpZGl0eVByb3Zpc2lvbi5taW5McFN0YWtlUXVhbnR1bU11bHRpcGxl"},{"node":{"key":"market.liquidityProvision.shapes.maxSize","value":"5"},"cursor":"bWFya2V0LmxpcXVpZGl0eVByb3Zpc2lvbi5zaGFwZXMubWF4U2l6ZQ=="},{"node":{"key":"market.margin.scalingFactors","value":"{\n \"search_level\": 1.1,\n \"initial_margin\": 1.5,\n \"collateral_release\": 1.7\n}"},"cursor":"bWFya2V0Lm1hcmdpbi5zY2FsaW5nRmFjdG9ycw=="},{"node":{"key":"market.monitor.price.defaultParameters","value":"{\"triggers\": [{\"auction_extension\": 300, \"horizon\": 43200, \"probability\": \"0.9999999\"}] }"},"cursor":"bWFya2V0Lm1vbml0b3IucHJpY2UuZGVmYXVsdFBhcmFtZXRlcnM="},{"node":{"key":"market.stake.target.scalingFactor","value":"0.0001"},"cursor":"bWFya2V0LnN0YWtlLnRhcmdldC5zY2FsaW5nRmFjdG9y"},{"node":{"key":"market.stake.target.timeWindow","value":"1h0m0s"},"cursor":"bWFya2V0LnN0YWtlLnRhcmdldC50aW1lV2luZG93"},{"node":{"key":"market.value.windowLength","value":"1h0m0s"},"cursor":"bWFya2V0LnZhbHVlLndpbmRvd0xlbmd0aA=="},{"node":{"key":"network.checkpoint.timeElapsedBetweenCheckpoints","value":"1m"},"cursor":"bmV0d29yay5jaGVja3BvaW50LnRpbWVFbGFwc2VkQmV0d2VlbkNoZWNrcG9pbnRz"},{"node":{"key":"network.floatingPointUpdates.delay","value":"5m"},"cursor":"bmV0d29yay5mbG9hdGluZ1BvaW50VXBkYXRlcy5kZWxheQ=="},{"node":{"key":"network.markPriceUpdateMaximumFrequency","value":"5s"},"cursor":"bmV0d29yay5tYXJrUHJpY2VVcGRhdGVNYXhpbXVtRnJlcXVlbmN5"},{"node":{"key":"network.transaction.defaultgas","value":"1"},"cursor":"bmV0d29yay50cmFuc2FjdGlvbi5kZWZhdWx0Z2Fz"},{"node":{"key":"network.transactions.maxgasperblock","value":"3000000"},"cursor":"bmV0d29yay50cmFuc2FjdGlvbnMubWF4Z2FzcGVyYmxvY2s="},{"node":{"key":"network.transactions.minBlockCapacity","value":"32"},"cursor":"bmV0d29yay50cmFuc2FjdGlvbnMubWluQmxvY2tDYXBhY2l0eQ=="},{"node":{"key":"network.validators.ersatz.multipleOfTendermintValidators","value":"0.5"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLmVyc2F0ei5tdWx0aXBsZU9mVGVuZGVybWludFZhbGlkYXRvcnM="},{"node":{"key":"network.validators.ersatz.rewardFactor","value":"0.85"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLmVyc2F0ei5yZXdhcmRGYWN0b3I="},{"node":{"key":"network.validators.incumbentBonus","value":"0.05"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLmluY3VtYmVudEJvbnVz"},{"node":{"key":"network.validators.minimumEthereumEventsForNewValidator","value":"3"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLm1pbmltdW1FdGhlcmV1bUV2ZW50c0Zvck5ld1ZhbGlkYXRvcg=="},{"node":{"key":"network.validators.multisig.numberOfSigners","value":"13"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLm11bHRpc2lnLm51bWJlck9mU2lnbmVycw=="},{"node":{"key":"network.validators.tendermint.number","value":"13"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLnRlbmRlcm1pbnQubnVtYmVy"},{"node":{"key":"referralProgram.maxPartyNotionalVolumeByQuantumPerEpoch","value":"250000"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFBhcnR5Tm90aW9uYWxWb2x1bWVCeVF1YW50dW1QZXJFcG9jaA=="},{"node":{"key":"referralProgram.maxReferralDiscountFactor","value":"0.1"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsRGlzY291bnRGYWN0b3I="},{"node":{"key":"referralProgram.maxReferralRewardFactor","value":"0.2"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsUmV3YXJkRmFjdG9y"},{"node":{"key":"referralProgram.maxReferralRewardProportion","value":"0.5"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsUmV3YXJkUHJvcG9ydGlvbg=="},{"node":{"key":"referralProgram.maxReferralTiers","value":"10"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsVGllcnM="},{"node":{"key":"referralProgram.minStakedVegaTokens","value":"0"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1pblN0YWtlZFZlZ2FUb2tlbnM="},{"node":{"key":"reward.asset","value":"fc7fd956078fb1fc9db5c19b88f0874c4299b2a7639ad05a47a28c0aef291b55"},"cursor":"cmV3YXJkLmFzc2V0"},{"node":{"key":"reward.staking.delegation.competitionLevel","value":"1.01"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5jb21wZXRpdGlvbkxldmVs"},{"node":{"key":"reward.staking.delegation.delegatorShare","value":"0.883"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5kZWxlZ2F0b3JTaGFyZQ=="},{"node":{"key":"reward.staking.delegation.maxPayoutPerEpoch","value":"9890000000000000000000"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5tYXhQYXlvdXRQZXJFcG9jaA=="},{"node":{"key":"reward.staking.delegation.maxPayoutPerParticipant","value":"700000000000000000000"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5tYXhQYXlvdXRQZXJQYXJ0aWNpcGFudA=="},{"node":{"key":"reward.staking.delegation.minValidators","value":"5"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5taW5WYWxpZGF0b3Jz"},{"node":{"key":"reward.staking.delegation.minimumValidatorStake","value":"3000000000000000000000"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5taW5pbXVtVmFsaWRhdG9yU3Rha2U="},{"node":{"key":"reward.staking.delegation.optimalStakeMultiplier","value":"3.0"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5vcHRpbWFsU3Rha2VNdWx0aXBsaWVy"},{"node":{"key":"reward.staking.delegation.payoutDelay","value":"6h"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5wYXlvdXREZWxheQ=="},{"node":{"key":"reward.staking.delegation.payoutFraction","value":"0.007"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5wYXlvdXRGcmFjdGlvbg=="},{"node":{"key":"rewards.activityStreak.benefitTiers","value":"{\"tiers\": [{\"minimum_activity_streak\": 1, \"reward_multiplier\": \"1.05\", \"vesting_multiplier\": \"1.05\"}, {\"minimum_activity_streak\": 6, \"reward_multiplier\": \"1.10\", \"vesting_multiplier\": \"1.10\"}, {\"minimum_activity_streak\": 24, \"reward_multiplier\": \"1.10\", \"vesting_multiplier\": \"1.15\"}, {\"minimum_activity_streak\": 72, \"reward_multiplier\": \"1.20\", \"vesting_multiplier\": \"1.20\"}]}"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5iZW5lZml0VGllcnM="},{"node":{"key":"rewards.activityStreak.inactivityLimit","value":"24"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5pbmFjdGl2aXR5TGltaXQ="},{"node":{"key":"rewards.activityStreak.minQuantumOpenVolume","value":"100"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5taW5RdWFudHVtT3BlblZvbHVtZQ=="},{"node":{"key":"rewards.activityStreak.minQuantumTradeVolume","value":"100"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5taW5RdWFudHVtVHJhZGVWb2x1bWU="},{"node":{"key":"rewards.marketCreationQuantumMultiple","value":"10000"},"cursor":"cmV3YXJkcy5tYXJrZXRDcmVhdGlvblF1YW50dW1NdWx0aXBsZQ=="},{"node":{"key":"rewards.team.minEpochsInTeam","value":"5"},"cursor":"cmV3YXJkcy50ZWFtLm1pbkVwb2Noc0luVGVhbQ=="},{"node":{"key":"rewards.vesting.baseRate","value":"0.0055"},"cursor":"cmV3YXJkcy52ZXN0aW5nLmJhc2VSYXRl"},{"node":{"key":"rewards.vesting.benefitTiers","value":"{\"tiers\": [{\"minimum_quantum_balance\": \"10\", \"reward_multiplier\": \"1.05\"}, {\"minimum_quantum_balance\": \"100\", \"reward_multiplier\": \"1.10\"},{\"minimum_quantum_balance\": \"1000\", \"reward_multiplier\": \"1.15\"},{\"minimum_quantum_balance\": \"10000\", \"reward_multiplier\": \"1.20\"}]}"},"cursor":"cmV3YXJkcy52ZXN0aW5nLmJlbmVmaXRUaWVycw=="},{"node":{"key":"rewards.vesting.minimumTransfer","value":"10"},"cursor":"cmV3YXJkcy52ZXN0aW5nLm1pbmltdW1UcmFuc2Zlcg=="},{"node":{"key":"snapshot.interval.length","value":"1000"},"cursor":"c25hcHNob3QuaW50ZXJ2YWwubGVuZ3Ro"},{"node":{"key":"spam.pow.difficulty","value":"15"},"cursor":"c3BhbS5wb3cuZGlmZmljdWx0eQ=="},{"node":{"key":"spam.pow.hashFunction","value":"sha3_24_rounds"},"cursor":"c3BhbS5wb3cuaGFzaEZ1bmN0aW9u"},{"node":{"key":"spam.pow.increaseDifficulty","value":"1"},"cursor":"c3BhbS5wb3cuaW5jcmVhc2VEaWZmaWN1bHR5"},{"node":{"key":"spam.pow.numberOfPastBlocks","value":"100"},"cursor":"c3BhbS5wb3cubnVtYmVyT2ZQYXN0QmxvY2tz"},{"node":{"key":"spam.pow.numberOfTxPerBlock","value":"100"},"cursor":"c3BhbS5wb3cubnVtYmVyT2ZUeFBlckJsb2Nr"},{"node":{"key":"spam.protection.applyReferral.min.funds","value":"10"},"cursor":"c3BhbS5wcm90ZWN0aW9uLmFwcGx5UmVmZXJyYWwubWluLmZ1bmRz"},{"node":{"key":"spam.protection.balanceSnapshotFrequency","value":"5s"},"cursor":"c3BhbS5wcm90ZWN0aW9uLmJhbGFuY2VTbmFwc2hvdEZyZXF1ZW5jeQ=="},{"node":{"key":"spam.protection.delegation.min.tokens","value":"100000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLmRlbGVnYXRpb24ubWluLnRva2Vucw=="},{"node":{"key":"spam.protection.max.applyReferralCode","value":"5"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5hcHBseVJlZmVycmFsQ29kZQ=="},{"node":{"key":"spam.protection.max.batchSize","value":"30"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5iYXRjaFNpemU="},{"node":{"key":"spam.protection.max.createReferralSet","value":"3"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5jcmVhdGVSZWZlcnJhbFNldA=="},{"node":{"key":"spam.protection.max.delegations","value":"390"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5kZWxlZ2F0aW9ucw=="},{"node":{"key":"spam.protection.max.proposals","value":"245"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5wcm9wb3NhbHM="},{"node":{"key":"spam.protection.max.stopOrdersPerMarket","value":"4"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5zdG9wT3JkZXJzUGVyTWFya2V0"},{"node":{"key":"spam.protection.max.updateReferralSet","value":"3"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC51cGRhdGVSZWZlcnJhbFNldA=="},{"node":{"key":"spam.protection.max.votes","value":"245"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC52b3Rlcw=="},{"node":{"key":"spam.protection.maxUserTransfersPerEpoch","value":"300"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heFVzZXJUcmFuc2ZlcnNQZXJFcG9jaA=="},{"node":{"key":"spam.protection.minMultisigUpdates","value":"100000000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1pbk11bHRpc2lnVXBkYXRlcw=="},{"node":{"key":"spam.protection.minimumWithdrawalQuantumMultiple","value":"10"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1pbmltdW1XaXRoZHJhd2FsUXVhbnR1bU11bHRpcGxl"},{"node":{"key":"spam.protection.proposal.min.tokens","value":"1000000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLnByb3Bvc2FsLm1pbi50b2tlbnM="},{"node":{"key":"spam.protection.voting.min.tokens","value":"1000000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLnZvdGluZy5taW4udG9rZW5z"},{"node":{"key":"transfer.fee.factor","value":"0.01"},"cursor":"dHJhbnNmZXIuZmVlLmZhY3Rvcg=="},{"node":{"key":"transfer.minTransferQuantumMultiple","value":"100"},"cursor":"dHJhbnNmZXIubWluVHJhbnNmZXJRdWFudHVtTXVsdGlwbGU="},{"node":{"key":"validator.performance.scaling.factor","value":"0"},"cursor":"dmFsaWRhdG9yLnBlcmZvcm1hbmNlLnNjYWxpbmcuZmFjdG9y"},{"node":{"key":"validators.delegation.minAmount","value":"100000000000000000"},"cursor":"dmFsaWRhdG9ycy5kZWxlZ2F0aW9uLm1pbkFtb3VudA=="},{"node":{"key":"validators.epoch.length","value":"30m"},"cursor":"dmFsaWRhdG9ycy5lcG9jaC5sZW5ndGg="},{"node":{"key":"validators.vote.required","value":"0.67"},"cursor":"dmFsaWRhdG9ycy52b3RlLnJlcXVpcmVk"},{"node":{"key":"volumeDiscountProgram.maxBenefitTiers","value":"10"},"cursor":"dm9sdW1lRGlzY291bnRQcm9ncmFtLm1heEJlbmVmaXRUaWVycw=="},{"node":{"key":"volumeDiscountProgram.maxVolumeDiscountFactor","value":"0.4"},"cursor":"dm9sdW1lRGlzY291bnRQcm9ncmFtLm1heFZvbHVtZURpc2NvdW50RmFjdG9y"}],"pageInfo":{"hasNextPage":false,"hasPreviousPage":false,"startCursor":"YmxvY2tjaGFpbnMuZXRoZXJldW1Db25maWc=","endCursor":"dm9sdW1lRGlzY291bnRQcm9ncmFtLm1heFZvbHVtZURpc2NvdW50RmFjdG9y"}}} \ No newline at end of file +{"networkParameters":{"edges":[{"node":{"key":"blockchains.ethereumConfig","value":"{\"network_id\":\"11155111\",\"chain_id\":\"11155111\",\"collateral_bridge_contract\":{\"address\":\"0xcC68d87cAEF9580E3F383d6438F7B3F2C71E3fe5\"},\"confirmations\":64,\"staking_bridge_contract\":{\"address\":\"0xFFb0A0d4806502ceF491aF1141f66669A1Bd0D03\",\"deployment_block_height\":2011705},\"token_vesting_contract\":{\"address\":\"0x680fF88252FA7071CAce7398e77872d54D781d0B\",\"deployment_block_height\":2011709},\"multisig_control_contract\":{\"address\":\"0x6eBc32d66277D94DB8FF2ccF86E36f37F29a52D3\",\"deployment_block_height\":2011699}}"},"cursor":"YmxvY2tjaGFpbnMuZXRoZXJldW1Db25maWc="},{"node":{"key":"blockchains.ethereumRpcAndEvmCompatDataSourcesConfig","value":"{\"configs\": []}"},"cursor":"YmxvY2tjaGFpbnMuZXRoZXJldW1ScGNBbmRFdm1Db21wYXREYXRhU291cmNlc0NvbmZpZw=="},{"node":{"key":"ethereum.oracles.enabled","value":"1"},"cursor":"ZXRoZXJldW0ub3JhY2xlcy5lbmFibGVk"},{"node":{"key":"governance.proposal.VolumeDiscountProgram.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.maxEnact","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minClose","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluQ2xvc2U="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minEnact","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluRW5hY3Q="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.VolumeDiscountProgram.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.VolumeDiscountProgram.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.VolumeDiscountProgram.requiredParticipation","value":"0.00001"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5Wb2x1bWVEaXNjb3VudFByb2dyYW0ucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.asset.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.asset.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.asset.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.asset.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.asset.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.asset.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.asset.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.asset.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5hc3NldC5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.freeform.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.freeform.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.freeform.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.freeform.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.freeform.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.freeform.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5mcmVlZm9ybS5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.market.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.market.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.market.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluQ2xvc2U="},{"node":{"key":"governance.proposal.market.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluRW5hY3Q="},{"node":{"key":"governance.proposal.market.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.market.minVoterBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.market.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.market.requiredParticipation","value":"0.07"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5tYXJrZXQucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.referralProgram.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.referralProgram.maxEnact","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.referralProgram.minClose","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluQ2xvc2U="},{"node":{"key":"governance.proposal.referralProgram.minEnact","value":"48h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluRW5hY3Q="},{"node":{"key":"governance.proposal.referralProgram.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.referralProgram.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.referralProgram.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.referralProgram.requiredParticipation","value":"0.00001"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC5yZWZlcnJhbFByb2dyYW0ucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.transfer.maxAmount","value":"7000000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhBbW91bnQ="},{"node":{"key":"governance.proposal.transfer.maxClose","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.transfer.maxEnact","value":"8760h0m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.transfer.maxFraction","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5tYXhGcmFjdGlvbg=="},{"node":{"key":"governance.proposal.transfer.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.transfer.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.transfer.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.transfer.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.transfer.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.transfer.requiredParticipation","value":"0.00001"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC50cmFuc2Zlci5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.updateAsset.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.updateAsset.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.updateAsset.minClose","value":"5s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.updateAsset.minEnact","value":"5s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.updateAsset.minProposerBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateAsset.minVoterBalance","value":"1000000000000000000"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateAsset.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.updateAsset.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVBc3NldC5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"governance.proposal.updateMarket.maxClose","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWF4Q2xvc2U="},{"node":{"key":"governance.proposal.updateMarket.maxEnact","value":"720h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWF4RW5hY3Q="},{"node":{"key":"governance.proposal.updateMarket.minClose","value":"0h1m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluQ2xvc2U="},{"node":{"key":"governance.proposal.updateMarket.minEnact","value":"0h1m0s"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluRW5hY3Q="},{"node":{"key":"governance.proposal.updateMarket.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluUHJvcG9zZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.updateMarket.minProposerEquityLikeShare","value":"0"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluUHJvcG9zZXJFcXVpdHlMaWtlU2hhcmU="},{"node":{"key":"governance.proposal.updateMarket.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQubWluVm90ZXJCYWxhbmNl"},{"node":{"key":"governance.proposal.updateMarket.requiredMajority","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRNYWpvcml0eQ=="},{"node":{"key":"governance.proposal.updateMarket.requiredMajorityLP","value":"0.66"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRNYWpvcml0eUxQ"},{"node":{"key":"governance.proposal.updateMarket.requiredParticipation","value":"0.07"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRQYXJ0aWNpcGF0aW9u"},{"node":{"key":"governance.proposal.updateMarket.requiredParticipationLP","value":"0"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVNYXJrZXQucmVxdWlyZWRQYXJ0aWNpcGF0aW9uTFA="},{"node":{"key":"governance.proposal.updateNetParam.maxClose","value":"1440h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5tYXhDbG9zZQ=="},{"node":{"key":"governance.proposal.updateNetParam.maxEnact","value":"1440h"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5tYXhFbmFjdA=="},{"node":{"key":"governance.proposal.updateNetParam.minClose","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5DbG9zZQ=="},{"node":{"key":"governance.proposal.updateNetParam.minEnact","value":"1m"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5FbmFjdA=="},{"node":{"key":"governance.proposal.updateNetParam.minProposerBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5Qcm9wb3NlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateNetParam.minVoterBalance","value":"1"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5taW5Wb3RlckJhbGFuY2U="},{"node":{"key":"governance.proposal.updateNetParam.requiredMajority","value":"0.5"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5yZXF1aXJlZE1ham9yaXR5"},{"node":{"key":"governance.proposal.updateNetParam.requiredParticipation","value":"0.09"},"cursor":"Z292ZXJuYW5jZS5wcm9wb3NhbC51cGRhdGVOZXRQYXJhbS5yZXF1aXJlZFBhcnRpY2lwYXRpb24="},{"node":{"key":"limits.assets.proposeEnabledFrom","value":""},"cursor":"bGltaXRzLmFzc2V0cy5wcm9wb3NlRW5hYmxlZEZyb20="},{"node":{"key":"limits.markets.maxPeggedOrders","value":"1500"},"cursor":"bGltaXRzLm1hcmtldHMubWF4UGVnZ2VkT3JkZXJz"},{"node":{"key":"limits.markets.proposeEnabledFrom","value":""},"cursor":"bGltaXRzLm1hcmtldHMucHJvcG9zZUVuYWJsZWRGcm9t"},{"node":{"key":"limits.markets.proposePerpetualEnabled","value":"1"},"cursor":"bGltaXRzLm1hcmtldHMucHJvcG9zZVBlcnBldHVhbEVuYWJsZWQ="},{"node":{"key":"limits.markets.proposeSpotEnabled","value":"0"},"cursor":"bGltaXRzLm1hcmtldHMucHJvcG9zZVNwb3RFbmFibGVk"},{"node":{"key":"market.auction.maximumDuration","value":"168h0m0s"},"cursor":"bWFya2V0LmF1Y3Rpb24ubWF4aW11bUR1cmF0aW9u"},{"node":{"key":"market.auction.minimumDuration","value":"30s"},"cursor":"bWFya2V0LmF1Y3Rpb24ubWluaW11bUR1cmF0aW9u"},{"node":{"key":"market.fee.factors.infrastructureFee","value":"0.0005"},"cursor":"bWFya2V0LmZlZS5mYWN0b3JzLmluZnJhc3RydWN0dXJlRmVl"},{"node":{"key":"market.fee.factors.makerFee","value":"0.0002"},"cursor":"bWFya2V0LmZlZS5mYWN0b3JzLm1ha2VyRmVl"},{"node":{"key":"market.liquidity.bondPenaltyParameter","value":"0.000001"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5ib25kUGVuYWx0eVBhcmFtZXRlcg=="},{"node":{"key":"market.liquidity.earlyExitPenalty","value":"0.05"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5lYXJseUV4aXRQZW5hbHR5"},{"node":{"key":"market.liquidity.maximumLiquidityFeeFactorLevel","value":"0.03"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5tYXhpbXVtTGlxdWlkaXR5RmVlRmFjdG9yTGV2ZWw="},{"node":{"key":"market.liquidity.minimum.probabilityOfTrading.lpOrders","value":"1e-6"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5taW5pbXVtLnByb2JhYmlsaXR5T2ZUcmFkaW5nLmxwT3JkZXJz"},{"node":{"key":"market.liquidity.probabilityOfTrading.tau.scaling","value":"10"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5wcm9iYWJpbGl0eU9mVHJhZGluZy50YXUuc2NhbGluZw=="},{"node":{"key":"market.liquidity.providers.fee.distributionTimeStep","value":"0m"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5wcm92aWRlcnMuZmVlLmRpc3RyaWJ1dGlvblRpbWVTdGVw"},{"node":{"key":"market.liquidity.providersFeeCalculationTimeStep","value":"1m"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5wcm92aWRlcnNGZWVDYWxjdWxhdGlvblRpbWVTdGVw"},{"node":{"key":"market.liquidity.sla.nonPerformanceBondPenaltyMax","value":"0.05"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zbGEubm9uUGVyZm9ybWFuY2VCb25kUGVuYWx0eU1heA=="},{"node":{"key":"market.liquidity.sla.nonPerformanceBondPenaltySlope","value":"1"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zbGEubm9uUGVyZm9ybWFuY2VCb25kUGVuYWx0eVNsb3Bl"},{"node":{"key":"market.liquidity.stakeToCcyVolume","value":"1.0"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zdGFrZVRvQ2N5Vm9sdW1l"},{"node":{"key":"market.liquidity.successorLaunchWindowLength","value":"168h"},"cursor":"bWFya2V0LmxpcXVpZGl0eS5zdWNjZXNzb3JMYXVuY2hXaW5kb3dMZW5ndGg="},{"node":{"key":"market.liquidity.targetstake.triggering.ratio","value":"0.25"},"cursor":"bWFya2V0LmxpcXVpZGl0eS50YXJnZXRzdGFrZS50cmlnZ2VyaW5nLnJhdGlv"},{"node":{"key":"market.liquidityProvision.minLpStakeQuantumMultiple","value":"5000"},"cursor":"bWFya2V0LmxpcXVpZGl0eVByb3Zpc2lvbi5taW5McFN0YWtlUXVhbnR1bU11bHRpcGxl"},{"node":{"key":"market.liquidityProvision.shapes.maxSize","value":"5"},"cursor":"bWFya2V0LmxpcXVpZGl0eVByb3Zpc2lvbi5zaGFwZXMubWF4U2l6ZQ=="},{"node":{"key":"market.margin.scalingFactors","value":"{\n \"search_level\": 1.1,\n \"initial_margin\": 1.5,\n \"collateral_release\": 1.7\n}"},"cursor":"bWFya2V0Lm1hcmdpbi5zY2FsaW5nRmFjdG9ycw=="},{"node":{"key":"market.monitor.price.defaultParameters","value":"{\"triggers\": [{\"auction_extension\": 300, \"horizon\": 43200, \"probability\": \"0.9999999\"}] }"},"cursor":"bWFya2V0Lm1vbml0b3IucHJpY2UuZGVmYXVsdFBhcmFtZXRlcnM="},{"node":{"key":"market.stake.target.scalingFactor","value":"0.0001"},"cursor":"bWFya2V0LnN0YWtlLnRhcmdldC5zY2FsaW5nRmFjdG9y"},{"node":{"key":"market.stake.target.timeWindow","value":"1h0m0s"},"cursor":"bWFya2V0LnN0YWtlLnRhcmdldC50aW1lV2luZG93"},{"node":{"key":"market.value.windowLength","value":"1h0m0s"},"cursor":"bWFya2V0LnZhbHVlLndpbmRvd0xlbmd0aA=="},{"node":{"key":"network.checkpoint.timeElapsedBetweenCheckpoints","value":"1m"},"cursor":"bmV0d29yay5jaGVja3BvaW50LnRpbWVFbGFwc2VkQmV0d2VlbkNoZWNrcG9pbnRz"},{"node":{"key":"network.floatingPointUpdates.delay","value":"5m"},"cursor":"bmV0d29yay5mbG9hdGluZ1BvaW50VXBkYXRlcy5kZWxheQ=="},{"node":{"key":"network.indexPriceUpdateFrequency","value":"5s"},"cursor":"bmV0d29yay5pbmRleFByaWNlVXBkYXRlRnJlcXVlbmN5"},{"node":{"key":"network.markPriceUpdateMaximumFrequency","value":"5s"},"cursor":"bmV0d29yay5tYXJrUHJpY2VVcGRhdGVNYXhpbXVtRnJlcXVlbmN5"},{"node":{"key":"network.transaction.defaultgas","value":"1"},"cursor":"bmV0d29yay50cmFuc2FjdGlvbi5kZWZhdWx0Z2Fz"},{"node":{"key":"network.transactions.maxgasperblock","value":"3000000"},"cursor":"bmV0d29yay50cmFuc2FjdGlvbnMubWF4Z2FzcGVyYmxvY2s="},{"node":{"key":"network.transactions.minBlockCapacity","value":"32"},"cursor":"bmV0d29yay50cmFuc2FjdGlvbnMubWluQmxvY2tDYXBhY2l0eQ=="},{"node":{"key":"network.validators.ersatz.multipleOfTendermintValidators","value":"0.5"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLmVyc2F0ei5tdWx0aXBsZU9mVGVuZGVybWludFZhbGlkYXRvcnM="},{"node":{"key":"network.validators.ersatz.rewardFactor","value":"0.85"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLmVyc2F0ei5yZXdhcmRGYWN0b3I="},{"node":{"key":"network.validators.incumbentBonus","value":"0.05"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLmluY3VtYmVudEJvbnVz"},{"node":{"key":"network.validators.minimumEthereumEventsForNewValidator","value":"3"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLm1pbmltdW1FdGhlcmV1bUV2ZW50c0Zvck5ld1ZhbGlkYXRvcg=="},{"node":{"key":"network.validators.multisig.numberOfSigners","value":"13"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLm11bHRpc2lnLm51bWJlck9mU2lnbmVycw=="},{"node":{"key":"network.validators.tendermint.number","value":"13"},"cursor":"bmV0d29yay52YWxpZGF0b3JzLnRlbmRlcm1pbnQubnVtYmVy"},{"node":{"key":"referralProgram.maxPartyNotionalVolumeByQuantumPerEpoch","value":"250000"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFBhcnR5Tm90aW9uYWxWb2x1bWVCeVF1YW50dW1QZXJFcG9jaA=="},{"node":{"key":"referralProgram.maxReferralDiscountFactor","value":"0.1"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsRGlzY291bnRGYWN0b3I="},{"node":{"key":"referralProgram.maxReferralRewardFactor","value":"0.2"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsUmV3YXJkRmFjdG9y"},{"node":{"key":"referralProgram.maxReferralRewardProportion","value":"0.5"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsUmV3YXJkUHJvcG9ydGlvbg=="},{"node":{"key":"referralProgram.maxReferralTiers","value":"10"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1heFJlZmVycmFsVGllcnM="},{"node":{"key":"referralProgram.minStakedVegaTokens","value":"0"},"cursor":"cmVmZXJyYWxQcm9ncmFtLm1pblN0YWtlZFZlZ2FUb2tlbnM="},{"node":{"key":"reward.asset","value":"fc7fd956078fb1fc9db5c19b88f0874c4299b2a7639ad05a47a28c0aef291b55"},"cursor":"cmV3YXJkLmFzc2V0"},{"node":{"key":"reward.staking.delegation.competitionLevel","value":"1.01"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5jb21wZXRpdGlvbkxldmVs"},{"node":{"key":"reward.staking.delegation.delegatorShare","value":"0.883"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5kZWxlZ2F0b3JTaGFyZQ=="},{"node":{"key":"reward.staking.delegation.maxPayoutPerEpoch","value":"9890000000000000000000"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5tYXhQYXlvdXRQZXJFcG9jaA=="},{"node":{"key":"reward.staking.delegation.maxPayoutPerParticipant","value":"700000000000000000000"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5tYXhQYXlvdXRQZXJQYXJ0aWNpcGFudA=="},{"node":{"key":"reward.staking.delegation.minValidators","value":"5"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5taW5WYWxpZGF0b3Jz"},{"node":{"key":"reward.staking.delegation.minimumValidatorStake","value":"3000000000000000000000"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5taW5pbXVtVmFsaWRhdG9yU3Rha2U="},{"node":{"key":"reward.staking.delegation.optimalStakeMultiplier","value":"3.0"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5vcHRpbWFsU3Rha2VNdWx0aXBsaWVy"},{"node":{"key":"reward.staking.delegation.payoutDelay","value":"6h"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5wYXlvdXREZWxheQ=="},{"node":{"key":"reward.staking.delegation.payoutFraction","value":"0.007"},"cursor":"cmV3YXJkLnN0YWtpbmcuZGVsZWdhdGlvbi5wYXlvdXRGcmFjdGlvbg=="},{"node":{"key":"rewards.activityStreak.benefitTiers","value":"{\"tiers\": [{\"minimum_activity_streak\": 1, \"reward_multiplier\": \"1.05\", \"vesting_multiplier\": \"1.05\"}, {\"minimum_activity_streak\": 6, \"reward_multiplier\": \"1.10\", \"vesting_multiplier\": \"1.10\"}, {\"minimum_activity_streak\": 24, \"reward_multiplier\": \"1.10\", \"vesting_multiplier\": \"1.15\"}, {\"minimum_activity_streak\": 72, \"reward_multiplier\": \"1.20\", \"vesting_multiplier\": \"1.20\"}]}"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5iZW5lZml0VGllcnM="},{"node":{"key":"rewards.activityStreak.inactivityLimit","value":"24"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5pbmFjdGl2aXR5TGltaXQ="},{"node":{"key":"rewards.activityStreak.minQuantumOpenVolume","value":"100"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5taW5RdWFudHVtT3BlblZvbHVtZQ=="},{"node":{"key":"rewards.activityStreak.minQuantumTradeVolume","value":"100"},"cursor":"cmV3YXJkcy5hY3Rpdml0eVN0cmVhay5taW5RdWFudHVtVHJhZGVWb2x1bWU="},{"node":{"key":"rewards.marketCreationQuantumMultiple","value":"10000"},"cursor":"cmV3YXJkcy5tYXJrZXRDcmVhdGlvblF1YW50dW1NdWx0aXBsZQ=="},{"node":{"key":"rewards.team.minEpochsInTeam","value":"5"},"cursor":"cmV3YXJkcy50ZWFtLm1pbkVwb2Noc0luVGVhbQ=="},{"node":{"key":"rewards.vesting.baseRate","value":"0.0055"},"cursor":"cmV3YXJkcy52ZXN0aW5nLmJhc2VSYXRl"},{"node":{"key":"rewards.vesting.benefitTiers","value":"{\"tiers\": [{\"minimum_quantum_balance\": \"10\", \"reward_multiplier\": \"1.05\"}, {\"minimum_quantum_balance\": \"100\", \"reward_multiplier\": \"1.10\"},{\"minimum_quantum_balance\": \"1000\", \"reward_multiplier\": \"1.15\"},{\"minimum_quantum_balance\": \"10000\", \"reward_multiplier\": \"1.20\"}]}"},"cursor":"cmV3YXJkcy52ZXN0aW5nLmJlbmVmaXRUaWVycw=="},{"node":{"key":"rewards.vesting.minimumTransfer","value":"10"},"cursor":"cmV3YXJkcy52ZXN0aW5nLm1pbmltdW1UcmFuc2Zlcg=="},{"node":{"key":"snapshot.interval.length","value":"1000"},"cursor":"c25hcHNob3QuaW50ZXJ2YWwubGVuZ3Ro"},{"node":{"key":"spam.pow.difficulty","value":"15"},"cursor":"c3BhbS5wb3cuZGlmZmljdWx0eQ=="},{"node":{"key":"spam.pow.hashFunction","value":"sha3_24_rounds"},"cursor":"c3BhbS5wb3cuaGFzaEZ1bmN0aW9u"},{"node":{"key":"spam.pow.increaseDifficulty","value":"1"},"cursor":"c3BhbS5wb3cuaW5jcmVhc2VEaWZmaWN1bHR5"},{"node":{"key":"spam.pow.numberOfPastBlocks","value":"100"},"cursor":"c3BhbS5wb3cubnVtYmVyT2ZQYXN0QmxvY2tz"},{"node":{"key":"spam.pow.numberOfTxPerBlock","value":"100"},"cursor":"c3BhbS5wb3cubnVtYmVyT2ZUeFBlckJsb2Nr"},{"node":{"key":"spam.protection.applyReferral.min.funds","value":"10"},"cursor":"c3BhbS5wcm90ZWN0aW9uLmFwcGx5UmVmZXJyYWwubWluLmZ1bmRz"},{"node":{"key":"spam.protection.balanceSnapshotFrequency","value":"5s"},"cursor":"c3BhbS5wcm90ZWN0aW9uLmJhbGFuY2VTbmFwc2hvdEZyZXF1ZW5jeQ=="},{"node":{"key":"spam.protection.delegation.min.tokens","value":"100000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLmRlbGVnYXRpb24ubWluLnRva2Vucw=="},{"node":{"key":"spam.protection.max.applyReferralCode","value":"5"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5hcHBseVJlZmVycmFsQ29kZQ=="},{"node":{"key":"spam.protection.max.batchSize","value":"30"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5iYXRjaFNpemU="},{"node":{"key":"spam.protection.max.createReferralSet","value":"3"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5jcmVhdGVSZWZlcnJhbFNldA=="},{"node":{"key":"spam.protection.max.delegations","value":"390"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5kZWxlZ2F0aW9ucw=="},{"node":{"key":"spam.protection.max.proposals","value":"245"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5wcm9wb3NhbHM="},{"node":{"key":"spam.protection.max.stopOrdersPerMarket","value":"4"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC5zdG9wT3JkZXJzUGVyTWFya2V0"},{"node":{"key":"spam.protection.max.updatePartyProfile","value":"5"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC51cGRhdGVQYXJ0eVByb2ZpbGU="},{"node":{"key":"spam.protection.max.updateReferralSet","value":"3"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC51cGRhdGVSZWZlcnJhbFNldA=="},{"node":{"key":"spam.protection.max.votes","value":"245"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heC52b3Rlcw=="},{"node":{"key":"spam.protection.maxUserTransfersPerEpoch","value":"300"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1heFVzZXJUcmFuc2ZlcnNQZXJFcG9jaA=="},{"node":{"key":"spam.protection.minMultisigUpdates","value":"100000000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1pbk11bHRpc2lnVXBkYXRlcw=="},{"node":{"key":"spam.protection.minimumWithdrawalQuantumMultiple","value":"10"},"cursor":"c3BhbS5wcm90ZWN0aW9uLm1pbmltdW1XaXRoZHJhd2FsUXVhbnR1bU11bHRpcGxl"},{"node":{"key":"spam.protection.proposal.min.tokens","value":"1000000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLnByb3Bvc2FsLm1pbi50b2tlbnM="},{"node":{"key":"spam.protection.updatePartyProfile.min.funds","value":"10"},"cursor":"c3BhbS5wcm90ZWN0aW9uLnVwZGF0ZVBhcnR5UHJvZmlsZS5taW4uZnVuZHM="},{"node":{"key":"spam.protection.voting.min.tokens","value":"1000000000000000000"},"cursor":"c3BhbS5wcm90ZWN0aW9uLnZvdGluZy5taW4udG9rZW5z"},{"node":{"key":"transfer.fee.factor","value":"0.01"},"cursor":"dHJhbnNmZXIuZmVlLmZhY3Rvcg=="},{"node":{"key":"transfer.fee.maxQuantumAmount","value":"1"},"cursor":"dHJhbnNmZXIuZmVlLm1heFF1YW50dW1BbW91bnQ="},{"node":{"key":"transfer.feeDiscountDecayFraction","value":"0.5"},"cursor":"dHJhbnNmZXIuZmVlRGlzY291bnREZWNheUZyYWN0aW9u"},{"node":{"key":"transfer.feeDiscountMinimumTrackedAmount","value":"0.001"},"cursor":"dHJhbnNmZXIuZmVlRGlzY291bnRNaW5pbXVtVHJhY2tlZEFtb3VudA=="},{"node":{"key":"transfer.minTransferQuantumMultiple","value":"100"},"cursor":"dHJhbnNmZXIubWluVHJhbnNmZXJRdWFudHVtTXVsdGlwbGU="},{"node":{"key":"validator.performance.scaling.factor","value":"0"},"cursor":"dmFsaWRhdG9yLnBlcmZvcm1hbmNlLnNjYWxpbmcuZmFjdG9y"},{"node":{"key":"validators.delegation.minAmount","value":"100000000000000000"},"cursor":"dmFsaWRhdG9ycy5kZWxlZ2F0aW9uLm1pbkFtb3VudA=="},{"node":{"key":"validators.epoch.length","value":"30m"},"cursor":"dmFsaWRhdG9ycy5lcG9jaC5sZW5ndGg="},{"node":{"key":"validators.vote.required","value":"0.67"},"cursor":"dmFsaWRhdG9ycy52b3RlLnJlcXVpcmVk"},{"node":{"key":"volumeDiscountProgram.maxBenefitTiers","value":"10"},"cursor":"dm9sdW1lRGlzY291bnRQcm9ncmFtLm1heEJlbmVmaXRUaWVycw=="},{"node":{"key":"volumeDiscountProgram.maxVolumeDiscountFactor","value":"0.4"},"cursor":"dm9sdW1lRGlzY291bnRQcm9ncmFtLm1heFZvbHVtZURpc2NvdW50RmFjdG9y"}],"pageInfo":{"hasNextPage":false,"hasPreviousPage":false,"startCursor":"YmxvY2tjaGFpbnMuZXRoZXJldW1Db25maWc=","endCursor":"dm9sdW1lRGlzY291bnRQcm9ncmFtLm1heFZvbHVtZURpc2NvdW50RmFjdG9y"}}} \ No newline at end of file diff --git a/specs/testnet_vaguer.json b/specs/testnet_vaguer.json index 7bc2d341a..8b92fa5ab 100644 --- a/specs/testnet_vaguer.json +++ b/specs/testnet_vaguer.json @@ -1 +1 @@ -[{"host":"api.n00.testnet.vega.rocks/graphql","blockHeight":"21535518","totalPeers":"12","startupHash":"317ab6","paramHash":"309275","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"8c787a","https":"✓","🥇":"🥇"},{"host":"api.n06.testnet.vega.rocks/graphql","blockHeight":"21535518","totalPeers":"12","startupHash":"317ab6","paramHash":"309275","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"8c787a","https":"✓","🥇":"🥇"},{"host":"api.n07.testnet.vega.rocks/graphql","blockHeight":"21535518","totalPeers":"12","startupHash":"317ab6","paramHash":"309275","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"8c787a","https":"✓","🥇":"🥇"},{"host":"api.n08.testnet.vega.rocks/graphql","blockHeight":"21535518","totalPeers":"12","startupHash":"317ab6","paramHash":"309275","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"8c787a","https":"✓","🥇":"🥇"},{"host":"api.n09.testnet.vega.rocks/graphql","blockHeight":"21535518","totalPeers":"12","startupHash":"317ab6","paramHash":"309275","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"8c787a","https":"✓","🥇":"🥇"}] +[{"host":"api.n00.testnet.vega.rocks/graphql","blockHeight":"22404031","totalPeers":"10","startupHash":"b9d765","paramHash":"f6d6bd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"48c387","https":"✓","🥇":"🥇"},{"host":"api.n06.testnet.vega.rocks/graphql","blockHeight":"22404031","totalPeers":"11","startupHash":"b9d765","paramHash":"f6d6bd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"48c387","https":"✓","🥇":"🥇"},{"host":"api.n07.testnet.vega.rocks/graphql","blockHeight":"22404031","totalPeers":"10","startupHash":"b9d765","paramHash":"f6d6bd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"48c387","https":"✓","🥇":"🥇"},{"host":"api.n08.testnet.vega.rocks/graphql","blockHeight":"22404032","totalPeers":"11","startupHash":"b9d765","paramHash":"f6d6bd","steakHash":"09cfc7","marketsHash":"09cfc7","assetsHash":"09cfc7","governanceHash":"09cfc7","hashHash":"48c387","https":"✓","🥇":"🥇"}] diff --git a/specs/testnet_vaguer_timestamp.json b/specs/testnet_vaguer_timestamp.json index a1d083dd7..09407ec70 100644 --- a/specs/testnet_vaguer_timestamp.json +++ b/specs/testnet_vaguer_timestamp.json @@ -1 +1 @@ -{"date": "Tue 16 Jan 2024 14:36:23 UTC", "timestamp": "1705415783"} +{"date": "Fri 26 Jan 2024 14:42:58 UTC", "timestamp": "1706280178"} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/data-node/api/v2/trading_data.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/data-node/api/v2/trading_data.swagger.json deleted file mode 100644 index 2a5dc57e0..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/data-node/api/v2/trading_data.swagger.json +++ /dev/null @@ -1,13191 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega data node APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "TradingDataService" - } - ], - "host": "https://api.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "FundingPeriodDataPointSource": { - "type": "string", - "enum": [ - "SOURCE_UNSPECIFIED", - "SOURCE_EXTERNAL", - "SOURCE_INTERNAL" - ], - "default": "SOURCE_UNSPECIFIED", - "description": " - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market." - }, - "ListTransfersRequestScope": { - "type": "string", - "enum": [ - "SCOPE_UNSPECIFIED", - "SCOPE_INDIVIDUAL", - "SCOPE_TEAM" - ], - "default": "SCOPE_UNSPECIFIED", - "description": "Defines the types of a dispatch strategy's scope the API can filter on.\n\n - SCOPE_INDIVIDUAL: Matches transfers that have dispatch strategy scope of individual set.\n - SCOPE_TEAM: Matches transfers that have dispatch strategy scope of team set." - }, - "MarketTradingMode": { - "type": "string", - "enum": [ - "TRADING_MODE_UNSPECIFIED", - "TRADING_MODE_CONTINUOUS", - "TRADING_MODE_BATCH_AUCTION", - "TRADING_MODE_OPENING_AUCTION", - "TRADING_MODE_MONITORING_AUCTION", - "TRADING_MODE_NO_TRADING", - "TRADING_MODE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "TRADING_MODE_UNSPECIFIED", - "description": "- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance", - "title": "Trading mode the market is currently running, also referred to as 'market state'" - }, - "OracleDataSubmissionOracleSource": { - "type": "string", - "enum": [ - "ORACLE_SOURCE_UNSPECIFIED", - "ORACLE_SOURCE_OPEN_ORACLE", - "ORACLE_SOURCE_JSON", - "ORACLE_SOURCE_ETHEREUM" - ], - "default": "ORACLE_SOURCE_UNSPECIFIED", - "description": "- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.", - "title": "Supported oracle sources" - }, - "OrderTimeInForce": { - "type": "string", - "enum": [ - "TIME_IN_FORCE_UNSPECIFIED", - "TIME_IN_FORCE_GTC", - "TIME_IN_FORCE_GTT", - "TIME_IN_FORCE_IOC", - "TIME_IN_FORCE_FOK", - "TIME_IN_FORCE_GFA", - "TIME_IN_FORCE_GFN" - ], - "default": "TIME_IN_FORCE_UNSPECIFIED", - "description": "- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)", - "title": "Time In Force for an order" - }, - "StopOrderExpiryStrategy": { - "type": "string", - "enum": [ - "EXPIRY_STRATEGY_UNSPECIFIED", - "EXPIRY_STRATEGY_CANCELS", - "EXPIRY_STRATEGY_SUBMIT" - ], - "default": "EXPIRY_STRATEGY_UNSPECIFIED", - "description": " - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached." - }, - "StopOrderRejectionReason": { - "type": "string", - "enum": [ - "REJECTION_REASON_UNSPECIFIED", - "REJECTION_REASON_TRADING_NOT_ALLOWED", - "REJECTION_REASON_EXPIRY_IN_THE_PAST", - "REJECTION_REASON_MUST_BE_REDUCE_ONLY", - "REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION", - "REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION", - "REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION", - "REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES" - ], - "default": "REJECTION_REASON_UNSPECIFIED", - "title": "- REJECTION_REASON_UNSPECIFIED: Never valid\n - REJECTION_REASON_TRADING_NOT_ALLOWED: Trading is not allowed yet\n - REJECTION_REASON_EXPIRY_IN_THE_PAST: Expiry of the stop order is in the past\n - REJECTION_REASON_MUST_BE_REDUCE_ONLY: Stop orders submission must be reduce only\n - REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED: Party has reached the maximum stop orders allowed for this market\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION: Stop orders are not allowed if there is no open position\n - REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION: This stop order does not close the position\n - REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID: The percentage value for the linked stop order is invalid\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION: Stop orders are not allowed during the opening auction\n - REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES: Stop OCO orders cannot have the same expiry timestamp" - }, - "StopOrderSizeOverrideSetting": { - "type": "string", - "enum": [ - "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "SIZE_OVERRIDE_SETTING_NONE", - "SIZE_OVERRIDE_SETTING_POSITION" - ], - "default": "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "title": "- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader" - }, - "StopOrderSizeOverrideValue": { - "type": "object", - "properties": { - "percentage": { - "type": "string", - "title": "Scaling percentage of the current position’s size" - } - } - }, - "StopOrderTriggerDirection": { - "type": "string", - "enum": [ - "TRIGGER_DIRECTION_UNSPECIFIED", - "TRIGGER_DIRECTION_RISES_ABOVE", - "TRIGGER_DIRECTION_FALLS_BELOW" - ], - "default": "TRIGGER_DIRECTION_UNSPECIFIED", - "title": "- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level" - }, - "TransactionResultFailureDetails": { - "type": "object", - "properties": { - "error": { - "type": "string", - "title": "Error message explaining the reason for the transaction failing processing" - } - } - }, - "TransactionResultSuccessDetails": { - "type": "object" - }, - "UpdateMarginModeMode": { - "type": "string", - "enum": [ - "MODE_UNSPECIFIED", - "MODE_CROSS_MARGIN", - "MODE_ISOLATED_MARGIN" - ], - "default": "MODE_UNSPECIFIED", - "title": "- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "apiHttpBody": { - "type": "object", - "properties": { - "contentType": { - "type": "string", - "description": "The HTTP Content-Type header value specifying the content type of the body." - }, - "data": { - "type": "string", - "format": "byte", - "description": "The HTTP request/response body as raw binary." - }, - "extensions": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - }, - "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs." - } - }, - "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged." - }, - "apiv2Candle": { - "type": "object", - "properties": { - "start": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened." - }, - "lastUpdate": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for the point in time when the candle was last updated." - }, - "high": { - "type": "string", - "description": "Highest price for trading during the candle interval." - }, - "low": { - "type": "string", - "description": "Lowest price for trading during the candle interval." - }, - "open": { - "type": "string", - "description": "Open trade price." - }, - "close": { - "type": "string", - "description": "Closing trade price." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Total trading volume during the candle interval." - }, - "notional": { - "type": "string", - "format": "uint64", - "description": "Total notional value traded during the candle interval." - } - }, - "title": "Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle" - }, - "apiv2FundingPayment": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party that received the funding payment." - }, - "marketId": { - "type": "string", - "description": "Market that produced the funding payment." - }, - "fundingPeriodSeq": { - "type": "string", - "format": "uint64", - "description": "Funding period sequence this payment was calculated from." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, at which this funding payment occured." - }, - "amount": { - "type": "string", - "description": "Funding payment amount, where a positive value indicates an earned payment received and a negative value a loss." - } - }, - "title": "A funding payment for a party on a perpetual market" - }, - "apiv2LiquidityProvision": { - "type": "object", - "properties": { - "current": { - "$ref": "#/definitions/vegaLiquidityProvision", - "description": "Liquidity provision that is currently live." - }, - "pending": { - "$ref": "#/definitions/vegaLiquidityProvision", - "description": "Liquidity provision that is currently pending and will go live in the next epoch." - } - }, - "description": "Liquidity provider commitment. For API purposes this can report a pending liquidity provision,\nthe current live provision or both in the event that an update has been accepted on the network, but has yet\nto go live and thus there is still a pending provision that will become active in the next epoch." - }, - "apiv2ReferralProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined tiers in increasing order. First element will give Tier 1, second\nelement will give Tier 2, and so on." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends, the\nprogram will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which the referral set's running volume is evaluated." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the program ended." - } - }, - "description": "Referral program details." - }, - "apiv2Team": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "ID of the created team." - }, - "referrer": { - "type": "string", - "description": "Party ID that created the team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the team was created." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "createdAtEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the team was created." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams." - } - }, - "description": "Team record containing the team information." - }, - "apiv2VolumeDiscountProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which a volume discount statistics' running volume is evaluated." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, at which the program ended." - } - }, - "description": "Volume discount program details." - }, - "commandsv1CancelTransfer": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer ID of the transfer to cancel." - } - }, - "description": "Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction." - }, - "eventsv1FundingPayment": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "ID of the party." - }, - "amount": { - "type": "string", - "description": "The amount paid, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "The amount gained or lost by a party as a result of a funding payment." - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics." - } - }, - "additionalProperties": {}, - "description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := \u0026pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }" - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1AnnounceNode": { - "type": "object", - "properties": { - "vegaPubKey": { - "type": "string", - "description": "Vega public key of the node being announced." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node being announced." - }, - "chainPubKey": { - "type": "string", - "description": "Public key for the blockchain, currently the node's CometBFT key." - }, - "infoUrl": { - "type": "string", - "description": "URL to the node operators homepage allowing stake holders to make an informed decision when delegating." - }, - "country": { - "type": "string", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node." - }, - "id": { - "type": "string", - "description": "Node ID of the validator, which is the node's public master key." - }, - "name": { - "type": "string", - "description": "Human-readable name of the node." - }, - "avatarUrl": { - "type": "string", - "description": "URL to the node operator's avatar." - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "Vega public key derivation index." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch from which the node is expected to be ready to validate blocks." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the Vega wallet." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - } - }, - "description": "A command that allows a new node operator to announce themselves to the network as a new validator." - }, - "v1ApplyReferralCode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Referral code, normally the referral set ID, for the party to join." - } - }, - "description": "Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch." - }, - "v1AuctionEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "openingAuction": { - "type": "boolean", - "title": "True if the event indicates an auction opening and False otherwise" - }, - "leave": { - "type": "boolean", - "title": "True if the event indicates leaving auction mode and False otherwise" - }, - "start": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the start time for an auction" - }, - "end": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the end time for an auction" - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "Reason this market is/was in auction" - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction" - } - }, - "title": "Auction event indicating a change in auction state, for example starting or ending an auction" - }, - "v1BatchMarketInstructions": { - "type": "object", - "properties": { - "cancellations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "description": "List of order cancellations to be processed sequentially." - }, - "amendments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "description": "List of order amendments to be processed sequentially." - }, - "submissions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "description": "List of order submissions to be processed sequentially." - }, - "stopOrdersCancellation": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "description": "List of stop order cancellations to be processed sequentially." - }, - "stopOrdersSubmission": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "description": "List of stop order submissions to be processed sequentially." - }, - "updateMarginMode": { - "type": "array", - "items": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "title": "Update margin mode instruction" - } - }, - "description": "A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\"." - }, - "v1BatchProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/v1BatchProposalSubmissionTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it." - }, - "v1BatchProposalSubmissionTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal submission" - }, - "v1BeginBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "hash": { - "type": "string" - } - }, - "title": "BeginBlock" - }, - "v1BusEvent": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Unique event ID for the message" - }, - "block": { - "type": "string", - "title": "The batch or block of transactions that the events relate to" - }, - "type": { - "$ref": "#/definitions/v1BusEventType", - "title": "The type of bus event. Must be one of the list below:" - }, - "timeUpdate": { - "$ref": "#/definitions/v1TimeUpdate", - "title": "Time update events" - }, - "ledgerMovements": { - "$ref": "#/definitions/v1LedgerMovements", - "title": "Transfer responses update events" - }, - "positionResolution": { - "$ref": "#/definitions/v1PositionResolution", - "title": "Position resolution events" - }, - "order": { - "$ref": "#/definitions/vegaOrder", - "title": "Order events" - }, - "account": { - "$ref": "#/definitions/vegaAccount", - "title": "Account events" - }, - "party": { - "$ref": "#/definitions/vegaParty", - "title": "Party events" - }, - "trade": { - "$ref": "#/definitions/vegaTrade", - "title": "Trade events" - }, - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "title": "Margin level update events" - }, - "proposal": { - "$ref": "#/definitions/vegaProposal", - "title": "Proposal events for governance" - }, - "vote": { - "$ref": "#/definitions/vegaVote", - "title": "Vote events for governance" - }, - "marketData": { - "$ref": "#/definitions/vegaMarketData", - "title": "Market data events" - }, - "nodeSignature": { - "$ref": "#/definitions/v1NodeSignature", - "title": "Node signature events" - }, - "lossSocialization": { - "$ref": "#/definitions/v1LossSocialization", - "title": "Loss socialization events" - }, - "settlePosition": { - "$ref": "#/definitions/v1SettlePosition", - "title": "Position settlement events" - }, - "settleDistressed": { - "$ref": "#/definitions/v1SettleDistressed", - "title": "Position distressed events" - }, - "marketCreated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "asset": { - "$ref": "#/definitions/vegaAsset", - "title": "Asset events" - }, - "marketTick": { - "$ref": "#/definitions/v1MarketTick", - "title": "Market tick events" - }, - "withdrawal": { - "$ref": "#/definitions/vegaWithdrawal", - "title": "Withdrawal events" - }, - "deposit": { - "$ref": "#/definitions/vegaDeposit", - "title": "Deposit events" - }, - "auction": { - "$ref": "#/definitions/v1AuctionEvent", - "title": "Auction events" - }, - "riskFactor": { - "$ref": "#/definitions/vegaRiskFactor", - "title": "Risk factor events" - }, - "networkParameter": { - "$ref": "#/definitions/vegaNetworkParameter", - "title": "Network parameter events" - }, - "liquidityProvision": { - "$ref": "#/definitions/vegaLiquidityProvision", - "title": "LiquidityProvision events" - }, - "marketUpdated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "oracleSpec": { - "$ref": "#/definitions/vegaOracleSpec", - "title": "OracleSpec events" - }, - "oracleData": { - "$ref": "#/definitions/vegaOracleData", - "title": "OracleData events" - }, - "delegationBalance": { - "$ref": "#/definitions/v1DelegationBalanceEvent", - "title": "Delegation balance events" - }, - "validatorScore": { - "$ref": "#/definitions/v1ValidatorScoreEvent", - "title": "Validator score calculated" - }, - "epochEvent": { - "$ref": "#/definitions/v1EpochEvent", - "title": "Epoch update events" - }, - "validatorUpdate": { - "$ref": "#/definitions/v1ValidatorUpdate", - "title": "Validator update events" - }, - "stakeLinking": { - "$ref": "#/definitions/v1StakeLinking", - "title": "Staking event" - }, - "rewardPayout": { - "$ref": "#/definitions/v1RewardPayoutEvent", - "title": "Reward payout event" - }, - "checkpoint": { - "$ref": "#/definitions/v1CheckpointEvent", - "title": "Checkpoint was created" - }, - "keyRotation": { - "$ref": "#/definitions/v1KeyRotation", - "title": "Key rotation took place" - }, - "stateVar": { - "$ref": "#/definitions/v1StateVar", - "title": "State variable consensus state transition update" - }, - "networkLimits": { - "$ref": "#/definitions/vegaNetworkLimits", - "title": "Network limits events" - }, - "transfer": { - "$ref": "#/definitions/vegaeventsv1Transfer", - "title": "Transfer event" - }, - "rankingEvent": { - "$ref": "#/definitions/v1ValidatorRankingEvent", - "title": "Ranking event" - }, - "erc20MultisigSignerEvent": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEvent", - "title": "ERC20 multi sig signer event" - }, - "erc20MultisigSetThresholdEvent": { - "$ref": "#/definitions/v1ERC20MultiSigThresholdSetEvent", - "title": "ERC20 multi sig set threshold event" - }, - "erc20MultisigSignerAdded": { - "$ref": "#/definitions/v1ERC20MultiSigSignerAdded", - "title": "ERC20 multi sig signer added" - }, - "erc20MultisigSignerRemoved": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemoved", - "title": "ERC20 multi sig signer removed" - }, - "positionStateEvent": { - "$ref": "#/definitions/v1PositionStateEvent", - "title": "Position status for a party in a market" - }, - "ethereumKeyRotation": { - "$ref": "#/definitions/v1EthereumKeyRotation", - "title": "Ethereum key rotation took place" - }, - "protocolUpgradeEvent": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent", - "title": "Protocol upgrade proposal updates" - }, - "beginBlock": { - "$ref": "#/definitions/v1BeginBlock", - "title": "Core is starting to process a new block" - }, - "endBlock": { - "$ref": "#/definitions/v1EndBlock", - "title": "Core finished processing a block" - }, - "protocolUpgradeStarted": { - "$ref": "#/definitions/v1ProtocolUpgradeStarted", - "title": "Core is starting a protocol upgrade" - }, - "settleMarket": { - "$ref": "#/definitions/v1SettleMarket", - "title": "Settle market event for data-node to update positions for settled markets" - }, - "transactionResult": { - "$ref": "#/definitions/v1TransactionResult", - "title": "Result of a transaction processed by the network" - }, - "coreSnapshotEvent": { - "$ref": "#/definitions/v1CoreSnapshotData", - "title": "Core snapshot has been taken at the end of the block" - }, - "protocolUpgradeDataNodeReady": { - "$ref": "#/definitions/v1ProtocolUpgradeDataNodeReady", - "title": "Core snapshot has been taken at the end of the block" - }, - "distressedOrders": { - "$ref": "#/definitions/v1DistressedOrders", - "title": "Parties that had their orders closed because they were distressed" - }, - "expiredOrders": { - "$ref": "#/definitions/v1ExpiredOrders", - "title": "Orders that expired for a given market" - }, - "distressedPositions": { - "$ref": "#/definitions/v1DistressedPositions", - "title": "Open positions on the market that are/were distressed" - }, - "stopOrder": { - "$ref": "#/definitions/v1StopOrderEvent", - "title": "A stop order event" - }, - "fundingPeriod": { - "$ref": "#/definitions/v1FundingPeriod", - "description": "Start or end of a funding period." - }, - "fundingPeriodDataPoint": { - "$ref": "#/definitions/v1FundingPeriodDataPoint", - "description": "Data point within a funding period." - }, - "teamCreated": { - "$ref": "#/definitions/v1TeamCreated", - "title": "Event notifying of the creation of a team.m" - }, - "teamUpdated": { - "$ref": "#/definitions/v1TeamUpdated", - "description": "Event notifying of an update to a team." - }, - "refereeSwitchedTeam": { - "$ref": "#/definitions/v1RefereeSwitchedTeam", - "description": "Event notifying that a referee switched teams." - }, - "refereeJoinedTeam": { - "$ref": "#/definitions/v1RefereeJoinedTeam", - "description": "Event notifying that a referee joined a team." - }, - "referralProgramStarted": { - "$ref": "#/definitions/v1ReferralProgramStarted", - "description": "Event notifying that a referral program has started." - }, - "referralProgramUpdated": { - "$ref": "#/definitions/v1ReferralProgramUpdated", - "description": "Event notifying that a referral program has been updated." - }, - "referralProgramEnded": { - "$ref": "#/definitions/v1ReferralProgramEnded", - "description": "Event notifying that a referral program has ended." - }, - "referralSetCreated": { - "$ref": "#/definitions/v1ReferralSetCreated", - "description": "Event notifying a referral set has been created." - }, - "refereeJoinedReferralSet": { - "$ref": "#/definitions/v1RefereeJoinedReferralSet", - "description": "Event notifying a referee has joined a referral set." - }, - "partyActivityStreak": { - "$ref": "#/definitions/v1PartyActivityStreak", - "title": "Event notifying of an update to a party's activity streak" - }, - "volumeDiscountProgramStarted": { - "$ref": "#/definitions/v1VolumeDiscountProgramStarted", - "description": "Event notifying that a volume discount program has started." - }, - "volumeDiscountProgramUpdated": { - "$ref": "#/definitions/v1VolumeDiscountProgramUpdated", - "description": "Event notifying that a volume discount program has been updated." - }, - "volumeDiscountProgramEnded": { - "$ref": "#/definitions/v1VolumeDiscountProgramEnded", - "description": "Event notifying that a volume discount program has ended." - }, - "referralSetStatsUpdated": { - "$ref": "#/definitions/v1ReferralSetStatsUpdated", - "description": "Event notifying of an update to a referral set's statistics." - }, - "vestingStatsUpdated": { - "$ref": "#/definitions/v1VestingStatsUpdated", - "description": "Event notifying of an update to the vesting statistics." - }, - "volumeDiscountStatsUpdated": { - "$ref": "#/definitions/v1VolumeDiscountStatsUpdated", - "description": "Event notifying of an update to the volume discount statistics." - }, - "feesStats": { - "$ref": "#/definitions/v1FeesStats", - "description": "Event notifying of an update the fees stats for a market." - }, - "fundingPayments": { - "$ref": "#/definitions/v1FundingPayments", - "description": "Event notifying of funding payments at the end of a funding period." - }, - "paidLiquidityFeesStats": { - "$ref": "#/definitions/v1PaidLiquidityFeesStats", - "description": "Event notifying of an update to the liqudity fees stats for a market." - }, - "vestingBalancesSummary": { - "$ref": "#/definitions/v1VestingBalancesSummary", - "description": "Event notifying of an update to the vesting and locked balances." - }, - "transferFees": { - "$ref": "#/definitions/v1TransferFees", - "description": "Event notifying of fees related to a transfer being paid." - }, - "transferFeesDiscount": { - "$ref": "#/definitions/v1TransferFeesDiscount", - "description": "Event notifying of a party's available discounts for transfer fees, per asset." - }, - "partyMarginModeUpdated": { - "$ref": "#/definitions/v1PartyMarginModeUpdated", - "description": "Event notifying of a party's margin mode update on a market." - }, - "partyProfileUpdated": { - "$ref": "#/definitions/v1PartyProfileUpdated", - "description": "Event notifying of a party's profile update." - }, - "market": { - "$ref": "#/definitions/v1MarketEvent", - "title": "Market tick events" - }, - "txErrEvent": { - "$ref": "#/definitions/v1TxErrorEvent", - "title": "Transaction error events, not included in the ALL event type" - }, - "version": { - "type": "integer", - "format": "int64", - "title": "Version of bus event" - }, - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - } - }, - "title": "Bus event is a container for event bus events emitted by Vega" - }, - "v1BusEventType": { - "type": "string", - "enum": [ - "BUS_EVENT_TYPE_UNSPECIFIED", - "BUS_EVENT_TYPE_ALL", - "BUS_EVENT_TYPE_TIME_UPDATE", - "BUS_EVENT_TYPE_LEDGER_MOVEMENTS", - "BUS_EVENT_TYPE_POSITION_RESOLUTION", - "BUS_EVENT_TYPE_ORDER", - "BUS_EVENT_TYPE_ACCOUNT", - "BUS_EVENT_TYPE_PARTY", - "BUS_EVENT_TYPE_TRADE", - "BUS_EVENT_TYPE_MARGIN_LEVELS", - "BUS_EVENT_TYPE_PROPOSAL", - "BUS_EVENT_TYPE_VOTE", - "BUS_EVENT_TYPE_MARKET_DATA", - "BUS_EVENT_TYPE_NODE_SIGNATURE", - "BUS_EVENT_TYPE_LOSS_SOCIALIZATION", - "BUS_EVENT_TYPE_SETTLE_POSITION", - "BUS_EVENT_TYPE_SETTLE_DISTRESSED", - "BUS_EVENT_TYPE_MARKET_CREATED", - "BUS_EVENT_TYPE_ASSET", - "BUS_EVENT_TYPE_MARKET_TICK", - "BUS_EVENT_TYPE_WITHDRAWAL", - "BUS_EVENT_TYPE_DEPOSIT", - "BUS_EVENT_TYPE_AUCTION", - "BUS_EVENT_TYPE_RISK_FACTOR", - "BUS_EVENT_TYPE_NETWORK_PARAMETER", - "BUS_EVENT_TYPE_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_MARKET_UPDATED", - "BUS_EVENT_TYPE_ORACLE_SPEC", - "BUS_EVENT_TYPE_ORACLE_DATA", - "BUS_EVENT_TYPE_DELEGATION_BALANCE", - "BUS_EVENT_TYPE_VALIDATOR_SCORE", - "BUS_EVENT_TYPE_EPOCH_UPDATE", - "BUS_EVENT_TYPE_VALIDATOR_UPDATE", - "BUS_EVENT_TYPE_STAKE_LINKING", - "BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT", - "BUS_EVENT_TYPE_CHECKPOINT", - "BUS_EVENT_TYPE_STREAM_START", - "BUS_EVENT_TYPE_KEY_ROTATION", - "BUS_EVENT_TYPE_STATE_VAR", - "BUS_EVENT_TYPE_NETWORK_LIMITS", - "BUS_EVENT_TYPE_TRANSFER", - "BUS_EVENT_TYPE_VALIDATOR_RANKING", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED", - "BUS_EVENT_TYPE_POSITION_STATE", - "BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL", - "BUS_EVENT_TYPE_BEGIN_BLOCK", - "BUS_EVENT_TYPE_END_BLOCK", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED", - "BUS_EVENT_TYPE_SETTLE_MARKET", - "BUS_EVENT_TYPE_TRANSACTION_RESULT", - "BUS_EVENT_TYPE_SNAPSHOT_TAKEN", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY", - "BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED", - "BUS_EVENT_TYPE_EXPIRED_ORDERS", - "BUS_EVENT_TYPE_DISTRESSED_POSITIONS", - "BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_STOP_ORDER", - "BUS_EVENT_TYPE_FUNDING_PERIOD", - "BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT", - "BUS_EVENT_TYPE_TEAM_CREATED", - "BUS_EVENT_TYPE_TEAM_UPDATED", - "BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM", - "BUS_EVENT_TYPE_REFEREE_JOINED_TEAM", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_CREATED", - "BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET", - "BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_STATS_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED", - "BUS_EVENT_TYPE_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_FUNDING_PAYMENTS", - "BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_SUMMARY", - "BUS_EVENT_TYPE_TRANSFER_FEES_PAID", - "BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED", - "BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED", - "BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED", - "BUS_EVENT_TYPE_MARKET", - "BUS_EVENT_TYPE_TX_ERROR" - ], - "default": "BUS_EVENT_TYPE_UNSPECIFIED", - "description": "- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type", - "title": "Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items" - }, - "v1CheckpointEvent": { - "type": "object", - "properties": { - "hash": { - "type": "string" - }, - "blockHash": { - "type": "string" - }, - "blockHeight": { - "type": "string", - "format": "uint64" - } - } - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1CoreSnapshotData": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which snapshot was taken" - }, - "blockHash": { - "type": "string", - "title": "Hash of the snapshot block" - }, - "coreVersion": { - "type": "string", - "description": "Semver version number of the core." - }, - "protocolUpgradeBlock": { - "type": "boolean", - "title": "Indicates if the snapshot is taken as part of protocol upgrade" - } - }, - "description": "CoreSnapshotData represents the core snapshot data." - }, - "v1CreateReferralSet": { - "type": "object", - "properties": { - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1CreateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set." - }, - "v1CreateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "External link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "External link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1Data": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - } - }, - "data": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Data holds all the properties of the data" - }, - "matchedSpecIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data." - }, - "broadcastAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec." - }, - "metaData": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Holds all metadata properties" - }, - "error": { - "type": "string", - "description": "Error message if the data could not be sourced." - } - }, - "description": "Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data." - }, - "v1DelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to delegate stake to." - }, - "amount": { - "type": "string", - "description": "Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places." - } - }, - "description": "Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator." - }, - "v1DelegationBalanceEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "nodeId": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "epochSeq": { - "type": "string" - } - }, - "title": "DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect" - }, - "v1DistressedOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "parties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of Party IDs i.e. each party's public key for the event" - } - }, - "title": "Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders" - }, - "v1DistressedPositions": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressedParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, that are distressed but still have open volume" - }, - "safeParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position" - } - }, - "description": "Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field." - }, - "v1ERC20MultiSigSignerAdded": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "title": "ID of the signature bundle" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node to be added" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "newSigner": { - "type": "string", - "title": "Ethereum address of the new signer" - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was added for" - } - } - }, - "v1ERC20MultiSigSignerEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEventType" - }, - "signer": { - "type": "string" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ERC20MultiSigSignerEventType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ADDED", - "TYPE_REMOVED" - ], - "default": "TYPE_UNSPECIFIED" - }, - "v1ERC20MultiSigSignerRemoved": { - "type": "object", - "properties": { - "signatureSubmitters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemovedSubmitter" - }, - "title": "List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node which is to be removed" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "oldSigner": { - "type": "string", - "title": "Ethereum address of the signer to be removed" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was removed for" - } - } - }, - "v1ERC20MultiSigSignerRemovedSubmitter": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "description": "Signature ID of the signer removed." - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - } - } - }, - "v1ERC20MultiSigThresholdSetEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "newThreshold": { - "type": "integer", - "format": "int64" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1EndBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - } - }, - "title": "EndBlock" - }, - "v1EpochEvent": { - "type": "object", - "properties": { - "seq": { - "type": "string", - "format": "uint64", - "title": "Sequence number that increases by one each epoch" - }, - "action": { - "$ref": "#/definitions/vegaEpochAction", - "title": "Action tells us what action is taking place" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch started" - }, - "expireTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch should end" - }, - "endTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch actually ended" - } - }, - "title": "Epoch details" - }, - "v1EthereumKeyRotateSubmission": { - "type": "object", - "properties": { - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newAddress": { - "type": "string", - "description": "Ethereum address that is being rotated to." - }, - "currentAddress": { - "type": "string", - "description": "Ethereum address of the node's current Ethereum keys." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature signed by the new Ethereum key that can be verified to prove ownership." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated." - }, - "v1EthereumKeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Ethereum key" - }, - "oldAddress": { - "type": "string", - "title": "Ethereum address that was previously associated with the node" - }, - "newAddress": { - "type": "string", - "title": "Ethereum address that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about an Ethereum key rotation" - }, - "v1ExpiredOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "orderIds": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of expired order IDs" - } - } - }, - "v1ExternalData": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/v1Data" - } - } - }, - "v1FeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "title": "Market the fees were paid in" - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalRewardsReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral rewards received by the referrer of the referral set." - }, - "referrerRewardsGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ReferrerRewardsGenerated" - }, - "description": "Referral rewards generated by all referee taker fees." - }, - "refereesDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral discounts applied to all referee taker fees." - }, - "volumeDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total volume discounts applied to all referee taker fees." - }, - "totalMakerFeesReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total maker fees received by the maker side." - }, - "makerFeesGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1MakerFeesGenerated" - }, - "description": "Maker fees paid by all trade aggressors, and which makers the fees were paid to." - }, - "totalFeesPaidAndReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total trading fees received and paid by the party." - } - }, - "title": "Fees rewards and discounts paid / received per parties during an epoch" - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1FundingPayments": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period associated with these payments." - }, - "payments": { - "type": "array", - "items": { - "$ref": "#/definitions/eventsv1FundingPayment" - }, - "description": "List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "Event notifying of funding payments at the end of a funding period." - }, - "v1FundingPeriod": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market for which this funding period relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period." - }, - "start": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period started." - }, - "end": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period ended." - }, - "fundingPayment": { - "type": "string", - "description": "Funding payment for this period as the difference between the time-weighted average price of the external and internal data point." - }, - "fundingRate": { - "type": "string", - "description": "Percentage difference between the time-weighted average price of the external and internal data point." - }, - "internalTwap": { - "type": "string", - "description": "TWAP for this period based on the internal data-points." - }, - "externalTwap": { - "type": "string", - "description": "TWAP for this period based on the external data-points." - } - }, - "description": "Event notifying on the details of a funding interval for a perpetuals market." - }, - "v1FundingPeriodDataPoint": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID which the data point relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period this data point belongs to." - }, - "dataPointType": { - "$ref": "#/definitions/FundingPeriodDataPointSource", - "description": "Origin of the data point." - }, - "price": { - "type": "string", - "description": "Price of the asset as seen by this data point." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the data point was received." - }, - "twap": { - "type": "string", - "description": "The TWAP for this source with this data-point added." - } - }, - "description": "Event notifying a data point for a funding period." - }, - "v1IcebergOpts": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is made visible and can be traded with during the execution of a single order." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "Minimum allowed remaining size of the order before it is replenished back to its peak size." - } - }, - "title": "Iceberg order options" - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1IssueSignatures": { - "type": "object", - "properties": { - "submitter": { - "type": "string", - "description": "Ethereum address which will submit the signatures to the smart contract." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "What kind of signatures to generate, namely for whether a signer is being added or removed." - }, - "validatorNodeId": { - "type": "string", - "description": "Node ID of the validator node that will be signed in or out of the smart contract." - } - }, - "description": "Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command." - }, - "v1JoinTeam": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the team to join, this is the same as the referral code used to generate the team." - } - }, - "description": "Command that allows the submitter to join a team or change teams if they are already a member of a team." - }, - "v1KeyRotateSubmission": { - "type": "object", - "properties": { - "newPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "New Vega public key derivation index." - }, - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newPubKey": { - "type": "string", - "description": "Vega public key that would be rotated to." - }, - "currentPubKeyHash": { - "type": "string", - "description": "Hash of the node's current Vega public key." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated." - }, - "v1KeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Vega key" - }, - "oldPubKey": { - "type": "string", - "title": "Vega public key that was previously associated with the node" - }, - "newPubKey": { - "type": "string", - "title": "Vega public key that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about a Vega key rotation" - }, - "v1LedgerMovements": { - "type": "object", - "properties": { - "ledgerMovements": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerMovement" - }, - "title": "One or more entries containing internal transfer information" - } - }, - "title": "Transfer responses event contains a collection of transfer information" - }, - "v1LiquidityProvisionAmendment": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wants to amend the liquidity commitment for." - }, - "commitmentAmount": { - "type": "string", - "description": "New commitment amount." - }, - "fee": { - "type": "string", - "description": "New nominated liquidity fee factor." - }, - "reference": { - "type": "string", - "description": "New arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged." - }, - "v1LiquidityProvisionCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter will stop providing liquidity for." - } - }, - "description": "Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market." - }, - "v1LiquidityProvisionSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wishes to provide liquidity for." - }, - "commitmentAmount": { - "type": "string", - "description": "Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "reference": { - "type": "string", - "description": "Arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market." - }, - "v1LossSocialization": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "amount": { - "type": "string", - "title": "Amount distributed" - } - }, - "title": "Loss socialization event contains details on the amount of wins unable to be distributed" - }, - "v1MakerFeesGenerated": { - "type": "object", - "properties": { - "taker": { - "type": "string", - "description": "Party that paid the fees." - }, - "makerFeesPaid": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of maker fees paid by the taker to the maker." - } - }, - "title": "Maker fees generated by the trade aggressor" - }, - "v1MarketEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "payload": { - "type": "string", - "title": "Payload is a unique information string" - } - }, - "title": "MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging" - }, - "v1MarketTick": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Market ID for the event" - }, - "time": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Market tick event contains the time value for when a particular market was last processed on Vega" - }, - "v1NodeSignature": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the resource that the signature relates to." - }, - "sig": { - "type": "string", - "format": "byte", - "description": "Signature generated by the node." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "Kind of resource being signed." - } - }, - "description": "A validator command sent automatically containing a signature that can be used on a foreign chain to process an action." - }, - "v1NodeSignatureKind": { - "type": "string", - "enum": [ - "NODE_SIGNATURE_KIND_UNSPECIFIED", - "NODE_SIGNATURE_KIND_ASSET_NEW", - "NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED", - "NODE_SIGNATURE_KIND_ASSET_UPDATE" - ], - "default": "NODE_SIGNATURE_KIND_UNSPECIFIED", - "description": "- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.", - "title": "Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc" - }, - "v1OneOffGovernanceTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "v1OracleDataSubmission": { - "type": "object", - "properties": { - "source": { - "$ref": "#/definitions/OracleDataSubmissionOracleSource", - "description": "Source from which the data is coming from." - }, - "payload": { - "type": "string", - "format": "byte", - "description": "Data provided by the data source." - } - }, - "title": "Command to submit new oracle data from third party providers" - }, - "v1OrderAmendment": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "ID of the order to amend." - }, - "marketId": { - "type": "string", - "description": "Market ID that the order was originally submitted to." - }, - "price": { - "type": "string", - "description": "New price for the order. This field is an unsigned integer scaled to the market's decimal places." - }, - "sizeDelta": { - "type": "string", - "format": "int64", - "description": "Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for the new expiry time for the order." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "New time in force for the order." - }, - "peggedOffset": { - "type": "string", - "description": "New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "peggedReference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "New pegged reference for the order." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0." - } - }, - "description": "A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command." - }, - "v1OrderCancellation": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided." - }, - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - } - }, - "description": "A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command." - }, - "v1OrderSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID to submit the order to." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of units." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Which side of the order book the order is for, e.g. buy or sell." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "Time in force indicates how long an order will remain active before it is executed or expires.." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT." - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type of the order." - }, - "reference": { - "type": "string", - "description": "Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times." - }, - "postOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders." - }, - "reduceOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders." - }, - "icebergOpts": { - "$ref": "#/definitions/v1IcebergOpts", - "description": "Iceberg order details. If set, the order will exist on the order book in chunks." - } - }, - "description": "A command that submits an order to the Vega network for a given market." - }, - "v1PaidLiquidityFeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market the fees were paid in." - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalFeesPaid": { - "type": "string", - "description": "Total fees paid across all parties." - }, - "feesPaidPerParty": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Fees paid per party." - } - } - }, - "v1PartyActivityStreak": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "The party." - }, - "activeFor": { - "type": "string", - "format": "uint64", - "description": "How many epoch this party has been active for." - }, - "inactiveFor": { - "type": "string", - "format": "uint64", - "description": "how many epoch this party has been inactive for." - }, - "isActive": { - "type": "boolean", - "description": "Is this party considered active or not." - }, - "rewardDistributionActivityMultiplier": { - "type": "string", - "description": "The current rewards distribution multiplier for this party." - }, - "rewardVestingActivityMultiplier": { - "type": "string", - "description": "The vesting multiplier for this party." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "The epoch this information is relevant to." - }, - "tradedVolume": { - "type": "string", - "title": "Party's traded volume at the end of the given epoch" - }, - "openVolume": { - "type": "string", - "title": "Party's open interest volume at the end of the given epoch" - } - }, - "title": "The updated activity streak of a party at end of epoch" - }, - "v1PartyAmount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Receiving party ID." - }, - "amount": { - "type": "string", - "description": "Amount received." - }, - "quantumAmount": { - "type": "string", - "description": "Amount value in quantum." - } - }, - "title": "A pair of a party and amount" - }, - "v1PartyLockedBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "untilEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the balance will be released." - }, - "balance": { - "type": "string", - "description": "Locked balance." - } - }, - "description": "A party's locked balance for a given asset." - }, - "v1PartyMarginModeUpdated": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Unique ID of the market in which the update happened." - }, - "partyId": { - "type": "string", - "description": "Unique ID of the party that updated their margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Updated margin mode." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor for the market. Isolated mode only." - }, - "minTheoreticalMarginFactor": { - "type": "string", - "description": "Minimum theoretical margin factor for the market. Isolated mode only." - }, - "maxTheoreticalLeverage": { - "type": "string", - "description": "Maximum theoretical leverage for the market. Isolated mode only." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the update happened." - } - } - }, - "v1PartyProfileUpdated": { - "type": "object", - "properties": { - "updatedProfile": { - "$ref": "#/definitions/vegaPartyProfile", - "description": "Party's profile updated." - } - } - }, - "v1PartyVestingBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "balance": { - "type": "string", - "description": "Balance that is vested." - } - }, - "description": "Balance that is being vested for the party." - }, - "v1PartyVestingStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "The party." - }, - "rewardBonusMultiplier": { - "type": "string", - "description": "The bonus multiplier applied on the reward." - }, - "quantumBalance": { - "type": "string", - "description": "The balance of the party, in quantum." - } - }, - "description": "The vesting stats for a given party." - }, - "v1PartyVestingSummary": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party ID." - }, - "partyLockedBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyLockedBalance" - }, - "description": "List of locked balances." - }, - "partyVestingBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingBalance" - }, - "description": "List of vesting balances." - } - }, - "title": "Summary of a party's vesting balances" - }, - "v1PartyVolumeDiscountStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to fees." - }, - "runningVolume": { - "type": "string", - "description": "The party's running volume." - } - }, - "description": "Volume discount stats for a given party." - }, - "v1PositionResolution": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressed": { - "type": "string", - "format": "int64", - "title": "Number of distressed traders" - }, - "closed": { - "type": "string", - "format": "int64", - "title": "Number of close outs" - }, - "markPrice": { - "type": "string", - "title": "Mark price as a string representing a scaled price" - } - }, - "title": "Position resolution event contains information on distressed trades" - }, - "v1PositionStateEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Party ID for this position update" - }, - "marketId": { - "type": "string", - "title": "Market ID for this position update" - }, - "size": { - "type": "string", - "format": "int64", - "title": "Current position" - }, - "potentialBuys": { - "type": "string", - "format": "int64", - "title": "Potential orders" - }, - "potentialSells": { - "type": "string", - "format": "int64" - }, - "vwBuyPrice": { - "type": "string", - "title": "Volume weighted prices" - }, - "vwSellPrice": { - "type": "string" - } - }, - "title": "Position state event contains the current position state for a single party in a single market" - }, - "v1Property": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "value": { - "type": "string", - "description": "Value of the property." - } - }, - "description": "Property describes one property of data spec with a key with its value." - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1ProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market." - }, - "v1ProtocolUpgradeDataNodeReady": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the data node is ready for protocol upgrade" - }, - "v1ProtocolUpgradeEvent": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which to perform the upgrade" - }, - "vegaReleaseTag": { - "type": "string", - "title": "Release tag for the vega binary" - }, - "approvers": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Tendermint validators that have agreed to the upgrade" - }, - "status": { - "$ref": "#/definitions/v1ProtocolUpgradeProposalStatus", - "title": "Status of the proposal" - } - } - }, - "v1ProtocolUpgradeProposal": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height at which to perform the upgrade." - }, - "vegaReleaseTag": { - "type": "string", - "description": "Release tag for the Vega binary." - } - }, - "description": "A validator command sent manually by a node operator to propose a protocol upgrade." - }, - "v1ProtocolUpgradeProposalStatus": { - "type": "string", - "enum": [ - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED" - ], - "default": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "title": "- PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected" - }, - "v1ProtocolUpgradeStarted": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the core is starting a protocol upgrade" - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1RecurringGovernanceTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "v1RefereeJoinedReferralSet": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the referral set the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the set." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the set." - } - } - }, - "v1RefereeJoinedTeam": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the team the referee joined." - }, - "referee": { - "type": "string", - "description": "The party that joined the team." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined a team." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - } - }, - "v1RefereeStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Unique ID of the party." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to the party." - }, - "epochNotionalTakerVolume": { - "type": "string", - "title": "Current referee notional taker volume" - } - } - }, - "v1RefereeSwitchedTeam": { - "type": "object", - "properties": { - "fromTeamId": { - "type": "string", - "description": "The unique identifier of the team the referee left." - }, - "toTeamId": { - "type": "string", - "description": "The unique identifier of the team joined." - }, - "referee": { - "type": "string", - "description": "The party that switched team." - }, - "switchedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party switched the team." - } - } - }, - "v1ReferralProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the referral program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1ReferralProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "Referral program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program started." - } - } - }, - "v1ReferralProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "The updated referral program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program was updated." - } - } - }, - "v1ReferralSetCreated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the created set." - }, - "referrer": { - "type": "string", - "description": "Party that created the set." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was updated." - } - } - }, - "v1ReferralSetStatsUpdated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the set's statistics are updated." - }, - "referralSetRunningNotionalTakerVolume": { - "type": "string", - "description": "Running volume for the set based on the window length of the current\nreferral program." - }, - "refereesStats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1RefereeStats" - }, - "description": "Referees' statistics for that epoch." - }, - "rewardFactor": { - "type": "string", - "description": "Reward factor applied to the trades." - }, - "rewardsMultiplier": { - "type": "string", - "description": "Rewards multiplier applied to the trades." - }, - "rewardsFactorMultiplier": { - "type": "string", - "description": "Rewards factor multiplier for the trades." - }, - "wasEligible": { - "type": "boolean", - "description": "Indicates if the referral set was eligible to be part of the referral program." - }, - "referrerTakerVolume": { - "type": "string", - "title": "Taker volume of the referrer" - } - } - }, - "v1ReferrerRewardsGenerated": { - "type": "object", - "properties": { - "referrer": { - "type": "string", - "description": "Referrer party." - }, - "generatedReward": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of rewards generated per party." - } - }, - "title": "Rewards generated for referrers by each of their referees" - }, - "v1RewardPayoutEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "percentOfTotalReward": { - "type": "string" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "rewardType": { - "type": "string" - }, - "lockedUntilEpoch": { - "type": "string" - }, - "quantumAmount": { - "type": "string" - }, - "gameId": { - "type": "string" - } - } - }, - "v1SettleDistressed": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID i.e. a party's public key for the event" - }, - "margin": { - "type": "string", - "title": "Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - }, - "price": { - "type": "string", - "title": "Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - } - }, - "title": "Settle distressed event contains information on distressed trading parties who are closed out" - }, - "v1SettleMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly" - }, - "v1SettlePosition": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "tradeSettlements": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TradeSettlement" - }, - "title": "A collection of 1 or more trade settlements" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle position event contains position settlement information for a party" - }, - "v1Signature": { - "type": "object", - "properties": { - "value": { - "type": "string", - "description": "Hex encoded bytes of the signature." - }, - "algo": { - "type": "string", - "description": "Algorithm used to create the signature." - }, - "version": { - "type": "integer", - "format": "int64", - "description": "Version of the algorithm used to create the signature." - } - }, - "description": "Signature definition that allows the network to authenticate external data." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1StakeLinking": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Internal ID for this staking event" - }, - "type": { - "$ref": "#/definitions/v1StakeLinkingType", - "description": "Stake linking event type." - }, - "ts": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the event was emitted by Ethereum." - }, - "party": { - "type": "string", - "description": "Party to whom the event is directed at." - }, - "amount": { - "type": "string", - "description": "Amount of stake deposited or removed." - }, - "status": { - "$ref": "#/definitions/v1StakeLinkingStatus", - "description": "Status of the event." - }, - "finalizedAt": { - "type": "string", - "format": "int64", - "description": "Time at which the Vega network finalised the state of the event." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction in which the event happened." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block when the event happened." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Block time." - }, - "logIndex": { - "type": "string", - "format": "uint64", - "description": "Log index." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum address from which the stake link was initiated." - } - }, - "title": "StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network" - }, - "v1StakeLinkingStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_ACCEPTED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network" - }, - "v1StakeLinkingType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LINK", - "TYPE_UNLINK" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction" - }, - "v1StateVar": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "eventId": { - "type": "string" - }, - "state": { - "type": "string" - } - }, - "title": "StateVar event updates on state changes in state variable consensus" - }, - "v1StopOrderEvent": { - "type": "object", - "properties": { - "submission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "stopOrder": { - "$ref": "#/definitions/vegaStopOrder" - } - } - }, - "v1StopOrderSetup": { - "type": "object", - "properties": { - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Order to be submitted once the trigger is breached." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Indicates if this order is linked to an order or position to derive the order size" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "If this order is linked to a position, provide an optional scaling factor" - }, - "price": { - "type": "string", - "description": "Order will be submitted if the last traded price on the market breaches the given price." - }, - "trailingPercentOffset": { - "type": "string", - "description": "Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted." - } - }, - "description": "Price and expiry configuration for a stop order." - }, - "v1StopOrdersCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - }, - "stopOrderId": { - "type": "string", - "description": "Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided." - } - }, - "description": "A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command." - }, - "v1StopOrdersSubmission": { - "type": "object", - "properties": { - "risesAbove": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price rises above a given trigger price." - }, - "fallsBelow": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price falls below a given trigger price." - } - }, - "description": "A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO)." - }, - "v1TeamCreated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the created team." - }, - "referrer": { - "type": "string", - "description": "The party that created the team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the team is created." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the team was created." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TeamUpdated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier for the updated team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TimeUpdate": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Time update event contains the latest time update from Vega blockchain and indicates the start of a new block" - }, - "v1TradeSettlement": { - "type": "object", - "properties": { - "size": { - "type": "string", - "format": "int64", - "title": "Size of trade settlement" - }, - "price": { - "type": "string", - "title": "Price of settlement as string (in asset decimals)" - }, - "marketPrice": { - "type": "string", - "title": "Price of settlement as a string (in market decimals)" - } - }, - "title": "Trade settlement is part of the settle position event" - }, - "v1TransactionResult": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "status": { - "type": "boolean", - "description": "Status of the transaction, did it succeed or an error was raised." - }, - "hash": { - "type": "string", - "title": "Hash of the transaction" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - }, - "keyRotateSubmission": { - "$ref": "#/definitions/v1KeyRotateSubmission" - }, - "ethereumKeyRotateSubmission": { - "$ref": "#/definitions/v1EthereumKeyRotateSubmission" - }, - "stopOrderSubmission": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "stopOrderCancellation": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "createReferralSet": { - "$ref": "#/definitions/v1CreateReferralSet" - }, - "updateReferralSet": { - "$ref": "#/definitions/v1UpdateReferralSet" - }, - "applyReferralCode": { - "$ref": "#/definitions/v1ApplyReferralCode" - }, - "updateMarginMode": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "joinTeam": { - "$ref": "#/definitions/v1JoinTeam" - }, - "batchProposal": { - "$ref": "#/definitions/v1BatchProposalSubmission" - }, - "updatePartyProfile": { - "$ref": "#/definitions/v1UpdatePartyProfile" - }, - "success": { - "$ref": "#/definitions/TransactionResultSuccessDetails" - }, - "failure": { - "$ref": "#/definitions/TransactionResultFailureDetails" - } - } - }, - "v1TransferFees": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer that triggered the collection of fees." - }, - "amount": { - "type": "string", - "description": "Amount of fees paid." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch when the transfer was dispatched, and fees were paid." - }, - "discountApplied": { - "type": "string", - "description": "Amount that was subtracted from the transfer fee based on available discounts." - } - } - }, - "v1TransferFeesDiscount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party that the transfer fee discount applies to." - }, - "asset": { - "type": "string", - "description": "Asset that the transfer fee discount is relevant to." - }, - "amount": { - "type": "string", - "description": "Amount that the transfer fee was discounted by." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the discount was first available." - } - } - }, - "v1TransferStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_DONE", - "STATUS_REJECTED", - "STATUS_STOPPED", - "STATUS_CANCELLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user" - }, - "v1TxErrorEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "errMsg": { - "type": "string", - "title": "Error message describing what went wrong" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - } - } - }, - "v1UndelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to undelegate stake from." - }, - "amount": { - "type": "string", - "description": "Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed." - }, - "method": { - "$ref": "#/definitions/v1UndelegateSubmissionMethod", - "description": "Method of delegation." - } - }, - "description": "Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node." - }, - "v1UndelegateSubmissionMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_NOW", - "METHOD_AT_END_OF_EPOCH" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch." - }, - "v1UpdateMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market to change margin mode for." - }, - "mode": { - "$ref": "#/definitions/UpdateMarginModeMode", - "description": "Margin mode to use." - }, - "marginFactor": { - "type": "string", - "title": "Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside" - } - } - }, - "v1UpdatePartyProfile": { - "type": "object", - "properties": { - "alias": { - "type": "string", - "description": "Alias given to the party. It must be unique network-wide." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Freeform data to associate to the party.\nSupport a maximum of 10 entries." - } - }, - "description": "Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed." - }, - "v1UpdateReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the referral set to update." - }, - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1UpdateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged." - }, - "v1UpdateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "New name of the team." - }, - "teamUrl": { - "type": "string", - "description": "New link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "New link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1ValidatorRankingEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "stakeScore": { - "type": "string", - "title": "Stake based score - no anti-whaling" - }, - "performanceScore": { - "type": "string", - "title": "Performance base score" - }, - "rankingScore": { - "type": "string", - "title": "Final score" - }, - "previousStatus": { - "type": "string", - "title": "Status of the validator in the previous epoch" - }, - "nextStatus": { - "type": "string", - "title": "Status of the validator in the next epoch" - }, - "epochSeq": { - "type": "string", - "title": "Epoch seq for which the status is valid" - }, - "tmVotingPower": { - "type": "integer", - "format": "int64", - "title": "Tendermint voting power of the validator" - } - }, - "title": "Event that explains the status of the validator for the coming epoch" - }, - "v1ValidatorScoreEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "validatorScore": { - "type": "string" - }, - "normalisedScore": { - "type": "string" - }, - "validatorPerformance": { - "type": "string" - }, - "rawValidatorScore": { - "type": "string" - }, - "validatorStatus": { - "type": "string" - }, - "multisigScore": { - "type": "string" - } - }, - "title": "ValidatorScoreEvent is the score a validator gets for a given epoch" - }, - "v1ValidatorUpdate": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the validator node" - }, - "vegaPubKey": { - "type": "string", - "title": "Vega public key of validator node" - }, - "ethereumAddress": { - "type": "string", - "title": "Ethereum public key of validator node" - }, - "tmPubKey": { - "type": "string", - "title": "Public key of Tendermint" - }, - "infoUrl": { - "type": "string", - "title": "URL with more info on the node" - }, - "country": { - "type": "string", - "title": "Country code (ISO 3166-1 alpha-2) for the location of the node" - }, - "name": { - "type": "string", - "title": "Name of the validator" - }, - "avatarUrl": { - "type": "string", - "title": "AvatarURL of the validator" - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "title": "Vega public key derivation index" - }, - "added": { - "type": "boolean", - "title": "Flag indicating if the validator has been added to or removed from vega" - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the announced pending node will start participating in the network" - }, - "submitterAddress": { - "type": "string", - "title": "Ethereum public key being used as the submitter to allow automatic signature generation" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the node was announced or removed from the network" - } - }, - "title": "Validator update event contains information about validator node" - }, - "v1VestingBalancesSummary": { - "type": "object", - "properties": { - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these balances are valid." - }, - "partiesVestingSummary": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingSummary" - }, - "description": "Parties' summaries." - } - }, - "title": "Summary of the vesting and locked balances for an epoch" - }, - "v1VestingStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the vesting statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingStats" - }, - "description": "All parties stats." - } - }, - "description": "Stats of all parties invested in the vesting program." - }, - "v1VolumeDiscountProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the volume discount program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1VolumeDiscountProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "Volume discount program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program started." - } - } - }, - "v1VolumeDiscountProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "The updated volume discount program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program was updated." - } - } - }, - "v1VolumeDiscountStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVolumeDiscountStats" - }, - "description": "All parties' stats." - } - }, - "description": "Stats of all parties eligible for volume discount." - }, - "v1VoteSubmission": { - "type": "object", - "properties": { - "proposalId": { - "type": "string", - "description": "Submit vote for the specified proposal ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Actual value of the vote." - } - }, - "description": "Command that allows a token holder to vote for or against an active governance proposal." - }, - "v1WithdrawSubmission": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "description": "Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to be withdrawn." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Details specific to the foreign chain, such as the receiver address." - } - }, - "description": "Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge." - }, - "v2AccountBalance": { - "type": "object", - "properties": { - "owner": { - "type": "string", - "description": "Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position." - }, - "balance": { - "type": "string", - "description": "Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative." - }, - "asset": { - "type": "string", - "description": "Asset ID for the account." - }, - "marketId": { - "type": "string", - "description": "Market ID for the account, this field will be empty if the asset is in a general account." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type of this account." - } - }, - "title": "Represents the current balance of an account for an asset on Vega, for a particular owner or party" - }, - "v2AccountEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2AccountBalance", - "description": "Account balance data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages with reference to this account." - } - }, - "description": "Account data item with the corresponding cursor." - }, - "v2AccountFilter": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Restrict accounts to those holding balances in this asset ID." - }, - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter." - }, - "accountTypes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAccountType" - }, - "description": "Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter." - } - }, - "description": "Account filter is used to filter account data.\n\nAn account is defined as a set of asset ID, type, party ID, and market ID.\n- Every account has an associated asset and type.\n- Certain account types such as the global reward pool for example, do not have an associated party.\n These are denoted by the special party ID 'network'.\n- Certain account types do not have an associated market such as the general party accounts, for example.\n These are denoted by the special market ID '' (an empty string)." - }, - "v2AccountSnapshotPage": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountBalance" - }, - "description": "List of account balances." - }, - "lastPage": { - "type": "boolean", - "description": "Indicator if the current page is the last one or not." - } - }, - "title": "'Initial image' snapshot containing current account balances - may be sent over several response messages" - }, - "v2AccountUpdates": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountBalance" - }, - "description": "List of account balances." - } - }, - "title": "List of account updates in the last block" - }, - "v2AccountsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountEdge" - }, - "description": "Page of accounts data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of accounts data and corresponding page information." - }, - "v2AggregatedBalance": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of the block in which the balance exists." - }, - "balance": { - "type": "string", - "description": "Balance of the set of requested accounts at the time above." - }, - "partyId": { - "type": "string", - "description": "If grouping by party, the party ID." - }, - "assetId": { - "type": "string", - "description": "If grouping by asset, the asset ID." - }, - "marketId": { - "type": "string", - "title": "If grouping by market, the market ID" - }, - "accountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "If grouping by account type, the account type." - } - }, - "title": "AggregatedBalance data contains the balance of the set of requested accounts combined with corresponding\nparty ID, market ID and account type details" - }, - "v2AggregatedBalanceConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AggregatedBalanceEdge" - }, - "description": "Page of aggregated balance data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of aggregated balance objects and corresponding page information" - }, - "v2AggregatedBalanceEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2AggregatedBalance", - "description": "Balance of the set of requested accounts." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Aggregated balance data with the corresponding cursor." - }, - "v2AggregatedLedgerEntriesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AggregatedLedgerEntriesEdge" - }, - "description": "Page of 'AggregatedLedgerEntry' data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of aggregated ledger entries data and corresponding page information." - }, - "v2AggregatedLedgerEntriesEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2AggregatedLedgerEntry", - "description": "'AggregatedLedgerEntry' data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "title": "Represents the aggregated ledger entry data with corresponding cursor for it" - }, - "v2AggregatedLedgerEntry": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of the block in which the result is referring to." - }, - "quantity": { - "type": "string", - "description": "Amount of ledger entries for the set of requested accounts at the time above." - }, - "transferType": { - "$ref": "#/definitions/vegaTransferType", - "description": "Transfer type." - }, - "assetId": { - "type": "string", - "description": "Asset ID for the asset associated with the entry." - }, - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of account sent from." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of account received to." - }, - "fromAccountPartyId": { - "type": "string", - "description": "Sender's party ID." - }, - "toAccountPartyId": { - "type": "string", - "description": "Receiver's party ID." - }, - "fromAccountMarketId": { - "type": "string", - "description": "Sender market ID." - }, - "toAccountMarketId": { - "type": "string", - "description": "Receiver market ID." - }, - "fromAccountBalance": { - "type": "string", - "description": "Sender account balance after the transfer." - }, - "toAccountBalance": { - "type": "string", - "description": "Receiver account balance after the transfer." - } - }, - "title": "Represents an aggregated view of ledger entry data, sender and receiver accounts,\ndetails and balances for both sides after the transfer has been made" - }, - "v2AssetEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaAsset", - "description": "Asset data returned." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Assets data with the corresponding cursor." - }, - "v2AssetsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AssetEdge" - }, - "description": "Page of assets data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of asset data and corresponding page information" - }, - "v2CandleDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2CandleEdge" - }, - "description": "Page of candle data items and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of candles data and corresponding page information" - }, - "v2CandleEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2Candle", - "description": "Candlestick data, i.e. high, low, open, and closing prices for an interval of trading." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Candle data with the corresponding cursor." - }, - "v2Checkpoint": { - "type": "object", - "properties": { - "hash": { - "type": "string", - "description": "Hash of the checkpoint." - }, - "blockHash": { - "type": "string", - "description": "Block hash at which the checkpoint is made." - }, - "atBlock": { - "type": "string", - "format": "uint64", - "description": "Block number at which the checkpoint is made." - } - }, - "title": "Actual data regarding a checkpoint" - }, - "v2CheckpointEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2Checkpoint", - "description": "Data relating to a single checkpoint generated by the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Checkpoint data with the corresponding cursor." - }, - "v2CheckpointsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2CheckpointEdge" - }, - "description": "Page of checkpoints data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of checkpoints data and corresponding page information" - }, - "v2CollateralIncreaseEstimate": { - "type": "object", - "properties": { - "worstCase": { - "type": "string", - "title": "Estimate assuming slippage cap is applied" - }, - "bestCase": { - "type": "string", - "title": "Estimate assuming no slippage" - } - }, - "title": "Estimates the additional funds needed to support the specified position" - }, - "v2CoreSnapshotConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2CoreSnapshotEdge" - }, - "description": "Page of core snapshot data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of core snapshot data and corresponding page information." - }, - "v2CoreSnapshotEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1CoreSnapshotData", - "description": "Core snapshot data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Core snapshot data with the corresponding cursor." - }, - "v2DateRange": { - "type": "object", - "properties": { - "startTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds indicating the start of the date range." - }, - "endTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds indicating the end of the date range." - } - }, - "description": "Date range for queries that can return historical data\nTimestamps should be provided as unix time in Unix nanoseconds and are inclusive." - }, - "v2DelegationEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaDelegation", - "description": "How much a party is delegating to a node and when." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Delegation data with the corresponding cursor." - }, - "v2DelegationsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2DelegationEdge" - }, - "description": "Page of delegations data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of delegations data and corresponding page information" - }, - "v2DepositEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaDeposit", - "description": "Data associated with a single deposit made on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Deposits data with the corresponding cursor." - }, - "v2DepositsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2DepositEdge" - }, - "description": "Page of deposits data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of deposits data received and corresponding page information" - }, - "v2ERC20MultiSigSignerAddedBundle": { - "type": "object", - "properties": { - "newSigner": { - "type": "string", - "description": "Ethereum address of the signer to be removed." - }, - "submitter": { - "type": "string", - "description": "Ethereum address of the submitter." - }, - "nonce": { - "type": "string", - "description": "Nonce used in the signing operation." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Unixnano timestamp for when the validator was added." - }, - "signatures": { - "type": "string", - "description": "Bundle of signatures from current validators to sign in the new signer." - }, - "epochSeq": { - "type": "string", - "description": "Epoch in which the validator was added." - } - }, - "title": "Signature bundle data to be added" - }, - "v2ERC20MultiSigSignerAddedBundleEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedBundle", - "description": "Signature bundle data to be added." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Signature bundle data that is to be added with the corresponding cursor." - }, - "v2ERC20MultiSigSignerAddedConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedBundleEdge" - }, - "description": "Page of signature bundle data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of signature data items to be added and corresponding page information" - }, - "v2ERC20MultiSigSignerRemovedBundle": { - "type": "object", - "properties": { - "oldSigner": { - "type": "string", - "description": "Ethereum address of the signer to be removed." - }, - "submitter": { - "type": "string", - "description": "Ethereum address of the submitter." - }, - "nonce": { - "type": "string", - "description": "Nonce used in the signing operation." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Unixnano timestamp for when the validator was added." - }, - "signatures": { - "type": "string", - "description": "Bundle of signatures from current validators to sign in the new signer." - }, - "epochSeq": { - "type": "string", - "description": "Epoch in which the validator was removed." - } - }, - "title": "Signature bundle data to be removed" - }, - "v2ERC20MultiSigSignerRemovedBundleEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedBundle", - "description": "Signature bundle data to be added." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Signature bundle data to be removed, with the corresponding cursor." - }, - "v2ERC20MultiSigSignerRemovedConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedBundleEdge" - }, - "description": "Page of signature bundle data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of signature data items to be removed and corresponding page information." - }, - "v2EpochRewardSummaryConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2EpochRewardSummaryEdge" - }, - "description": "Page of rewards summary data for epochs and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of rewards summary data for epoch and corresponding page information" - }, - "v2EpochRewardSummaryEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaEpochRewardSummary", - "description": "Rewards summary data for epoch." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Rewards summary data for epoch with the corresponding cursor." - }, - "v2EstimateFeeResponse": { - "type": "object", - "properties": { - "fee": { - "$ref": "#/definitions/vegaFee", - "description": "Summary of the estimated fees for this order if it were to trade now." - } - }, - "title": "Response that is received from EstimateFeeRequest, contains the estimated fees for a given order" - }, - "v2EstimateMarginResponse": { - "type": "object", - "properties": { - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Summary of the estimated margins for this order if it were to trade now." - } - }, - "title": "Response to an estimate margin request, containing the estimated margin levels for a given order" - }, - "v2EstimatePositionResponse": { - "type": "object", - "properties": { - "margin": { - "$ref": "#/definitions/v2MarginEstimate", - "description": "Margin level range estimate for the specified position." - }, - "collateralIncreaseEstimate": { - "$ref": "#/definitions/v2CollateralIncreaseEstimate", - "description": "Estimated margin account balance increase." - }, - "liquidation": { - "$ref": "#/definitions/v2LiquidationEstimate", - "description": "Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request." - } - }, - "description": "Response for the estimated margin level, margin account balance change, and liquidation price for the specified position." - }, - "v2EstimateTransferFeeResponse": { - "type": "object", - "properties": { - "fee": { - "type": "string", - "description": "Estimated fee for the transfer." - }, - "discount": { - "type": "string", - "description": "Discount applied to the fee." - } - }, - "title": "Results of estimation of transfer fee and the fee discount" - }, - "v2EthereumKeyRotationEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1EthereumKeyRotation", - "description": "Data relating to an Ethereum key rotation performed by a node on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Ethereum key rotation data with the corresponding cursor." - }, - "v2EthereumKeyRotationsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2EthereumKeyRotationEdge" - }, - "description": "Page of Ethereum key rotations data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of Ethereum key rotations data and corresponding page information" - }, - "v2FeesStatsForParty": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Settlement asset of the market." - }, - "totalRewardsReceived": { - "type": "string", - "description": "Total referral rewards received by referrer of the referral set." - }, - "refereesDiscountApplied": { - "type": "string", - "description": "Total referral discounts applied to referee fees." - }, - "volumeDiscountApplied": { - "type": "string", - "description": "Total volume discounts applied to referee fees." - }, - "totalMakerFeesReceived": { - "type": "string", - "description": "Total maker fees received by the maker side." - } - } - }, - "v2FundingPaymentConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FundingPaymentEdge" - }, - "description": "Page of funding payment data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of funding payment data and corresponding page information." - }, - "v2FundingPaymentEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2FundingPayment", - "description": "Funding payment data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Funding payment data with the corresponding cursor." - }, - "v2FundingPeriodConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FundingPeriodEdge" - }, - "description": "Page of funding period data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of funding period data and corresponding page information." - }, - "v2FundingPeriodDataPointConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FundingPeriodDataPointEdge" - }, - "description": "Page of funding period data points and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of funding period data points and corresponding page information." - }, - "v2FundingPeriodDataPointEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1FundingPeriodDataPoint", - "description": "Funding period data point." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Funding period data point with the corresponding cursor." - }, - "v2FundingPeriodEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1FundingPeriod", - "description": "Funding period data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Funding period data with the corresponding cursor." - }, - "v2Game": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Unique ID of the game" - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the last game metrics were captured." - }, - "participants": { - "type": "string", - "format": "uint64", - "description": "The number of participants in the game." - }, - "team": { - "$ref": "#/definitions/v2TeamGameEntities", - "title": "Team entities that are participating in the game" - }, - "individual": { - "$ref": "#/definitions/v2IndividualGameEntities", - "title": "Individual entities that are participating in the game" - } - }, - "description": "Data relating to a game." - }, - "v2GameEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2Game", - "description": "Game data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Game information and corresponding cursor." - }, - "v2GamesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2GameEdge" - }, - "description": "Page of games data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of games data and corresponding page information." - }, - "v2GetActiveNetworkHistoryPeerAddressesResponse": { - "type": "object", - "properties": { - "ipAddresses": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of IP addresses for the active peers." - } - }, - "title": "Response containing the addresses of active network history peers" - }, - "v2GetAssetResponse": { - "type": "object", - "properties": { - "asset": { - "$ref": "#/definitions/vegaAsset", - "description": "Asset information that is returned." - } - }, - "title": "Response from getting an asset" - }, - "v2GetCurrentReferralProgramResponse": { - "type": "object", - "properties": { - "currentReferralProgram": { - "$ref": "#/definitions/apiv2ReferralProgram", - "description": "Referral program currently activated on the network." - } - }, - "title": "Response containing the current referral program" - }, - "v2GetCurrentVolumeDiscountProgramResponse": { - "type": "object", - "properties": { - "currentVolumeDiscountProgram": { - "$ref": "#/definitions/apiv2VolumeDiscountProgram", - "description": "Volume discount program currently activated on the network." - } - }, - "title": "Response containing the current referral program" - }, - "v2GetDepositResponse": { - "type": "object", - "properties": { - "deposit": { - "$ref": "#/definitions/vegaDeposit", - "description": "Deposit matching the ID from the request." - } - }, - "title": "Response that is received from getting deposit data" - }, - "v2GetERC20ListAssetBundleResponse": { - "type": "object", - "properties": { - "assetSource": { - "type": "string", - "description": "Address of the asset on Ethereum." - }, - "vegaAssetId": { - "type": "string", - "description": "Asset ID for the underlying Vega asset." - }, - "nonce": { - "type": "string", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission." - }, - "signatures": { - "type": "string", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`." - } - }, - "title": "Response from listing the signature bundle to an ERC-20 token in the collateral bridge" - }, - "v2GetERC20SetAssetLimitsBundleResponse": { - "type": "object", - "properties": { - "assetSource": { - "type": "string", - "description": "Address of the asset on Ethereum." - }, - "vegaAssetId": { - "type": "string", - "description": "Asset ID for the underlying Vega asset." - }, - "nonce": { - "type": "string", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limit deposit for this asset." - }, - "threshold": { - "type": "string", - "description": "Threshold withdraw for this asset." - }, - "signatures": { - "type": "string", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`." - } - }, - "title": "Response for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge" - }, - "v2GetERC20WithdrawalApprovalResponse": { - "type": "object", - "properties": { - "assetSource": { - "type": "string", - "description": "Address of asset on Ethereum." - }, - "amount": { - "type": "string", - "description": "Amount to be withdrawn." - }, - "nonce": { - "type": "string", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission." - }, - "signatures": { - "type": "string", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: 0x + sig1 + sig2 + ... + sixN." - }, - "targetAddress": { - "type": "string", - "description": "Ethereum address, prefixed with `0x`, that will receive the withdrawn assets." - }, - "creation": { - "type": "string", - "format": "int64", - "description": "Creation timestamps." - } - }, - "title": "Response with all information required to bundle the call to finalise the withdrawal on the erc20 bridge\nfunction withdraw_asset(address asset_source, uint256 asset_id, uint256 amount, uint256 expiry, uint256 nonce, bytes memory signatures)" - }, - "v2GetEpochResponse": { - "type": "object", - "properties": { - "epoch": { - "$ref": "#/definitions/vegaEpoch", - "description": "Data specific to a single epoch on the Vega network. This includes the epoch number,\nstart and end times, and the nodes that participated in the epoch." - } - }, - "title": "Response from getting epoch" - }, - "v2GetFeesStatsForPartyResponse": { - "type": "object", - "properties": { - "feesStatsForParty": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FeesStatsForParty" - }, - "description": "Fees statistics for the given request." - } - }, - "description": "Response that is sent when requesting fees statistics for a given party." - }, - "v2GetFeesStatsResponse": { - "type": "object", - "properties": { - "feesStats": { - "$ref": "#/definitions/v1FeesStats", - "description": "Fees statistics for the given request." - } - }, - "description": "Response that is sent when requesting fees statistics." - }, - "v2GetGovernanceDataResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/vegaGovernanceData", - "description": "Governance data content, i.e. proposal and votes for and against." - } - }, - "title": "Response from getting governance data" - }, - "v2GetLastTradeResponse": { - "type": "object", - "properties": { - "trade": { - "$ref": "#/definitions/vegaTrade", - "description": "Information about the trade, if one is found." - } - }, - "title": "Response for the latest trade that occurred on Vega for a given market" - }, - "v2GetLatestMarketDataResponse": { - "type": "object", - "properties": { - "marketData": { - "$ref": "#/definitions/vegaMarketData", - "description": "Market data that was requested." - } - }, - "title": "Response that is received when listing the latest market data for a given market" - }, - "v2GetLatestMarketDepthResponse": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID of the depth levels returned." - }, - "buy": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Zero or more price levels for the buy side of the market depth data." - }, - "sell": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Zero or more price levels for the sell side of the market depth data." - }, - "lastTrade": { - "$ref": "#/definitions/vegaTrade", - "description": "Last trade recorded on Vega." - }, - "sequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number incremented after each update." - } - }, - "title": "Response that is received when latest market depth data is queried" - }, - "v2GetMarketDataHistoryByIDResponse": { - "type": "object", - "properties": { - "marketData": { - "$ref": "#/definitions/v2MarketDataConnection", - "description": "Page of market data history with the corresponding page information." - } - }, - "title": "Response that is received when querying Market Data History" - }, - "v2GetMarketResponse": { - "type": "object", - "properties": { - "market": { - "$ref": "#/definitions/vegaMarket", - "description": "Information about the market requested." - } - }, - "title": "Response from getting a market by ID" - }, - "v2GetMostRecentNetworkHistorySegmentResponse": { - "type": "object", - "properties": { - "segment": { - "$ref": "#/definitions/v2HistorySegment", - "description": "Data relating to a history segment created by a Vega data node." - }, - "swarmKeySeed": { - "type": "string", - "description": "Key seed for the swarm section." - } - }, - "title": "Response from getting most recent history segment" - }, - "v2GetNetworkDataResponse": { - "type": "object", - "properties": { - "nodeData": { - "$ref": "#/definitions/vegaNodeData", - "description": "Summary of information with respect to nodes on the Vega network." - } - }, - "title": "Response from getting network data" - }, - "v2GetNetworkHistoryBootstrapPeersResponse": { - "type": "object", - "properties": { - "bootstrapPeers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of peers that can be used to bootstrap a Vega data node." - } - }, - "title": "Response containing the nodes network history bootstrap peers" - }, - "v2GetNetworkHistoryStatusResponse": { - "type": "object", - "properties": { - "ipfsAddress": { - "type": "string", - "description": "IPFS address of the data node currently connected to." - }, - "swarmKey": { - "type": "string", - "description": "Swarm key used by the IPFS swarm." - }, - "swarmKeySeed": { - "type": "string", - "description": "Swarm key seed used by the IPFS swarm." - }, - "connectedPeers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of peers connected to the IPFS swarm." - } - }, - "title": "Response containing the status of network history" - }, - "v2GetNetworkLimitsResponse": { - "type": "object", - "properties": { - "limits": { - "$ref": "#/definitions/vegaNetworkLimits", - "description": "List of received network limits." - } - }, - "title": "Response received when querying the current network limits" - }, - "v2GetNetworkParameterResponse": { - "type": "object", - "properties": { - "networkParameter": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "Network parameter key and value." - } - }, - "title": "Response that is received when getting a network parameter" - }, - "v2GetNodeResponse": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaNode", - "description": "Data specific to a single node on the Vega network." - } - }, - "title": "Response from getting node" - }, - "v2GetOracleSpecResponse": { - "type": "object", - "properties": { - "oracleSpec": { - "$ref": "#/definitions/vegaOracleSpec", - "description": "External data spec matching the ID." - } - }, - "title": "Response for a oracle spec" - }, - "v2GetOrderResponse": { - "type": "object", - "properties": { - "order": { - "$ref": "#/definitions/vegaOrder", - "description": "Order details, if one was found." - } - }, - "title": "Response received from the query for getting a single order" - }, - "v2GetPartyActivityStreakResponse": { - "type": "object", - "properties": { - "activityStreak": { - "$ref": "#/definitions/v1PartyActivityStreak", - "description": "Party's activity streak in a given epoch." - } - }, - "title": "Response when getting a party's activity streaks across epochs" - }, - "v2GetPartyResponse": { - "type": "object", - "properties": { - "party": { - "$ref": "#/definitions/vegaParty", - "description": "Data for the party requested." - } - }, - "title": "Response from getting party by ID" - }, - "v2GetPartyVestingStatsResponse": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "rewardBonusMultiplier": { - "type": "string", - "description": "Reward bonus multiplier." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which this information is valid." - }, - "quantumBalance": { - "type": "string", - "description": "The balance of the party, in quantum." - } - }, - "title": "Vesting reward statistics for a given party" - }, - "v2GetProtocolUpgradeStatusResponse": { - "type": "object", - "properties": { - "ready": { - "type": "boolean", - "description": "Indicator if the upgrade is ready or not." - } - }, - "title": "Response from getting protocol upgrade status" - }, - "v2GetReferralSetStatsResponse": { - "type": "object", - "properties": { - "stats": { - "$ref": "#/definitions/v2ReferralSetStatsConnection", - "description": "Referral set statistics for the epoch." - } - }, - "description": "Response containing the volume discount statistics for the given epoch." - }, - "v2GetRiskFactorsResponse": { - "type": "object", - "properties": { - "riskFactor": { - "$ref": "#/definitions/vegaRiskFactor", - "description": "Risk factor emitted by the risk model for a given market." - } - }, - "title": "Response that is received from getting a risk factor" - }, - "v2GetStakeResponse": { - "type": "object", - "properties": { - "currentStakeAvailable": { - "type": "string", - "description": "Current stake available information." - }, - "stakeLinkings": { - "$ref": "#/definitions/v2StakesConnection", - "description": "Paged list of stake data with corresponding page information." - } - }, - "title": "Response that is received from requesting stake information" - }, - "v2GetStopOrderResponse": { - "type": "object", - "properties": { - "order": { - "$ref": "#/definitions/v1StopOrderEvent", - "description": "Order details, if one was found." - } - }, - "description": "Response received from the query for getting a single stop order." - }, - "v2GetTotalTransferFeeDiscountResponse": { - "type": "object", - "properties": { - "totalDiscount": { - "type": "string", - "description": "Total per party per asset discount available." - } - }, - "title": "Returns total transfer fee discount available" - }, - "v2GetTransferResponse": { - "type": "object", - "properties": { - "transferNode": { - "$ref": "#/definitions/v2TransferNode", - "description": "Transfer and its fees requested by ID." - } - }, - "title": "Response that is received when querying transfers by ID" - }, - "v2GetVegaTimeResponse": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp representation of current VegaTime as represented in Unix nanoseconds, for example\n`1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`." - } - }, - "title": "Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"" - }, - "v2GetVestingBalancesSummaryResponse": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these balances are valid." - }, - "lockedBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyLockedBalance" - }, - "description": "List of locked balances for the party." - }, - "vestingBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingBalance" - }, - "description": "List of vesting balances for the party." - } - }, - "description": "List of vesting and locked balances for a party." - }, - "v2GetVolumeDiscountStatsResponse": { - "type": "object", - "properties": { - "stats": { - "$ref": "#/definitions/v2VolumeDiscountStatsConnection", - "description": "Volume discount statistics for an epoch." - } - }, - "description": "Response containing the volume discount statistics for the given epoch." - }, - "v2GetWithdrawalResponse": { - "type": "object", - "properties": { - "withdrawal": { - "$ref": "#/definitions/vegaWithdrawal", - "description": "Withdrawal matching the ID from the request." - } - }, - "title": "Response for a withdrawal request" - }, - "v2GovernanceDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2GovernanceDataEdge" - }, - "description": "Page of governance data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of governance data and corresponding page information" - }, - "v2GovernanceDataEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaGovernanceData", - "description": "Governance data content, i.e. proposal and votes for and against." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Governance data with the corresponding cursor." - }, - "v2HistorySegment": { - "type": "object", - "properties": { - "fromHeight": { - "type": "string", - "format": "int64", - "description": "Starting height of the history segment." - }, - "toHeight": { - "type": "string", - "format": "int64", - "description": "Ending height of the history segment." - }, - "historySegmentId": { - "type": "string", - "description": "History segment ID." - }, - "previousHistorySegmentId": { - "type": "string", - "description": "Previous history segment ID." - }, - "databaseVersion": { - "type": "string", - "format": "int64", - "description": "Database schema version of the history segment." - }, - "chainId": { - "type": "string", - "description": "Chain ID of the history segment." - } - }, - "title": "Describes a network history segment" - }, - "v2IndividualGameEntities": { - "type": "object", - "properties": { - "individual": { - "type": "array", - "items": { - "$ref": "#/definitions/v2IndividualGameEntity" - }, - "description": "List of individual party IDs, and the metrics associated with each participant." - } - }, - "title": "List of individuals that are participating in a game" - }, - "v2IndividualGameEntity": { - "type": "object", - "properties": { - "individual": { - "type": "string", - "title": "Party ID of the individual participating" - }, - "rank": { - "type": "string", - "format": "uint64", - "description": "Rank of the individual either in the game or within their team." - }, - "volume": { - "type": "string", - "title": "Volume traded by the individual" - }, - "rewardMetric": { - "$ref": "#/definitions/vegaDispatchMetric", - "title": "Reward metric applied to the individual" - }, - "rewardEarned": { - "type": "string", - "title": "Reward earned by the individual during the epoch" - }, - "totalRewardsEarned": { - "type": "string", - "title": "Total rewards earned by the individual for the game" - } - }, - "description": "Data relating to an individual participating in a game.\nThis can be used for both team members who are participating in a team game,\nor individuals participating in an individual entity game." - }, - "v2InfoResponse": { - "type": "object", - "properties": { - "version": { - "type": "string", - "description": "Semver formatted version of the data node." - }, - "commitHash": { - "type": "string", - "description": "Commit hash from which the data node was built." - } - }, - "title": "Response that is received from the node information query" - }, - "v2IntervalToCandleId": { - "type": "object", - "properties": { - "interval": { - "type": "string", - "description": "Interval for the candle." - }, - "candleId": { - "type": "string", - "description": "Unique id of the candle." - } - }, - "title": "Maps an interval for a given market to its corresponding candle ID" - }, - "v2KeyRotationConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2KeyRotationEdge" - }, - "description": "Page of key rotation data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of key rotations data and corresponding page information" - }, - "v2KeyRotationEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1KeyRotation", - "description": "Data relating to a key rotation that was performed by a node on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Key rotation data with the corresponding cursor." - }, - "v2LedgerEntryFilter": { - "type": "object", - "properties": { - "closeOnAccountFilters": { - "type": "boolean", - "description": "Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included." - }, - "fromAccountFilter": { - "$ref": "#/definitions/v2AccountFilter", - "description": "Used to set values for filtering sender accounts. Party must be provided in this filter or 'to' account filter, or both." - }, - "toAccountFilter": { - "$ref": "#/definitions/v2AccountFilter", - "description": "Used to set values for filtering receiver accounts. Party must be provided in this filter or 'from' account filter, or both." - }, - "transferTypes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaTransferType" - }, - "description": "List of transfer types that is used for filtering sender and receiver accounts." - }, - "transferId": { - "type": "string", - "title": "List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored" - } - }, - "description": "Ledger entry filter sets filters on returned set of ledger entries." - }, - "v2LiquidationEstimate": { - "type": "object", - "properties": { - "worstCase": { - "$ref": "#/definitions/v2LiquidationPrice", - "description": "Liquidation price estimate assuming slippage cap is applied." - }, - "bestCase": { - "$ref": "#/definitions/v2LiquidationPrice", - "description": "Liquidation price estimate assuming no slippage." - } - }, - "description": "Liquidation estimate for both worst and best case possible." - }, - "v2LiquidationPrice": { - "type": "object", - "properties": { - "openVolumeOnly": { - "type": "string", - "description": "Liquidation price for current open volume ignoring any active orders." - }, - "includingBuyOrders": { - "type": "string", - "description": "Liquidation price assuming buy orders start getting filled." - }, - "includingSellOrders": { - "type": "string", - "description": "Liquidation price assuming sell orders start getting filled." - } - }, - "description": "Liquidation price estimate for either only the current open volume and position given some or all buy orders get filled, or position given some or all sell orders get filled." - }, - "v2LiquidityProvider": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID of the liquidity provider." - }, - "marketId": { - "type": "string", - "description": "ID of the market the liquidity provider is active in." - }, - "feeShare": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare", - "description": "Information used for calculating an LP's fee share, such as the equity like share,\naverage entry valuation and liquidity score for the liquidity provider for the specified market." - }, - "sla": { - "$ref": "#/definitions/vegaLiquidityProviderSLA", - "description": "Information about LP's SLA performance." - } - }, - "description": "Liquidity provider information." - }, - "v2LiquidityProviderConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2LiquidityProviderEdge" - }, - "description": "Page of liquidity provider data." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of liquidity provider data and corresponding page information." - }, - "v2LiquidityProviderEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2LiquidityProvider", - "description": "Liquidity provider information returned by the API." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further data." - } - }, - "description": "Liquidity provider data with the corresponding cursor." - }, - "v2LiquidityProvisionWithPendingEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2LiquidityProvision", - "description": "Data corresponding to a liquidity provider's commitment." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Liquidity provision data with the corresponding cursor." - }, - "v2LiquidityProvisionsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2LiquidityProvisionsEdge" - }, - "description": "Page of liquidity provisions data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of liquidity provisions data and corresponding page information" - }, - "v2LiquidityProvisionsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaLiquidityProvision", - "description": "Data corresponding to a liquidity provider's commitment." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Liquidity provision data with the corresponding cursor." - }, - "v2LiquidityProvisionsWithPendingConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2LiquidityProvisionWithPendingEdge" - }, - "description": "Page of liquidity provisions data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used to fetch further pages." - } - }, - "title": "Page of liquidity provisions data and corresponding page information" - }, - "v2ListAccountsResponse": { - "type": "object", - "properties": { - "accounts": { - "$ref": "#/definitions/v2AccountsConnection", - "description": "Page of accounts data and corresponding page information." - } - }, - "description": "Response that is received from listing accounts query." - }, - "v2ListAllLiquidityProvisionsResponse": { - "type": "object", - "properties": { - "liquidityProvisions": { - "$ref": "#/definitions/v2LiquidityProvisionsWithPendingConnection", - "description": "Page of liquidity provisions data and corresponding page information." - } - }, - "title": "Response from listing liquidity provisions" - }, - "v2ListAllNetworkHistorySegmentsResponse": { - "type": "object", - "properties": { - "segments": { - "type": "array", - "items": { - "$ref": "#/definitions/v2HistorySegment" - }, - "description": "Page of history segments data and corresponding page information." - } - }, - "title": "Response with a list of all the nodes history segments" - }, - "v2ListAllPositionsResponse": { - "type": "object", - "properties": { - "positions": { - "$ref": "#/definitions/v2PositionConnection", - "description": "Page of positions data and corresponding page information." - } - }, - "title": "Response to query for listing of positions, given the filter is supplied" - }, - "v2ListAssetsResponse": { - "type": "object", - "properties": { - "assets": { - "$ref": "#/definitions/v2AssetsConnection", - "description": "Page of assets data and corresponding page information." - } - }, - "title": "Response from listing assets" - }, - "v2ListBalanceChangesResponse": { - "type": "object", - "properties": { - "balances": { - "$ref": "#/definitions/v2AggregatedBalanceConnection", - "description": "Page of aggregated balances data and corresponding page information." - } - }, - "description": "Response that is received from querying balances changes." - }, - "v2ListCandleDataResponse": { - "type": "object", - "properties": { - "candles": { - "$ref": "#/definitions/v2CandleDataConnection", - "description": "Page of candle data and corresponding page information." - } - }, - "title": "Response for list of candles for a market at an interval" - }, - "v2ListCandleIntervalsResponse": { - "type": "object", - "properties": { - "intervalToCandleId": { - "type": "array", - "items": { - "$ref": "#/definitions/v2IntervalToCandleId" - }, - "description": "List of the mappings." - } - }, - "title": "List of mapped pairs `interval` -\u003e `candle ID` for a given market" - }, - "v2ListCheckpointsResponse": { - "type": "object", - "properties": { - "checkpoints": { - "$ref": "#/definitions/v2CheckpointsConnection", - "description": "Page of checkpoints data and corresponding page information." - } - }, - "title": "Response message containing all checkpoints requested" - }, - "v2ListCoreSnapshotsResponse": { - "type": "object", - "properties": { - "coreSnapshots": { - "$ref": "#/definitions/v2CoreSnapshotConnection", - "description": "Page of core snapshot data and corresponding page information." - } - }, - "description": "Response from a ListCoreSnapshots RPC call; a paginated list of the core snapshots." - }, - "v2ListDelegationsResponse": { - "type": "object", - "properties": { - "delegations": { - "$ref": "#/definitions/v2DelegationsConnection", - "description": "Page of delegations data and corresponding page information." - } - }, - "title": "Response from listing delegations" - }, - "v2ListDepositsResponse": { - "type": "object", - "properties": { - "deposits": { - "$ref": "#/definitions/v2DepositsConnection", - "description": "Page of deposits data and corresponding page information." - } - }, - "title": "Response from listing deposits" - }, - "v2ListERC20MultiSigSignerAddedBundlesResponse": { - "type": "object", - "properties": { - "bundles": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedConnection", - "description": "Page of bundles for that validator - it may have been added multiple times if removed in between - and corresponding page information." - } - }, - "title": "Response from adding a signature bundle to the signer list of a multisig contract for a particular validator" - }, - "v2ListERC20MultiSigSignerRemovedBundlesResponse": { - "type": "object", - "properties": { - "bundles": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedConnection", - "description": "Page of signer bundle data items for that validator and corresponding page information." - } - }, - "title": "Response when removing a signature bundle from the signer list of the multisig contract for a particular validator" - }, - "v2ListEntitiesResponse": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAccount" - } - }, - "orders": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrder" - } - }, - "positions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPosition" - } - }, - "ledgerEntries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerEntry" - } - }, - "balanceChanges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountBalance" - } - }, - "transfers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaeventsv1Transfer" - } - }, - "votes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - } - }, - "erc20MultiSigSignerAddedBundles": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedBundle" - } - }, - "erc20MultiSigSignerRemovedBundles": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedBundle" - } - }, - "trades": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaTrade" - } - }, - "oracleSpecs": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOracleSpec" - } - }, - "oracleData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOracleData" - } - }, - "markets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarket" - } - }, - "parties": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaParty" - } - }, - "marginLevels": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarginLevels" - } - }, - "rewards": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaReward" - } - }, - "deposits": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDeposit" - } - }, - "withdrawals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaWithdrawal" - } - }, - "assets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAsset" - } - }, - "liquidityProvisions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProvision" - } - }, - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaProposal" - } - }, - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - } - }, - "nodes": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NodeBasic" - } - }, - "nodeSignatures": { - "type": "array", - "items": { - "$ref": "#/definitions/v1NodeSignature" - } - }, - "networkParameters": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNetworkParameter" - } - }, - "keyRotations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1KeyRotation" - } - }, - "ethereumKeyRotations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1EthereumKeyRotation" - } - }, - "protocolUpgradeProposals": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent" - } - } - }, - "title": "Response from listing entities that were created for a given transaction hash" - }, - "v2ListEpochRewardSummariesResponse": { - "type": "object", - "properties": { - "summaries": { - "$ref": "#/definitions/v2EpochRewardSummaryConnection", - "description": "Page of rewards details for a single party and corresponding page information." - } - }, - "title": "Return message with reward details in for a single party" - }, - "v2ListEthereumKeyRotationsResponse": { - "type": "object", - "properties": { - "keyRotations": { - "$ref": "#/definitions/v2EthereumKeyRotationsConnection", - "description": "Page of Ethereum key rotations data and corresponding page information." - } - }, - "title": "Response message containing Ethereum key rotations" - }, - "v2ListFundingPaymentsResponse": { - "type": "object", - "properties": { - "fundingPayments": { - "$ref": "#/definitions/v2FundingPaymentConnection", - "description": "Page of funding period data and corresponding page information." - } - }, - "title": "Response from listing funding payments" - }, - "v2ListFundingPeriodDataPointsResponse": { - "type": "object", - "properties": { - "fundingPeriodDataPoints": { - "$ref": "#/definitions/v2FundingPeriodDataPointConnection", - "description": "Page of funding period data points and corresponding page information." - } - }, - "description": "Response from listing funding period data points." - }, - "v2ListFundingPeriodsResponse": { - "type": "object", - "properties": { - "fundingPeriods": { - "$ref": "#/definitions/v2FundingPeriodConnection", - "description": "Page of funding period data and corresponding page information." - } - }, - "title": "Response from listing funding periods" - }, - "v2ListGamesResponse": { - "type": "object", - "properties": { - "games": { - "$ref": "#/definitions/v2GamesConnection", - "description": "Page of games data and corresponding page information." - } - }, - "description": "Response containing games data." - }, - "v2ListGovernanceDataRequestType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ALL", - "TYPE_NEW_MARKET", - "TYPE_UPDATE_MARKET", - "TYPE_NETWORK_PARAMETERS", - "TYPE_NEW_ASSET", - "TYPE_NEW_FREE_FORM", - "TYPE_UPDATE_ASSET", - "TYPE_NEW_SPOT_MARKET", - "TYPE_UPDATE_SPOT_MARKET", - "TYPE_NEW_TRANSFER", - "TYPE_CANCEL_TRANSFER", - "TYPE_UPDATE_MARKET_STATE", - "TYPE_UPDATE_REFERRAL_PROGRAM", - "TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program", - "title": "Filter for the types of governance proposals to view" - }, - "v2ListGovernanceDataResponse": { - "type": "object", - "properties": { - "connection": { - "$ref": "#/definitions/v2GovernanceDataConnection", - "description": "Page of governance data and corresponding page information." - } - }, - "title": "Response from listing governance data" - }, - "v2ListKeyRotationsResponse": { - "type": "object", - "properties": { - "rotations": { - "$ref": "#/definitions/v2KeyRotationConnection", - "description": "Page of key rotations data and corresponding page information." - } - }, - "title": "Response message containing Vega key rotations" - }, - "v2ListLatestMarketDataResponse": { - "type": "object", - "properties": { - "marketsData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketData" - } - } - }, - "title": "Response that is received when listing the latest market data for every market" - }, - "v2ListLedgerEntriesResponse": { - "type": "object", - "properties": { - "ledgerEntries": { - "$ref": "#/definitions/v2AggregatedLedgerEntriesConnection", - "description": "Page of aggregated ledger entries data and corresponding page information." - } - }, - "title": "Response that is received when listing ledger entries" - }, - "v2ListLiquidityProvidersResponse": { - "type": "object", - "properties": { - "liquidityProviders": { - "$ref": "#/definitions/v2LiquidityProviderConnection", - "description": "Page of liquidity providers and corresponding page information." - } - }, - "description": "Response for listing liquidity providers." - }, - "v2ListLiquidityProvisionsResponse": { - "type": "object", - "properties": { - "liquidityProvisions": { - "$ref": "#/definitions/v2LiquidityProvisionsConnection", - "description": "Page of liquidity provisions data and corresponding page information." - } - }, - "title": "Response from listing liquidity provisions" - }, - "v2ListMarginLevelsResponse": { - "type": "object", - "properties": { - "marginLevels": { - "$ref": "#/definitions/v2MarginConnection", - "description": "Page of margin levels data and corresponding page information." - } - }, - "title": "Response from listing margin levels" - }, - "v2ListMarketsResponse": { - "type": "object", - "properties": { - "markets": { - "$ref": "#/definitions/v2MarketConnection", - "description": "Page of markets and corresponding page information." - } - }, - "title": "Response from listing markets" - }, - "v2ListNetworkParametersResponse": { - "type": "object", - "properties": { - "networkParameters": { - "$ref": "#/definitions/v2NetworkParameterConnection", - "description": "Page of network parameters and corresponding page information." - } - }, - "title": "Response containing all of the Vega network parameters" - }, - "v2ListNodeSignaturesResponse": { - "type": "object", - "properties": { - "signatures": { - "$ref": "#/definitions/v2NodeSignaturesConnection", - "description": "Page of nodes signatures and corresponding page information." - } - }, - "title": "Response to specify the ID of the resource to retrieve aggregated signatures for" - }, - "v2ListNodesResponse": { - "type": "object", - "properties": { - "nodes": { - "$ref": "#/definitions/v2NodesConnection", - "description": "Page of node data and corresponding page information." - } - }, - "title": "Response from listing nodes" - }, - "v2ListOracleDataResponse": { - "type": "object", - "properties": { - "oracleData": { - "$ref": "#/definitions/v2OracleDataConnection", - "description": "Page of seen oracle data and corresponding page information." - } - }, - "title": "Response to get all seen oracle data" - }, - "v2ListOracleSpecsResponse": { - "type": "object", - "properties": { - "oracleSpecs": { - "$ref": "#/definitions/v2OracleSpecsConnection", - "description": "Page of active oracle specs and corresponding page information." - } - }, - "title": "Response to get all active oracle specs" - }, - "v2ListOrderVersionsResponse": { - "type": "object", - "properties": { - "orders": { - "$ref": "#/definitions/v2OrderConnection", - "description": "Page of order versions and corresponding page information." - } - }, - "title": "Response that is received when listing possible order versions" - }, - "v2ListOrdersResponse": { - "type": "object", - "properties": { - "orders": { - "$ref": "#/definitions/v2OrderConnection", - "description": "Page of orders data and corresponding page information." - } - }, - "title": "Response that is received from the query to list orders" - }, - "v2ListPaidLiquidityFeesResponse": { - "type": "object", - "properties": { - "paidLiquidityFees": { - "$ref": "#/definitions/v2PaidLiquidityFeesConnection", - "description": "Page of paid liquidity fees and corresponding page information." - } - }, - "description": "Paid liquidity fees response." - }, - "v2ListPartiesProfilesResponse": { - "type": "object", - "properties": { - "profiles": { - "$ref": "#/definitions/v2PartiesProfilesConnection", - "description": "Page of profile data and corresponding page information." - } - }, - "description": "Response from listing parties' profiles." - }, - "v2ListPartiesResponse": { - "type": "object", - "properties": { - "parties": { - "$ref": "#/definitions/v2PartyConnection", - "description": "Page of parties data and corresponding page information." - } - }, - "title": "Response from listing parties" - }, - "v2ListPartyMarginModesResponse": { - "type": "object", - "properties": { - "partyMarginModes": { - "$ref": "#/definitions/v2PartyMarginModesConnection", - "description": "Page of party margin modes data and corresponding page information." - } - }, - "description": "Response containing party margin modes." - }, - "v2ListPositionsResponse": { - "type": "object", - "properties": { - "positions": { - "$ref": "#/definitions/v2PositionConnection", - "description": "Page of positions data and corresponding page information." - } - }, - "title": "Response for a list of positions for a party" - }, - "v2ListProtocolUpgradeProposalsResponse": { - "type": "object", - "properties": { - "protocolUpgradeProposals": { - "$ref": "#/definitions/v2ProtocolUpgradeProposalConnection", - "description": "Page of protocol upgrade proposals and corresponding page information." - } - }, - "title": "Response type from a ListProtocolUpgradeProposals RPC call; a paginated list of protocol upgrade proposals" - }, - "v2ListReferralSetRefereesResponse": { - "type": "object", - "properties": { - "referralSetReferees": { - "$ref": "#/definitions/v2ReferralSetRefereeConnection", - "description": "Page of referral set referee data and corresponding page information." - } - }, - "title": "Response containing information about a referral set's referees" - }, - "v2ListReferralSetsResponse": { - "type": "object", - "properties": { - "referralSets": { - "$ref": "#/definitions/v2ReferralSetConnection", - "description": "Page of referral set data and corresponding page information." - } - }, - "title": "Response containing information about a referral set or sets" - }, - "v2ListRewardSummariesResponse": { - "type": "object", - "properties": { - "summaries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRewardSummary" - }, - "description": "Page of rewards details data and corresponding page information." - } - }, - "title": "Response from listing reward details in for a single party" - }, - "v2ListRewardsResponse": { - "type": "object", - "properties": { - "rewards": { - "$ref": "#/definitions/v2RewardsConnection", - "description": "Page of rewards data and corresponding page information." - } - }, - "title": "Response for listing reward details for a single party" - }, - "v2ListStopOrdersResponse": { - "type": "object", - "properties": { - "orders": { - "$ref": "#/definitions/v2StopOrderConnection", - "description": "Page of stop orders data and corresponding page information." - } - }, - "description": "Response that is received from the query to list stop orders." - }, - "v2ListSuccessorMarketsResponse": { - "type": "object", - "properties": { - "successorMarkets": { - "$ref": "#/definitions/v2SuccessorMarketConnection", - "description": "List of markets in the succession line." - } - }, - "description": "Response from a list successor markets request." - }, - "v2ListTeamMembersStatisticsResponse": { - "type": "object", - "properties": { - "statistics": { - "$ref": "#/definitions/v2TeamMembersStatisticsConnection", - "description": "Page of team members' statistics data and corresponding page information." - } - }, - "description": "Response for the list team members' statistics request containing the statistics." - }, - "v2ListTeamRefereeHistoryResponse": { - "type": "object", - "properties": { - "teamRefereeHistory": { - "$ref": "#/definitions/v2TeamRefereeHistoryConnection", - "description": "Page of team referee history data and corresponding page information." - } - }, - "description": "Response that is sent when listing the referee history for a given team." - }, - "v2ListTeamRefereesResponse": { - "type": "object", - "properties": { - "teamReferees": { - "$ref": "#/definitions/v2TeamRefereeConnection", - "description": "Page of team referee data and corresponding page information." - } - }, - "description": "Response that is sent when listing the referees for a given team." - }, - "v2ListTeamsResponse": { - "type": "object", - "properties": { - "teams": { - "$ref": "#/definitions/v2TeamConnection", - "description": "Page of team data and corresponding page information." - } - }, - "description": "Response for the list teams request containing the team information." - }, - "v2ListTeamsStatisticsResponse": { - "type": "object", - "properties": { - "statistics": { - "$ref": "#/definitions/v2TeamsStatisticsConnection", - "description": "Page of teams' statistics data and corresponding page information." - } - }, - "description": "Response for the list teams' statistics request containing the statistics." - }, - "v2ListTradesResponse": { - "type": "object", - "properties": { - "trades": { - "$ref": "#/definitions/v2TradeConnection", - "description": "Page of trades data and corresponding page information." - } - }, - "title": "Response from listing trades" - }, - "v2ListTransfersResponse": { - "type": "object", - "properties": { - "transfers": { - "$ref": "#/definitions/v2TransferConnection", - "description": "Page of transfers data and corresponding page information." - } - }, - "title": "Response that is received when listing transfers" - }, - "v2ListVotesResponse": { - "type": "object", - "properties": { - "votes": { - "$ref": "#/definitions/v2VoteConnection", - "description": "Page of votes data received and corresponding page information." - } - }, - "title": "Response that is received when listing Votes" - }, - "v2ListWithdrawalsResponse": { - "type": "object", - "properties": { - "withdrawals": { - "$ref": "#/definitions/v2WithdrawalsConnection", - "description": "Page of withdrawals data and corresponding page information." - } - }, - "title": "Response from listing withdrawals data" - }, - "v2MarginConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2MarginEdge" - }, - "description": "Page of margins data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of margins data and corresponding page information." - }, - "v2MarginEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin levels data that satisfy a list margin levels request." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Margin data with the corresponding cursor." - }, - "v2MarginEstimate": { - "type": "object", - "properties": { - "worstCase": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin level estimate assuming slippage cap is applied." - }, - "bestCase": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin level estimate assuming no slippage." - } - }, - "description": "Margin level estimate for both worst and best case possible." - }, - "v2MarketConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2MarketEdge" - }, - "description": "Page of markets and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of markets and corresponding page information." - }, - "v2MarketDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2MarketDataEdge" - }, - "description": "Page of market data items and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of market data items and corresponding page information" - }, - "v2MarketDataEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaMarketData", - "description": "Data generated by a market when open." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Market data with the corresponding cursor." - }, - "v2MarketEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaMarket", - "description": "Information about the market." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Market information with the corresponding cursor." - }, - "v2NetworkParameterConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NetworkParameterEdge" - }, - "description": "Page of network parameters data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of network parameters and corresponding page information" - }, - "v2NetworkParameterEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "Name and associated value of a network parameter." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Network parameter with the corresponding cursor." - }, - "v2NodeBasic": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID identifying the node." - }, - "pubKey": { - "type": "string", - "description": "Node operator's public key." - }, - "tmPubKey": { - "type": "string", - "description": "Tendermint public key of the node." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node." - }, - "infoUrl": { - "type": "string", - "description": "URL that provides more information about the node." - }, - "location": { - "type": "string", - "description": "Country code for the location of the node." - }, - "status": { - "$ref": "#/definitions/vegaNodeStatus", - "description": "Node status." - }, - "name": { - "type": "string", - "description": "Node name." - }, - "avatarUrl": { - "type": "string", - "description": "Avatar URL." - } - }, - "description": "Represents a basic node without any epoch specific details like delegations, staking, rewards etc." - }, - "v2NodeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaNode", - "description": "Data specific to a single node on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Node data with the corresponding cursor." - }, - "v2NodeSignatureEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1NodeSignature", - "description": "Node signature data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Nodes signature edge with the corresponding cursor." - }, - "v2NodeSignaturesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NodeSignatureEdge" - }, - "description": "Page of node signatures and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of node signatures and corresponding page information." - }, - "v2NodesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NodeEdge" - }, - "description": "Page of node data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of node data and corresponding page information" - }, - "v2ObserveAccountsResponse": { - "type": "object", - "properties": { - "snapshot": { - "$ref": "#/definitions/v2AccountSnapshotPage", - "description": "'Initial image' snapshot containing current account balances." - }, - "updates": { - "$ref": "#/definitions/v2AccountUpdates", - "description": "List of account updates in the last block." - } - }, - "description": "Response that is received when subscribing to a stream of accounts." - }, - "v2ObserveCandleDataResponse": { - "type": "object", - "properties": { - "candle": { - "$ref": "#/definitions/apiv2Candle", - "description": "Candle data." - } - }, - "title": "Response that is received when subscribing to a stream of candles" - }, - "v2ObserveEventBusResponse": { - "type": "object", - "properties": { - "events": { - "type": "array", - "items": { - "$ref": "#/definitions/v1BusEvent" - }, - "description": "List of events that occurred on the Vega event bus." - } - }, - "title": "Response to a subscribed stream of events from the Vega event bus" - }, - "v2ObserveGovernanceResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/vegaGovernanceData", - "description": "Governance data, i.e. proposal and votes for and against." - } - }, - "title": "Response from governance subscription" - }, - "v2ObserveLedgerMovementsResponse": { - "type": "object", - "properties": { - "ledgerMovement": { - "$ref": "#/definitions/vegaLedgerMovement", - "description": "Ledger movements data with list of ledger entries and and post-transfer balances." - } - }, - "title": "Response from ledger movements subscription" - }, - "v2ObserveLiquidityProvisionsResponse": { - "type": "object", - "properties": { - "liquidityProvisions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProvision" - } - } - }, - "title": "Response from liquidity provisions subscription" - }, - "v2ObserveMarginLevelsResponse": { - "type": "object", - "properties": { - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin levels data that match the subscription request filters." - } - }, - "title": "Response from subscribing to margin levels data" - }, - "v2ObserveMarketsDataResponse": { - "type": "object", - "properties": { - "marketData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketData" - }, - "description": "List of market data." - } - }, - "title": "Response that is received for market data subscription" - }, - "v2ObserveMarketsDepthResponse": { - "type": "object", - "properties": { - "marketDepth": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketDepth" - }, - "description": "List of market depth data." - } - }, - "description": "Response that is received for MarketDepth subscription." - }, - "v2ObserveMarketsDepthUpdatesResponse": { - "type": "object", - "properties": { - "update": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketDepthUpdate" - }, - "description": "List of market depth update data." - } - }, - "title": "Response that is received for market depth update subscription" - }, - "v2ObserveOrdersResponse": { - "type": "object", - "properties": { - "snapshot": { - "$ref": "#/definitions/v2OrderSnapshotPage", - "description": "An 'initial image' snapshot containing current live orders." - }, - "updates": { - "$ref": "#/definitions/v2OrderUpdates", - "description": "List of order updates in the last block." - } - }, - "description": "Response that is received from an orders subscription." - }, - "v2ObservePositionsResponse": { - "type": "object", - "properties": { - "snapshot": { - "$ref": "#/definitions/v2PositionSnapshotPage", - "description": "An 'initial image' snapshot containing current positions." - }, - "updates": { - "$ref": "#/definitions/v2PositionUpdates", - "description": "List of position updates in the last block." - } - }, - "title": "Response received from a positions subscription request" - }, - "v2ObserveTradesResponse": { - "type": "object", - "properties": { - "trades": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaTrade" - }, - "description": "List of 0 or more trades." - } - }, - "title": "Stream of trades" - }, - "v2ObserveTransactionResultsResponse": { - "type": "object", - "properties": { - "transactionResults": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TransactionResult" - }, - "description": "List of 0 or more transaction results." - } - }, - "title": "Stream of transaction results" - }, - "v2ObserveVotesResponse": { - "type": "object", - "properties": { - "vote": { - "$ref": "#/definitions/vegaVote", - "description": "Data associated with governance votes that are published to the stream." - } - }, - "title": "Response that is received from votes subscription" - }, - "v2OracleDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2OracleDataEdge" - }, - "description": "Page of oracle data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of oracle data and corresponding page information." - }, - "v2OracleDataEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaOracleData", - "description": "Data that was received from an external oracle." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Oracle data item with the corresponding cursor." - }, - "v2OracleSpecEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaOracleSpec", - "description": "External spec data that satisfies the list request." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Oracle specs data item with the corresponding cursor." - }, - "v2OracleSpecsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2OracleSpecEdge" - }, - "description": "Page of oracle specs data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of oracle specs and corresponding page information" - }, - "v2OrderConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2OrderEdge" - }, - "description": "Page of orders and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of orders data and corresponding page information." - }, - "v2OrderEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaOrder", - "description": "Data associated with an order submitted to a Vega node." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Order data with the corresponding cursor." - }, - "v2OrderFilter": { - "type": "object", - "properties": { - "statuses": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrderStatus" - }, - "description": "Restrict orders to those with the given statuses." - }, - "types": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrderType" - }, - "description": "Restrict orders to those with the given types." - }, - "timeInForces": { - "type": "array", - "items": { - "$ref": "#/definitions/OrderTimeInForce" - }, - "description": "Restrict orders to those with the given Time In Force." - }, - "excludeLiquidity": { - "type": "boolean", - "description": "Indicator if liquidity provisions should be included or not in the list." - }, - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed by the given party IDs." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed on the given market IDs." - }, - "reference": { - "type": "string", - "description": "Restrict orders to those with the given reference." - }, - "dateRange": { - "$ref": "#/definitions/v2DateRange", - "description": "Restrict orders to those placed during the given date range. If not set, all orders will be returned." - }, - "liveOnly": { - "type": "boolean", - "description": "Restrict orders to those that are live. If not set, it is treated as being false." - } - }, - "title": "Order filter that contains all filtering conditions and values that are applied to the orders listing" - }, - "v2OrderInfo": { - "type": "object", - "properties": { - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Side for the order, e.g. buy or sell." - }, - "price": { - "type": "string", - "description": "Price for the order. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "required": [ - "price" - ] - }, - "remaining": { - "type": "string", - "format": "uint64", - "description": "Size remaining.", - "required": [ - "remaining" - ] - }, - "isMarketOrder": { - "type": "boolean", - "description": "Boolean that indicates if it is a market order.", - "required": [ - "is_market_order" - ] - } - }, - "description": "Basic description of an order.", - "required": [ - "price", - "remaining", - "isMarketOrder" - ] - }, - "v2OrderSnapshotPage": { - "type": "object", - "properties": { - "orders": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrder" - }, - "description": "List of order data parts." - }, - "lastPage": { - "type": "boolean", - "description": "Indicator if the last page is reached or not." - } - }, - "description": "'Initial image' of live orders, may be sent over multiple response messages." - }, - "v2OrderUpdates": { - "type": "object", - "properties": { - "orders": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrder" - }, - "description": "List of orders data." - } - }, - "description": "List of order updates in the last block." - }, - "v2PageInfo": { - "type": "object", - "properties": { - "hasNextPage": { - "type": "boolean", - "description": "Indicator if there is a next page." - }, - "hasPreviousPage": { - "type": "boolean", - "description": "Indicator if there is a previous page." - }, - "startCursor": { - "type": "string", - "description": "Start cursor." - }, - "endCursor": { - "type": "string", - "description": "End cursor." - } - }, - "title": "Page information for cursor based pagination" - }, - "v2Pagination": { - "type": "object", - "properties": { - "first": { - "type": "integer", - "format": "int32", - "description": "Number of records to be returned that sort greater than row identified by cursor supplied in 'after'." - }, - "after": { - "type": "string", - "description": "If paging forwards, the cursor string for the last row of the previous page." - }, - "last": { - "type": "integer", - "format": "int32", - "description": "Number of records to be returned that sort less than row identified by cursor supplied in 'before'." - }, - "before": { - "type": "string", - "description": "If paging forwards, the cursor string for the first row of the previous page." - }, - "newestFirst": { - "type": "boolean", - "description": "Whether to order the results with the newest records first. If not set, the default value is true." - } - }, - "description": "All data returned from the API is ordered in a well-defined manner.\nThe specific columns and the order in which the sorting is performed\ndepend on the API endpoint being called. However, the primary sorting\ncolumn is usually the timestamp of the block in which the data was last updated.\n\nTo prevent excessively large response messages and to avoid overloading\ndatabase resources, the API employs a cursor-based pagination mechanism.\n\nThis Pagination message can be optionally provided as part of the request to specify:\n- The starting point within the total result set for beginning the page\n- The size of the returned page\n- The ordering of the data within that page\n\nIf no Pagination message is provided, the API will return the first page of\ndata using the default page size. The default page size is 1000.\n\nTo retrieve subsequent pages, the caller must examine the PageInfo structure\nreturned in the response to find a cursor string that uniquely identifies the\nlast row of that page. This cursor should then be passed in the 'after' field\nof the Pagination message in a subsequent request.\n\nFor paging backward, take the cursor for the first row of the page from PageInfo\nand pass it in the 'before' field of the Pagination message.\n\nPagination message that uses both first/after and last/before is considered invalid." - }, - "v2PaidLiquidityFeesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PaidLiquidityFeesEdge" - }, - "description": "Page of paid liquidity fees data." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Paid liquidity fees data and corresponding page information." - }, - "v2PaidLiquidityFeesEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1PaidLiquidityFeesStats", - "description": "Paid liquidity fees data returned by the API." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further data." - } - }, - "description": "Paid liquidity fees data with the corresponding cursor." - }, - "v2PartiesProfilesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PartyProfileEdge" - }, - "description": "Page of profiles and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of profile data per party and corresponding page information." - }, - "v2PartyConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PartyEdge" - }, - "description": "Page of parties and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of parties data and corresponding page information." - }, - "v2PartyEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaParty", - "description": "Data associated with a party." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Party data with the corresponding cursor." - }, - "v2PartyMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Unique ID of the market." - }, - "partyId": { - "type": "string", - "description": "Unique ID of the party." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Selected margin mode." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor for the market. Isolated mode only." - }, - "minTheoreticalMarginFactor": { - "type": "string", - "description": "Minimum theoretical margin factor for the market. Isolated mode only." - }, - "maxTheoreticalLeverage": { - "type": "string", - "description": "Maximum theoretical leverage for the market. Isolated mode only." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the update happened." - } - }, - "description": "Margin mode selected for the given party and market." - }, - "v2PartyMarginModeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2PartyMarginMode", - "description": "Party margin mode data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Party margin mode information and corresponding cursor." - }, - "v2PartyMarginModesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PartyMarginModeEdge" - }, - "description": "Page of party margin modes data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of party margin modes data and corresponding page information." - }, - "v2PartyProfileEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaPartyProfile", - "description": "Data associated with a party's profile." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Party's profile data with the corresponding cursor." - }, - "v2PingResponse": { - "type": "object", - "title": "Ping response from the data node" - }, - "v2PositionConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PositionEdge" - }, - "description": "Page of positions data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of positions and corresponding page information" - }, - "v2PositionEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaPosition", - "description": "Position data for a party on a market." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Position data with the corresponding cursor." - }, - "v2PositionSnapshotPage": { - "type": "object", - "properties": { - "positions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPosition" - }, - "description": "List of positions data." - }, - "lastPage": { - "type": "boolean", - "description": "Indicator if last page is reached or not." - } - }, - "title": "'Initial image' of current positions, may be sent over multiple response messages" - }, - "v2PositionUpdates": { - "type": "object", - "properties": { - "positions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPosition" - }, - "description": "List of positions data." - } - }, - "title": "List of position updates in the last block" - }, - "v2PositionsFilter": { - "type": "object", - "properties": { - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict positions to those related to the given parties." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict positions to those on the given markets." - } - }, - "title": "Filter to apply to the ListAllPositionsRequest" - }, - "v2ProtocolUpgradeProposalConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ProtocolUpgradeProposalEdge" - }, - "description": "Page of protocol upgrade proposals data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of protocol upgrade proposals and corresponding page information" - }, - "v2ProtocolUpgradeProposalEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent", - "description": "Protocol upgrade proposal data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Protocol upgrade proposal data with the corresponding cursor." - }, - "v2QuantumRewardsPerEpoch": { - "type": "object", - "properties": { - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch for which this information is valid." - }, - "totalQuantumRewards": { - "type": "string", - "description": "Total rewards accumulated over the epoch period, expressed in quantum value." - } - } - }, - "v2ReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID of the created set." - }, - "referrer": { - "type": "string", - "description": "Party that created the set." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the set was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the set was updated." - } - }, - "description": "Data relating to a referral set." - }, - "v2ReferralSetConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ReferralSetEdge" - }, - "description": "Page of referral set data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of referral set data and corresponding page information." - }, - "v2ReferralSetEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ReferralSet", - "description": "Referral set data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Referral set data with the corresponding cursor." - }, - "v2ReferralSetReferee": { - "type": "object", - "properties": { - "referralSetId": { - "type": "string", - "description": "Unique ID of the referral set the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the set." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the party joined the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the set." - }, - "totalRefereeNotionalTakerVolume": { - "type": "string", - "description": "Total notional volume of the referee's aggressive trades over the aggregation period." - }, - "totalRefereeGeneratedRewards": { - "type": "string", - "description": "Total rewards generated by the referee over the aggregation period." - } - }, - "title": "Data relating to referees that have joined a referral set" - }, - "v2ReferralSetRefereeConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ReferralSetRefereeEdge" - }, - "description": "Page of referral set referee data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of data about the referral set's referees and corresponding page information." - }, - "v2ReferralSetRefereeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ReferralSetReferee", - "description": "Referral set referee data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Data about the Referral set's referees with the corresponding cursor." - }, - "v2ReferralSetStats": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the set's statistics were updated." - }, - "referralSetRunningNotionalTakerVolume": { - "type": "string", - "description": "Running volume for the set based on the window length of the current\nreferral program." - }, - "partyId": { - "type": "string", - "description": "Party ID." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to the party." - }, - "rewardFactor": { - "type": "string", - "description": "Reward factor applied to the party." - }, - "epochNotionalTakerVolume": { - "type": "string", - "description": "Current referee notional taker volume." - }, - "rewardsMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral rewards due to the referrer." - }, - "rewardsFactorMultiplier": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "wasEligible": { - "type": "boolean", - "description": "Indicates if the referral set was eligible to be part of the referral program." - }, - "referrerTakerVolume": { - "type": "string", - "title": "Referrer's taker volume" - } - }, - "description": "Referral set statistics for a given epoch for a party." - }, - "v2ReferralSetStatsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ReferralSetStatsEdge" - }, - "description": "Page of volume discount statistics data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of volume discount stats data and corresponding page information." - }, - "v2ReferralSetStatsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ReferralSetStats", - "description": "Referral set stats data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Referral set stats data with the corresponding cursor." - }, - "v2RewardEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaReward", - "description": "Details for a single reward payment." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Rewards data with the corresponding cursor." - }, - "v2RewardSummaryFilter": { - "type": "object", - "properties": { - "assetIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict reward summaries to those connected to the assets in the given list." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict reward summaries to those connected to the markets in the given list." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Restrict rewards summaries to those that were paid after and including the given epoch ID." - }, - "toEpoch": { - "type": "string", - "format": "uint64", - "description": "Restrict rewards summaries to those that were paid up to and including the given epoch ID." - } - }, - "title": "Filter to restrict the results returned by the ListEpochRewardSummaries" - }, - "v2RewardsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2RewardEdge" - }, - "description": "Page of rewards data items and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of rewards data and corresponding page information." - }, - "v2StakeLinkingEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1StakeLinking", - "description": "Stake linking represent the intent from a party to deposit." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Stake linking data with the corresponding cursor." - }, - "v2StakesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2StakeLinkingEdge" - }, - "description": "Page of stake data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of stake data and corresponding page information." - }, - "v2StopOrderConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2StopOrderEdge" - }, - "description": "Page of stop orders and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of stop orders data and corresponding page information." - }, - "v2StopOrderEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1StopOrderEvent", - "description": "Data associated with an order submitted to a Vega node." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Order data with the corresponding cursor." - }, - "v2StopOrderFilter": { - "type": "object", - "properties": { - "statuses": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStopOrderStatus" - }, - "description": "Restrict orders to those with the given statuses." - }, - "expiryStrategies": { - "type": "array", - "items": { - "$ref": "#/definitions/StopOrderExpiryStrategy" - }, - "description": "Restrict orders to those with the given expiry strategies." - }, - "dateRange": { - "$ref": "#/definitions/v2DateRange", - "description": "Restrict orders to those placed during the given date range. If not set, all orders will be returned." - }, - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed by the given party IDs." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed on the given market IDs." - }, - "liveOnly": { - "type": "boolean", - "title": "Live stop orders only" - } - }, - "description": "Stop order filter that contains all filtering conditions and values that are applied to the stop orders listing.", - "title": "Stop order filter" - }, - "v2SuccessorMarket": { - "type": "object", - "properties": { - "market": { - "$ref": "#/definitions/vegaMarket", - "description": "The market that is a member of the succession line." - }, - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaGovernanceData" - }, - "description": "All proposals for child markets that have the market as a parent." - } - }, - "description": "Successor market information includes the market that is a member of the succession line\nand any governance data that is associated with proposals for child markets\nwhether enacted or not." - }, - "v2SuccessorMarketConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2SuccessorMarketEdge" - }, - "description": "Page of successor markets and their cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information for pagination control." - } - }, - "description": "Page of successor market records and corresponding page information." - }, - "v2SuccessorMarketEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2SuccessorMarket", - "description": "Successor market record." - }, - "cursor": { - "type": "string", - "description": "Cursor identifying the record for pagination control." - } - }, - "title": "Successor market record with the corresponding cursor for paginated results" - }, - "v2Table": { - "type": "string", - "enum": [ - "TABLE_UNSPECIFIED", - "TABLE_BALANCES", - "TABLE_CHECKPOINTS", - "TABLE_DELEGATIONS", - "TABLE_LEDGER", - "TABLE_ORDERS", - "TABLE_TRADES", - "TABLE_MARKET_DATA", - "TABLE_MARGIN_LEVELS", - "TABLE_POSITIONS", - "TABLE_LIQUIDITY_PROVISIONS", - "TABLE_MARKETS", - "TABLE_DEPOSITS", - "TABLE_WITHDRAWALS", - "TABLE_BLOCKS", - "TABLE_REWARDS" - ], - "default": "TABLE_UNSPECIFIED" - }, - "v2TeamConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamEdge" - }, - "description": "Page of team data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of team data and corresponding page information." - }, - "v2TeamEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2Team", - "description": "Team data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team data item with the corresponding cursor." - }, - "v2TeamGameEntities": { - "type": "object", - "properties": { - "team": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamGameEntity" - }, - "description": "List of teams, the participant members of a team, and the metrics associated with each participant." - } - }, - "title": "List of teams that are participating in a game" - }, - "v2TeamGameEntity": { - "type": "object", - "properties": { - "team": { - "$ref": "#/definitions/v2TeamGameParticipation", - "title": "Team participation breakdown" - }, - "rank": { - "type": "string", - "format": "uint64", - "title": "Rank of the team in the game" - }, - "volume": { - "type": "string", - "title": "Volume traded by the team" - }, - "rewardMetric": { - "$ref": "#/definitions/vegaDispatchMetric", - "title": "Reward metric applied to the team" - }, - "rewardEarned": { - "type": "string", - "title": "Reward earned by the team" - }, - "totalRewardsEarned": { - "type": "string", - "title": "Total rewards earned by the individual for the team" - } - }, - "description": "Data relating to a team participating in a game." - }, - "v2TeamGameParticipation": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "title": "ID of the team participating" - }, - "membersParticipating": { - "type": "array", - "items": { - "$ref": "#/definitions/v2IndividualGameEntity" - }, - "title": "Individual team member metrics for their participation in the game" - } - }, - "description": "Breakdown of a team's participation in a game." - }, - "v2TeamMemberStatistics": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID the statistics are related to." - }, - "totalQuantumVolume": { - "type": "string", - "description": "Total of volume accumulated over the requested epoch period, expressed in\nquantum value." - }, - "totalQuantumRewards": { - "type": "string", - "description": "Total of rewards accumulated over the requested epoch period, expressed in\nquantum value." - }, - "quantumRewards": { - "type": "array", - "items": { - "$ref": "#/definitions/v2QuantumRewardsPerEpoch" - }, - "description": "List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch." - }, - "totalGamesPlayed": { - "type": "string", - "format": "uint64", - "description": "Total number of games played." - }, - "gamesPlayed": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of games played over the requested epoch period." - } - }, - "description": "Team member's statistics record containing the team member's information." - }, - "v2TeamMemberStatisticsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamMemberStatistics", - "description": "Team member's statistics data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team member data item with the corresponding cursor." - }, - "v2TeamMembersStatisticsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamMemberStatisticsEdge" - }, - "description": "Page of team member data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of team members' statistics and corresponding page information." - }, - "v2TeamReferee": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "ID of the team the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the team." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the party joined the team." - }, - "joinedAtEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - }, - "title": "A team's referee info" - }, - "v2TeamRefereeConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamRefereeEdge" - }, - "description": "Page of team referee data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of team referee data and corresponding page information." - }, - "v2TeamRefereeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamReferee", - "description": "Team referee data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team referee data item with the corresponding cursor." - }, - "v2TeamRefereeHistory": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "ID of the team the referee joined." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the party joined the team." - }, - "joinedAtEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - }, - "title": "A referee's team change information" - }, - "v2TeamRefereeHistoryConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamRefereeHistoryEdge" - }, - "description": "Page of team referee history data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of history data about a referee's team membership and corresponding page information." - }, - "v2TeamRefereeHistoryEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamRefereeHistory", - "description": "Team referee data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team referee history data item with the corresponding cursor." - }, - "v2TeamStatistics": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "Team ID the statistics are related to." - }, - "totalQuantumVolume": { - "type": "string", - "description": "Total of volume accumulated over the requested epoch period, expressed in\nquantum value." - }, - "totalQuantumRewards": { - "type": "string", - "description": "Total of rewards accumulated over the requested epoch period, expressed in\nquantum value." - }, - "quantumRewards": { - "type": "array", - "items": { - "$ref": "#/definitions/v2QuantumRewardsPerEpoch" - }, - "description": "List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch." - }, - "totalGamesPlayed": { - "type": "string", - "format": "uint64", - "description": "Total of games played." - }, - "gamesPlayed": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of games played over the requested epoch period." - } - }, - "description": "Team's statistics record containing the team information." - }, - "v2TeamStatisticsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamStatistics", - "description": "Team's statistics data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team data item with the corresponding cursor." - }, - "v2TeamsStatisticsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamStatisticsEdge" - }, - "description": "Page of team data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of teams' statistics and corresponding page information." - }, - "v2TradeConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TradeEdge" - }, - "description": "Page of trades and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of trades and corresponding page information" - }, - "v2TradeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaTrade", - "description": "Data associated with a trade that has been executed." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Trade data item with the corresponding cursor.." - }, - "v2TransferConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TransferEdge" - }, - "description": "Page of transfers data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of transfers data items and corresponding page information" - }, - "v2TransferDirection": { - "type": "string", - "enum": [ - "TRANSFER_DIRECTION_UNSPECIFIED", - "TRANSFER_DIRECTION_TRANSFER_FROM", - "TRANSFER_DIRECTION_TRANSFER_TO", - "TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM" - ], - "default": "TRANSFER_DIRECTION_UNSPECIFIED", - "title": "Direction of a transfer" - }, - "v2TransferEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TransferNode", - "description": "Data relating to a transfer that has been made." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Transfers data with the corresponding cursor." - }, - "v2TransferNode": { - "type": "object", - "properties": { - "transfer": { - "$ref": "#/definitions/vegaeventsv1Transfer", - "description": "Data relating to a transfer that has been made." - }, - "fees": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TransferFees" - }, - "description": "Fees paid for this transfer." - } - } - }, - "v2VolumeDiscountStats": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the statistics apply." - }, - "partyId": { - "type": "string", - "description": "Party ID for which the statistics apply." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied given the party's running volume." - }, - "runningVolume": { - "type": "string", - "description": "The party's running volume." - } - }, - "description": "Volume discount statistics for a given epoch for all parties." - }, - "v2VolumeDiscountStatsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2VolumeDiscountStatsEdge" - }, - "description": "Page of volume discount statistics data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of volume discount stats data and corresponding page information." - }, - "v2VolumeDiscountStatsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2VolumeDiscountStats", - "description": "Volume discount stats data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Volume discount stats data with the corresponding cursor." - }, - "v2VoteConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2VoteEdge" - }, - "description": "Page of vote data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of vote data items and corresponding page information" - }, - "v2VoteEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaVote", - "description": "Data associated with a governance vote." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Votes data with the corresponding cursor." - }, - "v2WithdrawalEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaWithdrawal", - "description": "Data associated with a single withdrawal made from the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Withdrawals data with the corresponding cursor." - }, - "v2WithdrawalsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2WithdrawalEdge" - }, - "description": "Page of withdrawals data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of withdrawals data and corresponding page information" - }, - "vegaAccount": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique account ID, used internally by Vega." - }, - "owner": { - "type": "string", - "description": "Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions." - }, - "balance": { - "type": "string", - "description": "Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative." - }, - "asset": { - "type": "string", - "description": "Asset ID for the account." - }, - "marketId": { - "type": "string", - "description": "Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type related to this account." - } - }, - "title": "Represents an account for an asset on Vega for a particular owner or party" - }, - "vegaAccountDetails": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID of the asset for this account." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the account." - }, - "owner": { - "type": "string", - "description": "Not specified if network account." - }, - "marketId": { - "type": "string", - "description": "Not specified if account is not related to a market." - } - } - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAsset": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Internal identifier of the asset." - }, - "details": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Definition of the external source for this asset." - }, - "status": { - "$ref": "#/definitions/vegaAssetStatus", - "description": "Status of the asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaAssetStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PROPOSED", - "STATUS_REJECTED", - "STATUS_PENDING_LISTING", - "STATUS_ENABLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network" - }, - "vegaAuctionDuration": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "format": "int64", - "description": "Duration of the auction in seconds." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Target uncrossing trading volume." - } - }, - "title": "Auction duration is used to configure 3 auction periods:\n1. `duration \u003e 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume \u003e 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration \u003e 0`, `volume \u003e 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume" - }, - "vegaAuctionTrigger": { - "type": "string", - "enum": [ - "AUCTION_TRIGGER_UNSPECIFIED", - "AUCTION_TRIGGER_BATCH", - "AUCTION_TRIGGER_OPENING", - "AUCTION_TRIGGER_PRICE", - "AUCTION_TRIGGER_LIQUIDITY", - "AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET", - "AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS", - "AUCTION_TRIGGER_GOVERNANCE_SUSPENSION" - ], - "default": "AUCTION_TRIGGER_UNSPECIFIED", - "description": "- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance", - "title": "Auction triggers indicate what condition triggered an auction (if market is in auction mode)" - }, - "vegaBatchProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "proposalParams": { - "$ref": "#/definitions/vegaProposalParameters", - "description": "Specific parameters defining the proposal's characteristics used for validation." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal on Vega" - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpec": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Hash generated from the DataSpec data." - }, - "createdAt": { - "type": "string", - "format": "int64", - "title": "Creation date and time" - }, - "updatedAt": { - "type": "string", - "format": "int64", - "title": "Last Updated timestamp" - }, - "data": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "status": { - "$ref": "#/definitions/vegaDataSourceSpecStatus", - "title": "Status describes the status of the data source spec" - } - }, - "description": "Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_DEACTIVATED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.", - "title": "Status describe the status of the data source spec" - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDelegation": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party which is delegating." - }, - "nodeId": { - "type": "string", - "description": "Node ID to delegate to." - }, - "amount": { - "type": "string", - "description": "Amount delegated. This field is an unsigned integer scaled to the asset's decimal places." - }, - "epochSeq": { - "type": "string", - "description": "Epoch of delegation." - } - } - }, - "vegaDeposit": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the deposit." - }, - "status": { - "$ref": "#/definitions/vegaDepositStatus", - "description": "Status of the deposit." - }, - "partyId": { - "type": "string", - "description": "Party ID of the user initiating the deposit." - }, - "asset": { - "type": "string", - "description": "Vega asset targeted by this deposit." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction from the foreign chain." - }, - "creditedTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the Vega account was updated with the deposit." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the deposit was created on the Vega network." - } - }, - "title": "Deposit on to the Vega network" - }, - "vegaDepositStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_CANCELLED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Deposit is being processed by the network\n - STATUS_CANCELLED: Deposit has been cancelled by the network\n - STATUS_FINALIZED: Deposit has been finalised and accounts have been updated", - "title": "Status of the deposit" - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaEpoch": { - "type": "object", - "properties": { - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence is used as epoch ID." - }, - "timestamps": { - "$ref": "#/definitions/vegaEpochTimestamps", - "description": "Timestamps for start/end etc." - }, - "validators": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNode" - }, - "description": "Validators that participated in this epoch." - }, - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - }, - "description": "List of all delegations in epoch." - } - } - }, - "vegaEpochAction": { - "type": "string", - "enum": [ - "EPOCH_ACTION_UNSPECIFIED", - "EPOCH_ACTION_START", - "EPOCH_ACTION_END" - ], - "default": "EPOCH_ACTION_UNSPECIFIED", - "description": "- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.", - "title": "What epoch action has occurred" - }, - "vegaEpochData": { - "type": "object", - "properties": { - "total": { - "type": "integer", - "format": "int32", - "description": "Total number of epochs since node was created." - }, - "offline": { - "type": "integer", - "format": "int32", - "description": "Total number of offline epochs since node was created." - }, - "online": { - "type": "integer", - "format": "int32", - "description": "Total number of online epochs since node was created." - } - } - }, - "vegaEpochRewardSummary": { - "type": "object", - "properties": { - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the reward is being paid." - }, - "assetId": { - "type": "string", - "description": "Asset ID in which the reward is being paid." - }, - "marketId": { - "type": "string", - "description": "Market ID in which the reward is being paid." - }, - "rewardType": { - "type": "string", - "description": "Type of reward being paid." - }, - "amount": { - "type": "string", - "description": "Amount distributed. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Details for rewards for a combination of asset, market, and reward type in a given epoch" - }, - "vegaEpochTimestamps": { - "type": "object", - "properties": { - "startTime": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when epoch started." - }, - "expiryTime": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for the epoch's expiry." - }, - "endTime": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the epoch ended, empty if not ended." - }, - "firstBlock": { - "type": "string", - "format": "uint64", - "description": "Height of first block in the epoch." - }, - "lastBlock": { - "type": "string", - "format": "uint64", - "description": "Height of last block in the epoch, empty if not ended." - } - }, - "title": "Describes in both human readable and block time when an epoch spans" - }, - "vegaErc20WithdrawExt": { - "type": "object", - "properties": { - "receiverAddress": { - "type": "string", - "description": "Address into which the bridge will release the funds." - } - }, - "title": "Extension of data required for the withdraw submissions" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaExternalDataSourceSpec": { - "type": "object", - "properties": { - "spec": { - "$ref": "#/definitions/vegaDataSourceSpec" - } - } - }, - "vegaFee": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places." - }, - "infrastructureFee": { - "type": "string", - "description": "Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places." - }, - "liquidityFee": { - "type": "string", - "description": "Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places." - }, - "makerFeeVolumeDiscount": { - "type": "string", - "description": "Volume discounts.\nDiscount on maker fee based on the taker volume." - }, - "infrastructureFeeVolumeDiscount": { - "type": "string", - "description": "Discount on infrastructure fee based on the taker volume." - }, - "liquidityFeeVolumeDiscount": { - "type": "string", - "description": "Discount on liquidity fee basedo on taker volume." - }, - "makerFeeReferrerDiscount": { - "type": "string", - "description": "Referrer discounts.\nDiscount on maker fee for eligible referrer." - }, - "infrastructureFeeReferrerDiscount": { - "type": "string", - "description": "Discount on infrastructure fee for eligible referrer." - }, - "liquidityFeeReferrerDiscount": { - "type": "string", - "description": "Discount on liquidity fee for eligible referrer." - } - }, - "title": "Represents any fees paid by a party, resulting from a trade" - }, - "vegaFeeFactors": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Market maker fee charged network wide." - }, - "infrastructureFee": { - "type": "string", - "description": "Infrastructure fee charged network wide for staking and governance." - }, - "liquidityFee": { - "type": "string", - "description": "Liquidity fee applied per market for market making." - } - }, - "title": "Fee factors definition" - }, - "vegaFees": { - "type": "object", - "properties": { - "factors": { - "$ref": "#/definitions/vegaFeeFactors", - "description": "Fee factors." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Liquidity fee settings for the market describing how the fee was calculated." - } - }, - "title": "Fees definition" - }, - "vegaFuture": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the future." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the settlement data source filter." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the trading termination data source filter." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data spec and the data source." - } - }, - "title": "Future product definition" - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceData": { - "type": "object", - "properties": { - "proposal": { - "$ref": "#/definitions/vegaProposal", - "description": "Governance proposal that is being voted on." - }, - "yes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All YES votes in favour of the proposal above." - }, - "no": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All NO votes against the proposal above." - }, - "yesParty": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party." - }, - "noParty": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party." - }, - "proposalType": { - "$ref": "#/definitions/vegaGovernanceDataType", - "description": "Type of proposal this data is for." - }, - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaProposal" - }, - "description": "If proposal type is batch, proposals will contain all the proposals that are make up the batch." - } - }, - "title": "Governance data" - }, - "vegaGovernanceDataType": { - "type": "string", - "enum": [ - "TYPE_SINGLE_OR_UNSPECIFIED", - "TYPE_BATCH" - ], - "default": "TYPE_SINGLE_OR_UNSPECIFIED", - "description": "- TYPE_SINGLE_OR_UNSPECIFIED: Single proposal only. In case it has not been specified, for example in older proposals, then this is the default.\n - TYPE_BATCH: Proposal contains a batch of proposals or a proposal that should be treated as part of a batch.", - "title": "Proposal type" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIcebergOrder": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that will be made visible if the iceberg order is replenished after trading." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount." - }, - "reservedRemaining": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed." - } - }, - "title": "Details of an iceberg order" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique instrument ID." - }, - "code": { - "type": "string", - "description": "Code for the instrument." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - }, - "metadata": { - "$ref": "#/definitions/vegaInstrumentMetadata", - "description": "Collection of instrument meta-data." - }, - "future": { - "$ref": "#/definitions/vegaFuture", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpot", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetual", - "description": "Perpetual." - } - }, - "title": "Instrument definition" - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaInstrumentMetadata": { - "type": "object", - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of 0 or more tags." - } - }, - "title": "Instrument metadata definition" - }, - "vegaLedgerEntry": { - "type": "object", - "properties": { - "fromAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer from." - }, - "toAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer to." - }, - "amount": { - "type": "string", - "description": "Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "type": { - "$ref": "#/definitions/vegaTransferType", - "description": "Transfer type for this entry." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in nanoseconds of when the ledger entry was created." - }, - "fromAccountBalance": { - "type": "string", - "description": "Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "toAccountBalance": { - "type": "string", - "description": "Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "transferId": { - "type": "string", - "description": "Transfer ID the ledger entry relates to." - } - }, - "title": "Represents a ledger entry on Vega" - }, - "vegaLedgerMovement": { - "type": "object", - "properties": { - "entries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerEntry" - }, - "description": "All the entries for these ledger movements." - }, - "balances": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPostTransferBalance" - }, - "description": "Resulting balances once the ledger movement are applied." - } - } - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquidityOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Pegged reference point for the order." - }, - "proportion": { - "type": "integer", - "format": "int64", - "description": "Relative proportion of the commitment to be allocated at a price level." - }, - "offset": { - "type": "string", - "description": "Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places." - } - }, - "title": "Represents a liquidity order" - }, - "vegaLiquidityOrderReference": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Unique ID of the pegged order generated to fulfil this liquidity order." - }, - "liquidityOrder": { - "$ref": "#/definitions/vegaLiquidityOrder", - "description": "Liquidity order from the original submission." - } - }, - "title": "Pair of a liquidity order and the ID of the generated order" - }, - "vegaLiquidityProviderFeeShare": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "equityLikeShare": { - "type": "string", - "description": "Share own by this liquidity provider." - }, - "averageEntryValuation": { - "type": "string", - "description": "Average entry valuation of the liquidity provider for the market." - }, - "averageScore": { - "type": "string", - "description": "Average liquidity score." - }, - "virtualStake": { - "type": "string", - "description": "The virtual stake of this liquidity provider." - } - }, - "title": "Equity like share of liquidity fee for each liquidity provider" - }, - "vegaLiquidityProviderSLA": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "currentEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP meets the commitment during the current epoch." - }, - "lastEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP met the commitment in the previous epoch." - }, - "lastEpochFeePenalty": { - "type": "string", - "description": "Indicates the fee penalty amount applied in the previous epoch." - }, - "lastEpochBondPenalty": { - "type": "string", - "description": "Shows the bond penalties from past epochs." - }, - "hysteresisPeriodFeePenalties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Determines how the fee penalties from past epochs affect future fee revenue." - }, - "requiredLiquidity": { - "type": "string", - "description": "Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range." - }, - "notionalVolumeBuys": { - "type": "string", - "description": "Notional volume of orders within the range provided on the buy side of the book." - }, - "notionalVolumeSells": { - "type": "string", - "description": "Notional volume of orders within the range provided on the sell side of the book." - } - }, - "title": "SLA performance for each liquidity provider" - }, - "vegaLiquidityProvision": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the liquidity provision." - }, - "partyId": { - "type": "string", - "description": "Unique party ID for the creator of the provision." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was updated." - }, - "marketId": { - "type": "string", - "description": "Market ID for the liquidity provision." - }, - "commitmentAmount": { - "type": "string", - "description": "Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "sells": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity sell orders to meet the liquidity provision obligation." - }, - "buys": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity buy orders to meet the liquidity provision obligation." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version of this liquidity provision." - }, - "status": { - "$ref": "#/definitions/vegaLiquidityProvisionStatus", - "description": "Status of this liquidity provision." - }, - "reference": { - "type": "string", - "description": "Reference shared between this liquidity provision and all its orders." - } - }, - "title": "Liquidity provider commitment" - }, - "vegaLiquidityProvisionStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_STOPPED", - "STATUS_CANCELLED", - "STATUS_REJECTED", - "STATUS_UNDEPLOYED", - "STATUS_PENDING" - ], - "default": "STATUS_UNSPECIFIED", - "description": "Status of a liquidity provision.\n\n - STATUS_UNSPECIFIED: Always invalid\n - STATUS_ACTIVE: Liquidity provision is active\n - STATUS_STOPPED: Liquidity provision was stopped by the network\n - STATUS_CANCELLED: Liquidity provision was cancelled by the liquidity provider\n - STATUS_REJECTED: Liquidity provision was invalid and got rejected\n - STATUS_UNDEPLOYED: Liquidity provision is valid and accepted by network, but orders aren't deployed\n - STATUS_PENDING: Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties." - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarginCalculator": { - "type": "object", - "properties": { - "scalingFactors": { - "$ref": "#/definitions/vegaScalingFactors", - "description": "Scaling factors for margin calculation." - } - }, - "title": "Margin Calculator definition" - }, - "vegaMarginLevels": { - "type": "object", - "properties": { - "maintenanceMargin": { - "type": "string", - "description": "Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "searchLevel": { - "type": "string", - "description": "Margin search level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "initialMargin": { - "type": "string", - "description": "Initial margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "collateralReleaseLevel": { - "type": "string", - "description": "Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "partyId": { - "type": "string", - "description": "Party ID for whom the margin levels apply." - }, - "marketId": { - "type": "string", - "description": "Market ID for which the margin levels apply." - }, - "asset": { - "type": "string", - "description": "Asset ID for which the margin levels apply." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the ledger entry was created." - }, - "orderMargin": { - "type": "string", - "description": "Margin required to cover orders in isolated margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Margin mode for the party, cross margin or isolated margin." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor, relevant only for isolated margin, 0 otherwise." - } - }, - "title": "Represents the margin levels for a party on a market at a given time" - }, - "vegaMarginMode": { - "type": "string", - "enum": [ - "MARGIN_MODE_UNSPECIFIED", - "MARGIN_MODE_CROSS_MARGIN", - "MARGIN_MODE_ISOLATED_MARGIN" - ], - "default": "MARGIN_MODE_UNSPECIFIED", - "title": "- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "vegaMarket": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the market." - }, - "tradableInstrument": { - "$ref": "#/definitions/vegaTradableInstrument", - "description": "Tradable instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`." - }, - "fees": { - "$ref": "#/definitions/vegaFees", - "description": "Fees configuration that apply to the market." - }, - "openingAuction": { - "$ref": "#/definitions/vegaAuctionDuration", - "description": "Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)." - }, - "priceMonitoringSettings": { - "$ref": "#/definitions/vegaPriceMonitoringSettings", - "description": "PriceMonitoringSettings for the market." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "LiquidityMonitoringParameters for the market." - }, - "tradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current mode of execution of the market." - }, - "state": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "marketTimestamps": { - "$ref": "#/definitions/vegaMarketTimestamps", - "description": "Timestamps for when the market state changes." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "The number of decimal places for a position." - }, - "lpPriceRange": { - "type": "string", - "description": "Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "parentMarketId": { - "type": "string", - "title": "ID of the market this market succeeds" - }, - "insurancePoolFraction": { - "type": "string", - "description": "The fraction of the parent market's insurance pool that this market inherits; range 0 through 1." - }, - "successorMarketId": { - "type": "string", - "description": "ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled." - }, - "liquiditySlaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Liquidity SLA parameters for the market." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy used by this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price calculation configuration." - } - }, - "title": "Market definition" - }, - "vegaMarketData": { - "type": "object", - "properties": { - "markPrice": { - "type": "string", - "description": "Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidPrice": { - "type": "string", - "description": "Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestOfferPrice": { - "type": "string", - "description": "Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places." - }, - "bestOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestStaticBidPrice": { - "type": "string", - "description": "Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticBidVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static bid price excluding pegged orders." - }, - "bestStaticOfferPrice": { - "type": "string", - "description": "Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static offer price, excluding pegged orders." - }, - "midPrice": { - "type": "string", - "description": "Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "staticMidPrice": { - "type": "string", - "description": "Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "market": { - "type": "string", - "title": "Market ID for the data" - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which this mark price was relevant." - }, - "openInterest": { - "type": "string", - "format": "uint64", - "description": "Sum of the size of all positions greater than zero on the market." - }, - "auctionEnd": { - "type": "string", - "format": "int64", - "description": "Time in seconds until the end of the auction (zero if currently not in auction period)." - }, - "auctionStart": { - "type": "string", - "format": "int64", - "description": "Time until next auction, or start time of the current auction if market is in auction period." - }, - "indicativePrice": { - "type": "string", - "description": "Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places." - }, - "indicativeVolume": { - "type": "string", - "format": "uint64", - "description": "Indicative volume (zero if not in auction)." - }, - "marketTradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current trading mode for the market." - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market is in an auction trading mode, this field indicates what triggered the auction." - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market auction is extended, this field indicates what caused the extension." - }, - "targetStake": { - "type": "string", - "description": "Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "suppliedStake": { - "type": "string", - "description": "Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "priceMonitoringBounds": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringBounds" - }, - "description": "One or more price monitoring bounds for the current timestamp." - }, - "marketValueProxy": { - "type": "string", - "description": "Market value proxy." - }, - "liquidityProviderFeeShare": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare" - }, - "description": "Equity like share of liquidity fee for each liquidity provider." - }, - "marketState": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "nextMarkToMarket": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the next mark-to-market calculation will occur." - }, - "lastTradedPrice": { - "type": "string", - "description": "Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places." - }, - "marketGrowth": { - "type": "string", - "description": "Market growth at the last market time window." - }, - "productData": { - "$ref": "#/definitions/vegaProductData", - "description": "Data related to the particular product type of the market." - }, - "liquidityProviderSla": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderSLA" - }, - "description": "SLA performance for each liquidity provider." - }, - "nextNetworkCloseout": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the market will next submit a trade to reduce its position." - }, - "markPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the mark price." - } - }, - "title": "Represents data generated by a market when open" - }, - "vegaMarketDepth": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID for which the depth levels apply." - }, - "buy": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of price levels for the buy side of the book." - }, - "sell": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of price levels for the sell side of the book." - }, - "sequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number for the market depth data returned." - } - }, - "title": "Represents market depth or order book data for the specified market on Vega" - }, - "vegaMarketDepthUpdate": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID for which the market depth updates are for." - }, - "buy": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of updated price levels for the buy side of the book." - }, - "sell": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of updated price levels for the sell side of the book." - }, - "sequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number for the market depth update data returned. It is increasing but not monotonic." - }, - "previousSequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the previous market depth update, for checking there are no gaps." - } - }, - "title": "Represents the changed market depth since the last update" - }, - "vegaMarketState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_PROPOSED", - "STATE_REJECTED", - "STATE_PENDING", - "STATE_CANCELLED", - "STATE_ACTIVE", - "STATE_SUSPENDED", - "STATE_CLOSED", - "STATE_TRADING_TERMINATED", - "STATE_SETTLED", - "STATE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance", - "title": "Current state of the market" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMarketTimestamps": { - "type": "object", - "properties": { - "proposed": { - "type": "string", - "format": "int64", - "description": "Time when the market is first proposed." - }, - "pending": { - "type": "string", - "format": "int64", - "description": "Time when the market has been voted in and began its opening auction." - }, - "open": { - "type": "string", - "format": "int64", - "description": "Time when the market has left the opening auction and is ready to accept trades." - }, - "close": { - "type": "string", - "format": "int64", - "description": "Time when the market closed." - } - }, - "title": "Time stamps for important times about creating, enacting etc the market" - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkLimits": { - "type": "object", - "properties": { - "canProposeMarket": { - "type": "boolean", - "description": "Are market proposals allowed at this point in time." - }, - "canProposeAsset": { - "type": "boolean", - "description": "Are asset proposals allowed at this point in time." - }, - "proposeMarketEnabled": { - "type": "boolean", - "description": "Are market proposals enabled on this chain." - }, - "proposeAssetEnabled": { - "type": "boolean", - "description": "Are asset proposals enabled on this chain." - }, - "genesisLoaded": { - "type": "boolean", - "description": "True once the genesis file is loaded." - }, - "proposeMarketEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set)." - }, - "proposeAssetEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set)." - }, - "canProposeSpotMarket": { - "type": "boolean", - "description": "Are spot market proposals allowed at this point in time." - }, - "canProposePerpetualMarket": { - "type": "boolean", - "description": "Are perpetual market proposals allowed at this point in time." - } - }, - "title": "Network limits, defined in the genesis file" - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Node ID i.e. the node's wallet ID." - }, - "pubKey": { - "type": "string", - "description": "Public key of the node operator." - }, - "tmPubKey": { - "type": "string", - "description": "Public key of Tendermint." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node." - }, - "infoUrl": { - "type": "string", - "description": "URL where users can find out more information on the node." - }, - "location": { - "type": "string", - "description": "Country code for the location of the node." - }, - "stakedByOperator": { - "type": "string", - "description": "Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places." - }, - "stakedByDelegates": { - "type": "string", - "description": "Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places." - }, - "stakedTotal": { - "type": "string", - "description": "Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places." - }, - "maxIntendedStake": { - "type": "string", - "description": "Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places." - }, - "pendingStake": { - "type": "string", - "description": "Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places." - }, - "epochData": { - "$ref": "#/definitions/vegaEpochData", - "description": "Information about epoch." - }, - "status": { - "$ref": "#/definitions/vegaNodeStatus", - "description": "Node status." - }, - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - }, - "description": "Node's delegations." - }, - "rewardScore": { - "$ref": "#/definitions/vegaRewardScore", - "description": "Node reward score." - }, - "rankingScore": { - "$ref": "#/definitions/vegaRankingScore", - "description": "Node ranking information." - }, - "name": { - "type": "string", - "description": "Node name." - }, - "avatarUrl": { - "type": "string", - "description": "Avatar url." - } - } - }, - "vegaNodeData": { - "type": "object", - "properties": { - "stakedTotal": { - "type": "string", - "description": "Total staked amount across all nodes. This field is an unsigned integer scaled to the asset's decimal places." - }, - "totalNodes": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes across all node sets." - }, - "inactiveNodes": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes that had a performance score of 0 at the end of the last epoch." - }, - "tendermintNodes": { - "$ref": "#/definitions/vegaNodeSet", - "description": "Details on the set of consensus nodes in the network." - }, - "ersatzNodes": { - "$ref": "#/definitions/vegaNodeSet", - "description": "Details on the set of ersatz (standby) nodes in the network." - }, - "pendingNodes": { - "$ref": "#/definitions/vegaNodeSet", - "description": "Details on the set of pending nodes in the network." - }, - "uptime": { - "type": "number", - "format": "float", - "description": "Total uptime for all epochs across all nodes." - } - } - }, - "vegaNodeSet": { - "type": "object", - "properties": { - "total": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes in the node set." - }, - "inactive": { - "type": "integer", - "format": "int64", - "description": "Number of nodes in the node set that had a performance score of 0 at the end of the last epoch." - }, - "promoted": { - "type": "array", - "items": { - "type": "string" - }, - "description": "IDs of nodes that were promoted into this node set at the start of the epoch." - }, - "demoted": { - "type": "array", - "items": { - "type": "string" - }, - "description": "IDs of nodes that were demoted into this node set at the start of the epoch." - }, - "maximum": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes allowed in the node set." - } - }, - "title": "Details on the collection of nodes for a particular validator status" - }, - "vegaNodeStatus": { - "type": "string", - "enum": [ - "NODE_STATUS_UNSPECIFIED", - "NODE_STATUS_VALIDATOR", - "NODE_STATUS_NON_VALIDATOR" - ], - "default": "NODE_STATUS_UNSPECIFIED", - "description": "- NODE_STATUS_VALIDATOR: Node is a validating node\n - NODE_STATUS_NON_VALIDATOR: Node is a non-validating node", - "title": "Node status type" - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaOracleData": { - "type": "object", - "properties": { - "externalData": { - "$ref": "#/definitions/v1ExternalData" - } - } - }, - "vegaOracleSpec": { - "type": "object", - "properties": { - "externalDataSourceSpec": { - "$ref": "#/definitions/vegaExternalDataSourceSpec" - } - }, - "title": "Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*" - }, - "vegaOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID generated for the order." - }, - "marketId": { - "type": "string", - "description": "Market ID for the order." - }, - "partyId": { - "type": "string", - "description": "Party ID for the order." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Side for the order, e.g. SIDE_BUY or SIDE_SELL." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of contracts." - }, - "remaining": { - "type": "string", - "format": "uint64", - "description": "Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "title": "Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce" - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type for the order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the order was created at, in nanoseconds." - }, - "status": { - "$ref": "#/definitions/vegaOrderStatus", - "description": "Current status of the order." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order will expire." - }, - "reference": { - "type": "string", - "description": "Reference given for the order." - }, - "reason": { - "$ref": "#/definitions/vegaOrderError", - "description": "Futher details for why an order with status `STATUS_REJECTED` was rejected." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order was last updated." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version for the order, initial value is version 1 and is incremented after each successful amend." - }, - "batchId": { - "type": "string", - "format": "uint64", - "description": "Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details, used only if the order represents a pegged order." - }, - "liquidityProvisionId": { - "type": "string", - "description": "Set if the order was created as part of a liquidity provision, will be empty if not." - }, - "postOnly": { - "type": "boolean", - "description": "Only valid for Limit orders. Cannot be True at the same time as Reduce-Only." - }, - "reduceOnly": { - "type": "boolean", - "description": "Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0." - }, - "icebergOrder": { - "$ref": "#/definitions/vegaIcebergOrder", - "title": "Details of an iceberg order" - } - }, - "title": "Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties" - }, - "vegaOrderError": { - "type": "string", - "enum": [ - "ORDER_ERROR_UNSPECIFIED", - "ORDER_ERROR_INVALID_MARKET_ID", - "ORDER_ERROR_INVALID_ORDER_ID", - "ORDER_ERROR_OUT_OF_SEQUENCE", - "ORDER_ERROR_INVALID_REMAINING_SIZE", - "ORDER_ERROR_TIME_FAILURE", - "ORDER_ERROR_REMOVAL_FAILURE", - "ORDER_ERROR_INVALID_EXPIRATION_DATETIME", - "ORDER_ERROR_INVALID_ORDER_REFERENCE", - "ORDER_ERROR_EDIT_NOT_ALLOWED", - "ORDER_ERROR_AMEND_FAILURE", - "ORDER_ERROR_NOT_FOUND", - "ORDER_ERROR_INVALID_PARTY_ID", - "ORDER_ERROR_MARKET_CLOSED", - "ORDER_ERROR_MARGIN_CHECK_FAILED", - "ORDER_ERROR_MISSING_GENERAL_ACCOUNT", - "ORDER_ERROR_INTERNAL_ERROR", - "ORDER_ERROR_INVALID_SIZE", - "ORDER_ERROR_INVALID_PERSISTENCE", - "ORDER_ERROR_INVALID_TYPE", - "ORDER_ERROR_SELF_TRADING", - "ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES", - "ORDER_ERROR_INCORRECT_MARKET_TYPE", - "ORDER_ERROR_INVALID_TIME_IN_FORCE", - "ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION", - "ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING", - "ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT", - "ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT", - "ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT", - "ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC", - "ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION", - "ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION", - "ORDER_ERROR_MUST_BE_LIMIT_ORDER", - "ORDER_ERROR_MUST_BE_GTT_OR_GTC", - "ORDER_ERROR_WITHOUT_REFERENCE_PRICE", - "ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO", - "ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO", - "ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE", - "ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER", - "ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS", - "ORDER_ERROR_TOO_MANY_PEGGED_ORDERS", - "ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE", - "ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION", - "ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED", - "ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE" - ], - "default": "ORDER_ERROR_UNSPECIFIED", - "description": "- ORDER_ERROR_UNSPECIFIED: Default value, no error reported\n - ORDER_ERROR_INVALID_MARKET_ID: Order was submitted for a market that does not exist\n - ORDER_ERROR_INVALID_ORDER_ID: Order was submitted with an invalid ID\n - ORDER_ERROR_OUT_OF_SEQUENCE: Order was amended with a sequence number that was not previous version + 1\n - ORDER_ERROR_INVALID_REMAINING_SIZE: Order was amended with an invalid remaining size (e.g. remaining greater than total size)\n - ORDER_ERROR_TIME_FAILURE: Node was unable to get Vega (blockchain) time\n - ORDER_ERROR_REMOVAL_FAILURE: Failed to remove an order from the book\n - ORDER_ERROR_INVALID_EXPIRATION_DATETIME: Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid\n - ORDER_ERROR_INVALID_ORDER_REFERENCE: Order was submitted or amended with an invalid reference field\n - ORDER_ERROR_EDIT_NOT_ALLOWED: Order amend was submitted for an order field that cannot not be amended (e.g. order ID)\n - ORDER_ERROR_AMEND_FAILURE: Amend failure because amend details do not match original order\n - ORDER_ERROR_NOT_FOUND: Order not found in an order book or store\n - ORDER_ERROR_INVALID_PARTY_ID: Order was submitted with an invalid or missing party ID\n - ORDER_ERROR_MARKET_CLOSED: Order was submitted for a market that has closed\n - ORDER_ERROR_MARGIN_CHECK_FAILED: Order was submitted, but the party did not have enough collateral to cover the order\n - ORDER_ERROR_MISSING_GENERAL_ACCOUNT: Order was submitted, but the party did not have an account for this asset\n - ORDER_ERROR_INTERNAL_ERROR: Unspecified internal error\n - ORDER_ERROR_INVALID_SIZE: Order was submitted with an invalid or missing size (e.g. 0)\n - ORDER_ERROR_INVALID_PERSISTENCE: Order was submitted with an invalid persistence for its type\n - ORDER_ERROR_INVALID_TYPE: Order was submitted with an invalid type field\n - ORDER_ERROR_SELF_TRADING: Order was stopped as it would have traded with another order submitted from the same party\n - ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES: Order was submitted, but the party did not have enough collateral to cover the fees for the order\n - ORDER_ERROR_INCORRECT_MARKET_TYPE: Order was submitted with an incorrect or invalid market type\n - ORDER_ERROR_INVALID_TIME_IN_FORCE: Order was submitted with invalid time in force\n - ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION: Good For Normal order has reached the market when it is in auction mode\n - ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING: Good For Auction order has reached the market when it is in continuous trading mode\n - ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT: Attempt to amend order to GTT without ExpiryAt\n - ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT: Attempt to amend ExpiryAt to a value before CreatedAt\n - ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT: Attempt to amend to GTC without an ExpiryAt value\n - ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC: Amending to FOK or IOC is invalid\n - ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN: Amending to GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN: Amending from GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION: IOC orders are not allowed during auction\n - ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION: FOK orders are not allowed during auction\n - ORDER_ERROR_MUST_BE_LIMIT_ORDER: Pegged orders must be LIMIT orders\n - ORDER_ERROR_MUST_BE_GTT_OR_GTC: Pegged orders can only have TIF GTC or GTT\n - ORDER_ERROR_WITHOUT_REFERENCE_PRICE: Pegged order must have a reference price\n - ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE: Buy pegged order cannot reference best ask price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO: Pegged order offset must be \u003e= 0\n - ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE: Sell pegged order cannot reference best bid price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO: Pegged order offset must be \u003e zero\n - ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE: Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)\n - ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER: Cannot amend details of a non pegged details\n - ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER: Could not re-price a pegged order because a market price is unavailable\n - ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER: It is not possible to amend the price of an existing pegged order\n - ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS: FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds\n - ORDER_ERROR_TOO_MANY_PEGGED_ORDERS: Unable to submit pegged order, temporarily too many pegged orders across all markets\n - ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE: Post order would trade\n - ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION: Post order would trade\n - ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED: Isolated margin check failed\n - ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE: In isolated margin pegged orders are rejected", - "title": "OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`" - }, - "vegaOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_EXPIRED", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_FILLED", - "STATUS_REJECTED", - "STATUS_PARTIALLY_FILLED", - "STATUS_PARKED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)", - "title": "Status values for an order" - }, - "vegaOrderType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LIMIT", - "TYPE_MARKET", - "TYPE_NETWORK" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)", - "title": "Type values for an order" - }, - "vegaParty": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the party, typically represented by a public key." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "title": "Party represents an entity who wishes to trade on or query a Vega network" - }, - "vegaPartyProfile": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID associated to the profile." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "description": "Holds metadata associated to a party." - }, - "vegaPeggedOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Price point the order is linked to." - }, - "offset": { - "type": "string", - "description": "Offset from the price reference." - } - }, - "title": "Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading" - }, - "vegaPeggedReference": { - "type": "string", - "enum": [ - "PEGGED_REFERENCE_UNSPECIFIED", - "PEGGED_REFERENCE_MID", - "PEGGED_REFERENCE_BEST_BID", - "PEGGED_REFERENCE_BEST_ASK" - ], - "default": "PEGGED_REFERENCE_UNSPECIFIED", - "description": "- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference", - "title": "Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point" - }, - "vegaPerpetual": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the perpetual." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfig": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Optional configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product definition" - }, - "vegaPerpetualData": { - "type": "object", - "properties": { - "fundingPayment": { - "type": "string", - "description": "Current funding payment for the in-progress funding period." - }, - "fundingRate": { - "type": "string", - "description": "Current funding rate for the in-progress funding period." - }, - "internalTwap": { - "type": "string", - "description": "Time-weighted-average the internal data-points for the in-progress funding period." - }, - "externalTwap": { - "type": "string", - "description": "Time-weighted-average the external data points for the in-progress funding period." - }, - "seqNum": { - "type": "string", - "format": "uint64", - "title": "Funding period sequence number" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Funding period start time" - }, - "indexPrice": { - "type": "string", - "description": "The index price used for perps." - }, - "nextIndexPriceCalc": { - "type": "string", - "format": "int64", - "description": "The next time the index price is calculated for perps." - }, - "indexPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the index price (perps only)." - } - }, - "description": "Represents market data specific to a perpetual market." - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPosition": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID in which the position is held." - }, - "partyId": { - "type": "string", - "description": "Party ID holding the position." - }, - "openVolume": { - "type": "string", - "format": "int64", - "description": "Open volume for the position, value is signed +ve for long and -ve for short." - }, - "realisedPnl": { - "type": "string", - "description": "Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places." - }, - "unrealisedPnl": { - "type": "string", - "description": "Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places." - }, - "averageEntryPrice": { - "type": "string", - "description": "Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp for the latest time the position was updated." - }, - "lossSocialisationAmount": { - "type": "string", - "description": "Sum of profit that could not be paid due to loss socialisation." - }, - "positionStatus": { - "$ref": "#/definitions/vegaPositionStatus", - "description": "Position status, indicating whether the party was distressed and had orders cancelled or was closed out." - } - }, - "title": "Represents position data for a party on the specified market on Vega" - }, - "vegaPositionStatus": { - "type": "string", - "enum": [ - "POSITION_STATUS_UNSPECIFIED", - "POSITION_STATUS_ORDERS_CLOSED", - "POSITION_STATUS_CLOSED_OUT", - "POSITION_STATUS_DISTRESSED" - ], - "default": "POSITION_STATUS_UNSPECIFIED", - "title": "Represents the status of a position" - }, - "vegaPostTransferBalance": { - "type": "object", - "properties": { - "account": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "Account relating to the transfer." - }, - "balance": { - "type": "string", - "description": "Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Represents the balance for an account during a transfer" - }, - "vegaPriceLevel": { - "type": "object", - "properties": { - "price": { - "type": "string", - "description": "Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places." - }, - "numberOfOrders": { - "type": "string", - "format": "uint64", - "description": "Number of orders at the price level." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Volume at the price level." - } - }, - "title": "Represents a price level from market depth or order book data" - }, - "vegaPriceMonitoringBounds": { - "type": "object", - "properties": { - "minValidPrice": { - "type": "string", - "description": "Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "maxValidPrice": { - "type": "string", - "description": "Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "trigger": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger", - "description": "Price monitoring trigger associated with the bounds." - }, - "referencePrice": { - "type": "string", - "description": "Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places." - } - }, - "title": "Represents a list of valid (at the current timestamp) price ranges per associated trigger" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringSettings": { - "type": "object", - "properties": { - "parameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Specifies price monitoring parameters to be used for price monitoring purposes." - } - }, - "title": "PriceMonitoringSettings contains the settings for price monitoring" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProductData": { - "type": "object", - "properties": { - "perpetualData": { - "$ref": "#/definitions/vegaPerpetualData" - } - }, - "description": "Represents market data specific to a particular product type." - }, - "vegaProposal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique proposal ID." - }, - "reference": { - "type": "string", - "description": "Proposal reference." - }, - "partyId": { - "type": "string", - "description": "Party ID i.e. public key of the party submitting the proposal." - }, - "state": { - "$ref": "#/definitions/vegaProposalState", - "description": "Current state of the proposal, i.e. open, passed, failed etc." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term." - }, - "reason": { - "$ref": "#/definitions/vegaProposalError", - "description": "Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses." - }, - "errorDetails": { - "type": "string", - "description": "Detailed error associated to the reason." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - }, - "requiredParticipation": { - "type": "string", - "description": "Required vote participation for this proposal." - }, - "requiredMajority": { - "type": "string", - "description": "Required majority for this proposal." - }, - "requiredLiquidityProviderParticipation": { - "type": "string", - "description": "Required participation from liquidity providers, optional but is required for market update proposal." - }, - "requiredLiquidityProviderMajority": { - "type": "string", - "description": "Required majority from liquidity providers, optional but is required for market update proposal." - }, - "batchTerms": { - "$ref": "#/definitions/vegaBatchProposalTerms", - "description": "Batch proposal terms." - }, - "batchId": { - "type": "string", - "description": "ID of a batch proposal that this proposal is part of." - } - }, - "title": "Governance proposal" - }, - "vegaProposalError": { - "type": "string", - "enum": [ - "PROPOSAL_ERROR_UNSPECIFIED", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE", - "PROPOSAL_ERROR_ENACT_TIME_TOO_SOON", - "PROPOSAL_ERROR_ENACT_TIME_TOO_LATE", - "PROPOSAL_ERROR_INSUFFICIENT_TOKENS", - "PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY", - "PROPOSAL_ERROR_NO_PRODUCT", - "PROPOSAL_ERROR_UNSUPPORTED_PRODUCT", - "PROPOSAL_ERROR_NO_TRADING_MODE", - "PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE", - "PROPOSAL_ERROR_NODE_VALIDATION_FAILED", - "PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD", - "PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS", - "PROPOSAL_ERROR_INVALID_ASSET", - "PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS", - "PROPOSAL_ERROR_NO_RISK_PARAMETERS", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE", - "PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE", - "PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET", - "PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT", - "PROPOSAL_ERROR_INVALID_RISK_PARAMETER", - "PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_INVALID_ASSET_DETAILS", - "PROPOSAL_ERROR_UNKNOWN_TYPE", - "PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE", - "PROPOSAL_ERROR_INVALID_FREEFORM", - "PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE", - "PROPOSAL_ERROR_INVALID_MARKET", - "PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES", - "PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS", - "PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE", - "PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_INVALID_SPOT", - "PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED", - "PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE", - "PROPOSAL_ERROR_INVALID_SLA_PARAMS", - "PROPOSAL_ERROR_MISSING_SLA_PARAMS", - "PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT", - "PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM", - "PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED" - ], - "default": "PROPOSAL_ERROR_UNSPECIFIED", - "description": "- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation \u003c Closing \u003c Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined", - "title": "List of possible errors that can cause a proposal to be in state rejected or failed" - }, - "vegaProposalParameters": { - "type": "object", - "properties": { - "minClose": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before a proposal can be closed for voting." - }, - "maxClose": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time that a proposal can be open for voting." - }, - "minEnact": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before an enacted proposal takes effect." - }, - "maxEnact": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time before an enacted proposal must take effect." - }, - "requiredParticipation": { - "type": "string", - "description": "Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid." - }, - "requiredMajority": { - "type": "string", - "description": "Specifies the required percentage of votes a proposal needs to be approved." - }, - "minProposerBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a proposer must hold to initiate a proposal." - }, - "minVoterBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a voter must hold to participate in voting." - }, - "requiredParticipationLp": { - "type": "string", - "description": "Specifies the required percentage of participation from liquidity providers for the proposal to be valid." - }, - "requiredMajorityLp": { - "type": "string", - "description": "Specifies the required majority percentage from liquidity providers for a proposal to be approved." - }, - "minEquityLikeShare": { - "type": "string", - "description": "Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible." - } - } - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_FAILED", - "STATE_OPEN", - "STATE_PASSED", - "STATE_REJECTED", - "STATE_DECLINED", - "STATE_ENACTED", - "STATE_WAITING_FOR_NODE_VOTE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal", - "title": "Proposal state transition:\nOpen -\u003e\n - Passed -\u003e Enacted.\n - Passed -\u003e Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state" - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRankingScore": { - "type": "object", - "properties": { - "stakeScore": { - "type": "string", - "description": "Stake based score - no anti-whaling." - }, - "performanceScore": { - "type": "string", - "description": "Performance based score." - }, - "previousStatus": { - "$ref": "#/definitions/vegaValidatorNodeStatus", - "description": "Status of the validator in the previous epoch." - }, - "status": { - "$ref": "#/definitions/vegaValidatorNodeStatus", - "description": "Status of the validator in the current epoch." - }, - "votingPower": { - "type": "integer", - "format": "int64", - "description": "Tendermint voting power of the validator." - }, - "rankingScore": { - "type": "string", - "description": "Final score." - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which the referral set's running volume is evaluated." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaReward": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID in which the reward is being paid." - }, - "partyId": { - "type": "string", - "description": "Party ID to whom the reward is being paid." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the reward is being paid." - }, - "amount": { - "type": "string", - "description": "Amount paid as a reward. This field is an unsigned integer scaled to the asset's decimal places." - }, - "percentageOfTotal": { - "type": "string", - "description": "Percentage of total rewards paid in the epoch." - }, - "receivedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp at which the reward was paid as Unix nano time." - }, - "marketId": { - "type": "string", - "description": "Market ID in which the reward is being paid." - }, - "rewardType": { - "type": "string", - "description": "Type of reward being paid." - }, - "lockedUntilEpoch": { - "type": "string", - "format": "uint64", - "description": "The epoch when the reward is being released." - }, - "quantumAmount": { - "type": "string", - "description": "Amount paid as a reward, expressed in asset's quantum unit." - }, - "gameId": { - "type": "string", - "description": "ID of the game the reward payment was made for if the payment was made for participation in a game." - }, - "teamId": { - "type": "string", - "description": "ID of the team the party is a member of, if the party is a member of a participating team,\nand the reward payment was made for participation in a game.\nThis field is currently only populated by the rewards API." - } - }, - "title": "Details for a single reward payment" - }, - "vegaRewardScore": { - "type": "object", - "properties": { - "rawValidatorScore": { - "type": "string", - "description": "Stake based score - with anti-whaling." - }, - "performanceScore": { - "type": "string", - "description": "Performance based score." - }, - "multisigScore": { - "type": "string", - "description": "Multisig score." - }, - "validatorScore": { - "type": "string", - "description": "Un-normalised score." - }, - "normalisedScore": { - "type": "string", - "description": "Normalised validator score for rewards." - }, - "validatorStatus": { - "$ref": "#/definitions/vegaValidatorNodeStatus", - "description": "Status of the validator for reward." - } - } - }, - "vegaRewardSummary": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID in which the reward is being paid." - }, - "partyId": { - "type": "string", - "description": "Party ID to whom the reward is being paid." - }, - "amount": { - "type": "string", - "description": "Total amount of rewards paid in the asset. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Details for rewards for a single asset" - }, - "vegaRiskFactor": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market ID that relates to this risk factor." - }, - "short": { - "type": "string", - "description": "Short Risk factor value." - }, - "long": { - "type": "string", - "description": "Long Risk factor value." - } - }, - "title": "Risk factors are used to calculate the current risk associated with orders trading on a given market" - }, - "vegaScalingFactors": { - "type": "object", - "properties": { - "searchLevel": { - "type": "number", - "format": "double", - "description": "Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release." - }, - "initialMargin": { - "type": "number", - "format": "double", - "description": "Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin." - }, - "collateralRelease": { - "type": "number", - "format": "double", - "description": "Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset." - } - }, - "title": "Scaling Factors (for use in margin calculation)" - }, - "vegaSide": { - "type": "string", - "enum": [ - "SIDE_UNSPECIFIED", - "SIDE_BUY", - "SIDE_SELL" - ], - "default": "SIDE_UNSPECIFIED", - "description": "- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order", - "title": "Side relates to the direction of an order, to Buy, or Sell" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSimpleRiskModel": { - "type": "object", - "properties": { - "params": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Risk model params for simple modelling." - } - }, - "title": "Risk model for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpot": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Asset ID of the underlying base asset for the spot product." - }, - "quoteAsset": { - "type": "string", - "description": "Asset ID of the underlying quote asset for the spot product." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - } - }, - "title": "Spot product definition" - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaStopOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "ID of this stop order\nalso the ID of the associated order if it is ever triggered" - }, - "ocoLinkId": { - "type": "string", - "title": "The ID of the 'other' part of the OCO if 2 stop orders were submitted at once" - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Optional expiry timestamp." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "triggerDirection": { - "$ref": "#/definitions/StopOrderTriggerDirection", - "description": "Trigger direction for this stop order." - }, - "status": { - "$ref": "#/definitions/vegaStopOrderStatus", - "description": "Status of the stop order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Creation time of the stop order." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Last update of this stop order." - }, - "orderId": { - "type": "string", - "description": "ID of the order created once the trigger is hit." - }, - "partyId": { - "type": "string", - "description": "ID of the party that submitted this stop order." - }, - "marketId": { - "type": "string", - "description": "ID of the market the stop order is submitted to." - }, - "rejectionReason": { - "$ref": "#/definitions/StopOrderRejectionReason", - "title": "An optional reason for why a stop order was rejected" - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Size override setting" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "Size override value" - }, - "price": { - "type": "string", - "description": "Fixed price at which the order will be submitted." - }, - "trailingPercentOffset": { - "type": "string", - "title": "Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%" - } - } - }, - "vegaStopOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_TRIGGERED", - "STATUS_EXPIRED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission" - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaTradableInstrument": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrument", - "description": "Details for the underlying instrument." - }, - "marginCalculator": { - "$ref": "#/definitions/vegaMarginCalculator", - "description": "Margin calculator for the instrument." - }, - "logNormalRiskModel": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal." - }, - "simpleRiskModel": { - "$ref": "#/definitions/vegaSimpleRiskModel", - "description": "Simple." - } - }, - "title": "Tradable Instrument definition" - }, - "vegaTrade": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the trade." - }, - "marketId": { - "type": "string", - "description": "Market ID on which the trade occurred." - }, - "price": { - "type": "string", - "description": "Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size filled for the trade." - }, - "buyer": { - "type": "string", - "description": "Unique party ID for the buyer." - }, - "seller": { - "type": "string", - "description": "Unique party ID for the seller." - }, - "aggressor": { - "$ref": "#/definitions/vegaSide", - "description": "Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL." - }, - "buyOrder": { - "type": "string", - "description": "Identifier of the order from the buy side." - }, - "sellOrder": { - "type": "string", - "description": "Identifier of the order from the sell side." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the trade occurred." - }, - "type": { - "$ref": "#/definitions/vegaTradeType", - "description": "Type for the trade." - }, - "buyerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the buyer party for the trade." - }, - "sellerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the seller party for the trade." - }, - "buyerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the buy side order was placed in." - }, - "sellerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the sell side order was placed in." - }, - "assetPrice": { - "type": "string", - "description": "Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates." - } - }, - "title": "A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega" - }, - "vegaTradeType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_DEFAULT", - "TYPE_NETWORK_CLOSE_OUT_GOOD", - "TYPE_NETWORK_CLOSE_OUT_BAD" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_DEFAULT: Normal trading between two parties\n - TYPE_NETWORK_CLOSE_OUT_GOOD: Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties\n - TYPE_NETWORK_CLOSE_OUT_BAD: Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party", - "title": "Type values for a trade" - }, - "vegaTransferType": { - "type": "string", - "enum": [ - "TRANSFER_TYPE_UNSPECIFIED", - "TRANSFER_TYPE_LOSS", - "TRANSFER_TYPE_WIN", - "TRANSFER_TYPE_MTM_LOSS", - "TRANSFER_TYPE_MTM_WIN", - "TRANSFER_TYPE_MARGIN_LOW", - "TRANSFER_TYPE_MARGIN_HIGH", - "TRANSFER_TYPE_MARGIN_CONFISCATED", - "TRANSFER_TYPE_MAKER_FEE_PAY", - "TRANSFER_TYPE_MAKER_FEE_RECEIVE", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE", - "TRANSFER_TYPE_LIQUIDITY_FEE_PAY", - "TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE", - "TRANSFER_TYPE_BOND_LOW", - "TRANSFER_TYPE_BOND_HIGH", - "TRANSFER_TYPE_WITHDRAW", - "TRANSFER_TYPE_DEPOSIT", - "TRANSFER_TYPE_BOND_SLASHING", - "TRANSFER_TYPE_REWARD_PAYOUT", - "TRANSFER_TYPE_TRANSFER_FUNDS_SEND", - "TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE", - "TRANSFER_TYPE_CLEAR_ACCOUNT", - "TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE", - "TRANSFER_TYPE_SPOT", - "TRANSFER_TYPE_HOLDING_LOCK", - "TRANSFER_TYPE_HOLDING_RELEASE", - "TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION", - "TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE", - "TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE", - "TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY", - "TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY", - "TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT", - "TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE", - "TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS", - "TRANSFER_TYPE_PERPETUALS_FUNDING_WIN", - "TRANSFER_TYPE_REWARDS_VESTED", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE", - "TRANSFER_TYPE_ORDER_MARGIN_LOW", - "TRANSFER_TYPE_ORDER_MARGIN_HIGH", - "TRANSFER_TYPE_ISOLATED_MARGIN_LOW", - "TRANSFER_TYPE_ISOLATED_MARGIN_HIGH" - ], - "default": "TRANSFER_TYPE_UNSPECIFIED", - "description": "- TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.", - "title": "Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaValidatorNodeStatus": { - "type": "string", - "enum": [ - "VALIDATOR_NODE_STATUS_UNSPECIFIED", - "VALIDATOR_NODE_STATUS_TENDERMINT", - "VALIDATOR_NODE_STATUS_ERSATZ", - "VALIDATOR_NODE_STATUS_PENDING" - ], - "default": "VALIDATOR_NODE_STATUS_UNSPECIFIED", - "description": "- VALIDATOR_NODE_STATUS_TENDERMINT: Node is a tendermint validator\n - VALIDATOR_NODE_STATUS_ERSATZ: Node is an ersatz validator\n - VALIDATOR_NODE_STATUS_PENDING: Node is a pending validator", - "title": "Validation status of the node" - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which a referral set's running volume is evaluated." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVote": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Voter's party ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Which way the party voted." - }, - "proposalId": { - "type": "string", - "description": "Proposal ID being voted on." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the vote was acknowledged by the network." - }, - "totalGovernanceTokenBalance": { - "type": "string", - "description": "Total number of governance token for the party that cast the vote." - }, - "totalGovernanceTokenWeight": { - "type": "string", - "description": "The weight of this vote based on the total number of governance tokens." - }, - "totalEquityLikeShareWeight": { - "type": "string", - "description": "The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal." - }, - "perMarketEquityLikeShareWeight": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal." - } - }, - "title": "Governance vote" - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - }, - "vegaWithdrawExt": { - "type": "object", - "properties": { - "erc20": { - "$ref": "#/definitions/vegaErc20WithdrawExt", - "description": "ERC20 withdrawal details." - } - }, - "title": "Withdrawal external details" - }, - "vegaWithdrawal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the withdrawal." - }, - "partyId": { - "type": "string", - "description": "Unique party ID of the user initiating the withdrawal." - }, - "amount": { - "type": "string", - "description": "Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to withdraw funds from." - }, - "status": { - "$ref": "#/definitions/vegaWithdrawalStatus", - "description": "Status of the withdrawal." - }, - "ref": { - "type": "string", - "description": "Reference which is used by the foreign chain\nto refer to this withdrawal." - }, - "txHash": { - "type": "string", - "description": "Hash of the foreign chain for this transaction." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the network started to process this withdrawal." - }, - "withdrawnTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the withdrawal was finalised by the network." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Foreign chain specifics." - } - }, - "title": "Withdrawal from the Vega network" - }, - "vegaWithdrawalStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_REJECTED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Withdrawal is open and being processed by the network\n - STATUS_REJECTED: Withdrawal have been cancelled\n - STATUS_FINALIZED: Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network", - "title": "Status of the withdrawal" - }, - "vegacommandsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account." - } - }, - "description": "Details for a one-off transfer." - }, - "vegacommandsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64", - "description": "First epoch from which this transfer shall be executed." - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be executed." - }, - "factor": { - "type": "string", - "description": "Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Details for a recurring transfer" - }, - "vegacommandsv1Transfer": { - "type": "object", - "properties": { - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type from which the funds of the party should be taken." - }, - "to": { - "type": "string", - "description": "Public key of the destination account." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the destination account." - }, - "asset": { - "type": "string", - "description": "Asset ID of the asset to be transferred." - }, - "amount": { - "type": "string", - "description": "Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places." - }, - "reference": { - "type": "string", - "description": "Reference to be attached to the transfer." - }, - "oneOff": { - "$ref": "#/definitions/vegacommandsv1OneOffTransfer", - "description": "Details of a one-off transfer that is executed once at a specified time." - }, - "recurring": { - "$ref": "#/definitions/vegacommandsv1RecurringTransfer", - "description": "Details of a transfer that is executed once every epoch until stopped." - } - }, - "title": "Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`" - }, - "vegaeventsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "vegaeventsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "factor": { - "type": "string" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "vegaeventsv1Transfer": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "from": { - "type": "string" - }, - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "to": { - "type": "string" - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "reference": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/v1TransferStatus" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "reason": { - "type": "string" - }, - "gameId": { - "type": "string", - "title": "ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation" - }, - "oneOff": { - "$ref": "#/definitions/vegaeventsv1OneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaeventsv1RecurringTransfer" - }, - "oneOffGovernance": { - "$ref": "#/definitions/v1OneOffGovernanceTransfer" - }, - "recurringGovernance": { - "$ref": "#/definitions/v1RecurringGovernanceTransfer" - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/core.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/core.swagger.json deleted file mode 100644 index 13bfb2112..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/core.swagger.json +++ /dev/null @@ -1,8486 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega core APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "CoreService" - } - ], - "host": "lb.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "FundingPeriodDataPointSource": { - "type": "string", - "enum": [ - "SOURCE_UNSPECIFIED", - "SOURCE_EXTERNAL", - "SOURCE_INTERNAL" - ], - "default": "SOURCE_UNSPECIFIED", - "description": " - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market." - }, - "MarketTradingMode": { - "type": "string", - "enum": [ - "TRADING_MODE_UNSPECIFIED", - "TRADING_MODE_CONTINUOUS", - "TRADING_MODE_BATCH_AUCTION", - "TRADING_MODE_OPENING_AUCTION", - "TRADING_MODE_MONITORING_AUCTION", - "TRADING_MODE_NO_TRADING", - "TRADING_MODE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "TRADING_MODE_UNSPECIFIED", - "description": "- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance", - "title": "Trading mode the market is currently running, also referred to as 'market state'" - }, - "OracleDataSubmissionOracleSource": { - "type": "string", - "enum": [ - "ORACLE_SOURCE_UNSPECIFIED", - "ORACLE_SOURCE_OPEN_ORACLE", - "ORACLE_SOURCE_JSON", - "ORACLE_SOURCE_ETHEREUM" - ], - "default": "ORACLE_SOURCE_UNSPECIFIED", - "description": "- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.", - "title": "Supported oracle sources" - }, - "OrderTimeInForce": { - "type": "string", - "enum": [ - "TIME_IN_FORCE_UNSPECIFIED", - "TIME_IN_FORCE_GTC", - "TIME_IN_FORCE_GTT", - "TIME_IN_FORCE_IOC", - "TIME_IN_FORCE_FOK", - "TIME_IN_FORCE_GFA", - "TIME_IN_FORCE_GFN" - ], - "default": "TIME_IN_FORCE_UNSPECIFIED", - "description": "- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)", - "title": "Time In Force for an order" - }, - "StopOrderExpiryStrategy": { - "type": "string", - "enum": [ - "EXPIRY_STRATEGY_UNSPECIFIED", - "EXPIRY_STRATEGY_CANCELS", - "EXPIRY_STRATEGY_SUBMIT" - ], - "default": "EXPIRY_STRATEGY_UNSPECIFIED", - "description": " - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached." - }, - "StopOrderRejectionReason": { - "type": "string", - "enum": [ - "REJECTION_REASON_UNSPECIFIED", - "REJECTION_REASON_TRADING_NOT_ALLOWED", - "REJECTION_REASON_EXPIRY_IN_THE_PAST", - "REJECTION_REASON_MUST_BE_REDUCE_ONLY", - "REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION", - "REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION", - "REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION", - "REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES" - ], - "default": "REJECTION_REASON_UNSPECIFIED", - "title": "- REJECTION_REASON_UNSPECIFIED: Never valid\n - REJECTION_REASON_TRADING_NOT_ALLOWED: Trading is not allowed yet\n - REJECTION_REASON_EXPIRY_IN_THE_PAST: Expiry of the stop order is in the past\n - REJECTION_REASON_MUST_BE_REDUCE_ONLY: Stop orders submission must be reduce only\n - REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED: Party has reached the maximum stop orders allowed for this market\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION: Stop orders are not allowed if there is no open position\n - REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION: This stop order does not close the position\n - REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID: The percentage value for the linked stop order is invalid\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION: Stop orders are not allowed during the opening auction\n - REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES: Stop OCO orders cannot have the same expiry timestamp" - }, - "StopOrderSizeOverrideSetting": { - "type": "string", - "enum": [ - "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "SIZE_OVERRIDE_SETTING_NONE", - "SIZE_OVERRIDE_SETTING_POSITION" - ], - "default": "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "title": "- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader" - }, - "StopOrderSizeOverrideValue": { - "type": "object", - "properties": { - "percentage": { - "type": "string", - "title": "Scaling percentage of the current position’s size" - } - } - }, - "StopOrderTriggerDirection": { - "type": "string", - "enum": [ - "TRIGGER_DIRECTION_UNSPECIFIED", - "TRIGGER_DIRECTION_RISES_ABOVE", - "TRIGGER_DIRECTION_FALLS_BELOW" - ], - "default": "TRIGGER_DIRECTION_UNSPECIFIED", - "title": "- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level" - }, - "TransactionResultFailureDetails": { - "type": "object", - "properties": { - "error": { - "type": "string", - "title": "Error message explaining the reason for the transaction failing processing" - } - } - }, - "TransactionResultSuccessDetails": { - "type": "object" - }, - "UpdateMarginModeMode": { - "type": "string", - "enum": [ - "MODE_UNSPECIFIED", - "MODE_CROSS_MARGIN", - "MODE_ISOLATED_MARGIN" - ], - "default": "MODE_UNSPECIFIED", - "title": "- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "commandsv1CancelTransfer": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer ID of the transfer to cancel." - } - }, - "description": "Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction." - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1AnnounceNode": { - "type": "object", - "properties": { - "vegaPubKey": { - "type": "string", - "description": "Vega public key of the node being announced." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node being announced." - }, - "chainPubKey": { - "type": "string", - "description": "Public key for the blockchain, currently the node's CometBFT key." - }, - "infoUrl": { - "type": "string", - "description": "URL to the node operators homepage allowing stake holders to make an informed decision when delegating." - }, - "country": { - "type": "string", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node." - }, - "id": { - "type": "string", - "description": "Node ID of the validator, which is the node's public master key." - }, - "name": { - "type": "string", - "description": "Human-readable name of the node." - }, - "avatarUrl": { - "type": "string", - "description": "URL to the node operator's avatar." - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "Vega public key derivation index." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch from which the node is expected to be ready to validate blocks." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the Vega wallet." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - } - }, - "description": "A command that allows a new node operator to announce themselves to the network as a new validator." - }, - "v1ApplyReferralCode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Referral code, normally the referral set ID, for the party to join." - } - }, - "description": "Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch." - }, - "v1AuctionEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "openingAuction": { - "type": "boolean", - "title": "True if the event indicates an auction opening and False otherwise" - }, - "leave": { - "type": "boolean", - "title": "True if the event indicates leaving auction mode and False otherwise" - }, - "start": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the start time for an auction" - }, - "end": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the end time for an auction" - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "Reason this market is/was in auction" - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction" - } - }, - "title": "Auction event indicating a change in auction state, for example starting or ending an auction" - }, - "v1BatchMarketInstructions": { - "type": "object", - "properties": { - "cancellations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "description": "List of order cancellations to be processed sequentially." - }, - "amendments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "description": "List of order amendments to be processed sequentially." - }, - "submissions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "description": "List of order submissions to be processed sequentially." - }, - "stopOrdersCancellation": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "description": "List of stop order cancellations to be processed sequentially." - }, - "stopOrdersSubmission": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "description": "List of stop order submissions to be processed sequentially." - }, - "updateMarginMode": { - "type": "array", - "items": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "title": "Update margin mode instruction" - } - }, - "description": "A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\"." - }, - "v1BatchProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/v1BatchProposalSubmissionTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it." - }, - "v1BatchProposalSubmissionTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal submission" - }, - "v1BeginBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "hash": { - "type": "string" - } - }, - "title": "BeginBlock" - }, - "v1BusEvent": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Unique event ID for the message" - }, - "block": { - "type": "string", - "title": "The batch or block of transactions that the events relate to" - }, - "type": { - "$ref": "#/definitions/v1BusEventType", - "title": "The type of bus event. Must be one of the list below:" - }, - "timeUpdate": { - "$ref": "#/definitions/v1TimeUpdate", - "title": "Time update events" - }, - "ledgerMovements": { - "$ref": "#/definitions/v1LedgerMovements", - "title": "Transfer responses update events" - }, - "positionResolution": { - "$ref": "#/definitions/v1PositionResolution", - "title": "Position resolution events" - }, - "order": { - "$ref": "#/definitions/vegaOrder", - "title": "Order events" - }, - "account": { - "$ref": "#/definitions/vegaAccount", - "title": "Account events" - }, - "party": { - "$ref": "#/definitions/vegaParty", - "title": "Party events" - }, - "trade": { - "$ref": "#/definitions/vegaTrade", - "title": "Trade events" - }, - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "title": "Margin level update events" - }, - "proposal": { - "$ref": "#/definitions/vegaProposal", - "title": "Proposal events for governance" - }, - "vote": { - "$ref": "#/definitions/vegaVote", - "title": "Vote events for governance" - }, - "marketData": { - "$ref": "#/definitions/vegaMarketData", - "title": "Market data events" - }, - "nodeSignature": { - "$ref": "#/definitions/v1NodeSignature", - "title": "Node signature events" - }, - "lossSocialization": { - "$ref": "#/definitions/v1LossSocialization", - "title": "Loss socialization events" - }, - "settlePosition": { - "$ref": "#/definitions/v1SettlePosition", - "title": "Position settlement events" - }, - "settleDistressed": { - "$ref": "#/definitions/v1SettleDistressed", - "title": "Position distressed events" - }, - "marketCreated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "asset": { - "$ref": "#/definitions/vegaAsset", - "title": "Asset events" - }, - "marketTick": { - "$ref": "#/definitions/v1MarketTick", - "title": "Market tick events" - }, - "withdrawal": { - "$ref": "#/definitions/vegaWithdrawal", - "title": "Withdrawal events" - }, - "deposit": { - "$ref": "#/definitions/vegaDeposit", - "title": "Deposit events" - }, - "auction": { - "$ref": "#/definitions/v1AuctionEvent", - "title": "Auction events" - }, - "riskFactor": { - "$ref": "#/definitions/vegaRiskFactor", - "title": "Risk factor events" - }, - "networkParameter": { - "$ref": "#/definitions/vegaNetworkParameter", - "title": "Network parameter events" - }, - "liquidityProvision": { - "$ref": "#/definitions/vegaLiquidityProvision", - "title": "LiquidityProvision events" - }, - "marketUpdated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "oracleSpec": { - "$ref": "#/definitions/vegaOracleSpec", - "title": "OracleSpec events" - }, - "oracleData": { - "$ref": "#/definitions/vegaOracleData", - "title": "OracleData events" - }, - "delegationBalance": { - "$ref": "#/definitions/v1DelegationBalanceEvent", - "title": "Delegation balance events" - }, - "validatorScore": { - "$ref": "#/definitions/v1ValidatorScoreEvent", - "title": "Validator score calculated" - }, - "epochEvent": { - "$ref": "#/definitions/v1EpochEvent", - "title": "Epoch update events" - }, - "validatorUpdate": { - "$ref": "#/definitions/v1ValidatorUpdate", - "title": "Validator update events" - }, - "stakeLinking": { - "$ref": "#/definitions/v1StakeLinking", - "title": "Staking event" - }, - "rewardPayout": { - "$ref": "#/definitions/v1RewardPayoutEvent", - "title": "Reward payout event" - }, - "checkpoint": { - "$ref": "#/definitions/v1CheckpointEvent", - "title": "Checkpoint was created" - }, - "keyRotation": { - "$ref": "#/definitions/v1KeyRotation", - "title": "Key rotation took place" - }, - "stateVar": { - "$ref": "#/definitions/v1StateVar", - "title": "State variable consensus state transition update" - }, - "networkLimits": { - "$ref": "#/definitions/vegaNetworkLimits", - "title": "Network limits events" - }, - "transfer": { - "$ref": "#/definitions/vegaeventsv1Transfer", - "title": "Transfer event" - }, - "rankingEvent": { - "$ref": "#/definitions/v1ValidatorRankingEvent", - "title": "Ranking event" - }, - "erc20MultisigSignerEvent": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEvent", - "title": "ERC20 multi sig signer event" - }, - "erc20MultisigSetThresholdEvent": { - "$ref": "#/definitions/v1ERC20MultiSigThresholdSetEvent", - "title": "ERC20 multi sig set threshold event" - }, - "erc20MultisigSignerAdded": { - "$ref": "#/definitions/v1ERC20MultiSigSignerAdded", - "title": "ERC20 multi sig signer added" - }, - "erc20MultisigSignerRemoved": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemoved", - "title": "ERC20 multi sig signer removed" - }, - "positionStateEvent": { - "$ref": "#/definitions/v1PositionStateEvent", - "title": "Position status for a party in a market" - }, - "ethereumKeyRotation": { - "$ref": "#/definitions/v1EthereumKeyRotation", - "title": "Ethereum key rotation took place" - }, - "protocolUpgradeEvent": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent", - "title": "Protocol upgrade proposal updates" - }, - "beginBlock": { - "$ref": "#/definitions/v1BeginBlock", - "title": "Core is starting to process a new block" - }, - "endBlock": { - "$ref": "#/definitions/v1EndBlock", - "title": "Core finished processing a block" - }, - "protocolUpgradeStarted": { - "$ref": "#/definitions/v1ProtocolUpgradeStarted", - "title": "Core is starting a protocol upgrade" - }, - "settleMarket": { - "$ref": "#/definitions/v1SettleMarket", - "title": "Settle market event for data-node to update positions for settled markets" - }, - "transactionResult": { - "$ref": "#/definitions/v1TransactionResult", - "title": "Result of a transaction processed by the network" - }, - "coreSnapshotEvent": { - "$ref": "#/definitions/v1CoreSnapshotData", - "title": "Core snapshot has been taken at the end of the block" - }, - "protocolUpgradeDataNodeReady": { - "$ref": "#/definitions/v1ProtocolUpgradeDataNodeReady", - "title": "Core snapshot has been taken at the end of the block" - }, - "distressedOrders": { - "$ref": "#/definitions/v1DistressedOrders", - "title": "Parties that had their orders closed because they were distressed" - }, - "expiredOrders": { - "$ref": "#/definitions/v1ExpiredOrders", - "title": "Orders that expired for a given market" - }, - "distressedPositions": { - "$ref": "#/definitions/v1DistressedPositions", - "title": "Open positions on the market that are/were distressed" - }, - "stopOrder": { - "$ref": "#/definitions/v1StopOrderEvent", - "title": "A stop order event" - }, - "fundingPeriod": { - "$ref": "#/definitions/v1FundingPeriod", - "description": "Start or end of a funding period." - }, - "fundingPeriodDataPoint": { - "$ref": "#/definitions/v1FundingPeriodDataPoint", - "description": "Data point within a funding period." - }, - "teamCreated": { - "$ref": "#/definitions/v1TeamCreated", - "title": "Event notifying of the creation of a team.m" - }, - "teamUpdated": { - "$ref": "#/definitions/v1TeamUpdated", - "description": "Event notifying of an update to a team." - }, - "refereeSwitchedTeam": { - "$ref": "#/definitions/v1RefereeSwitchedTeam", - "description": "Event notifying that a referee switched teams." - }, - "refereeJoinedTeam": { - "$ref": "#/definitions/v1RefereeJoinedTeam", - "description": "Event notifying that a referee joined a team." - }, - "referralProgramStarted": { - "$ref": "#/definitions/v1ReferralProgramStarted", - "description": "Event notifying that a referral program has started." - }, - "referralProgramUpdated": { - "$ref": "#/definitions/v1ReferralProgramUpdated", - "description": "Event notifying that a referral program has been updated." - }, - "referralProgramEnded": { - "$ref": "#/definitions/v1ReferralProgramEnded", - "description": "Event notifying that a referral program has ended." - }, - "referralSetCreated": { - "$ref": "#/definitions/v1ReferralSetCreated", - "description": "Event notifying a referral set has been created." - }, - "refereeJoinedReferralSet": { - "$ref": "#/definitions/v1RefereeJoinedReferralSet", - "description": "Event notifying a referee has joined a referral set." - }, - "partyActivityStreak": { - "$ref": "#/definitions/v1PartyActivityStreak", - "title": "Event notifying of an update to a party's activity streak" - }, - "volumeDiscountProgramStarted": { - "$ref": "#/definitions/v1VolumeDiscountProgramStarted", - "description": "Event notifying that a volume discount program has started." - }, - "volumeDiscountProgramUpdated": { - "$ref": "#/definitions/v1VolumeDiscountProgramUpdated", - "description": "Event notifying that a volume discount program has been updated." - }, - "volumeDiscountProgramEnded": { - "$ref": "#/definitions/v1VolumeDiscountProgramEnded", - "description": "Event notifying that a volume discount program has ended." - }, - "referralSetStatsUpdated": { - "$ref": "#/definitions/v1ReferralSetStatsUpdated", - "description": "Event notifying of an update to a referral set's statistics." - }, - "vestingStatsUpdated": { - "$ref": "#/definitions/v1VestingStatsUpdated", - "description": "Event notifying of an update to the vesting statistics." - }, - "volumeDiscountStatsUpdated": { - "$ref": "#/definitions/v1VolumeDiscountStatsUpdated", - "description": "Event notifying of an update to the volume discount statistics." - }, - "feesStats": { - "$ref": "#/definitions/v1FeesStats", - "description": "Event notifying of an update the fees stats for a market." - }, - "fundingPayments": { - "$ref": "#/definitions/v1FundingPayments", - "description": "Event notifying of funding payments at the end of a funding period." - }, - "paidLiquidityFeesStats": { - "$ref": "#/definitions/v1PaidLiquidityFeesStats", - "description": "Event notifying of an update to the liqudity fees stats for a market." - }, - "vestingBalancesSummary": { - "$ref": "#/definitions/v1VestingBalancesSummary", - "description": "Event notifying of an update to the vesting and locked balances." - }, - "transferFees": { - "$ref": "#/definitions/v1TransferFees", - "description": "Event notifying of fees related to a transfer being paid." - }, - "transferFeesDiscount": { - "$ref": "#/definitions/v1TransferFeesDiscount", - "description": "Event notifying of a party's available discounts for transfer fees, per asset." - }, - "partyMarginModeUpdated": { - "$ref": "#/definitions/v1PartyMarginModeUpdated", - "description": "Event notifying of a party's margin mode update on a market." - }, - "partyProfileUpdated": { - "$ref": "#/definitions/v1PartyProfileUpdated", - "description": "Event notifying of a party's profile update." - }, - "market": { - "$ref": "#/definitions/v1MarketEvent", - "title": "Market tick events" - }, - "txErrEvent": { - "$ref": "#/definitions/v1TxErrorEvent", - "title": "Transaction error events, not included in the ALL event type" - }, - "version": { - "type": "integer", - "format": "int64", - "title": "Version of bus event" - }, - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - } - }, - "title": "Bus event is a container for event bus events emitted by Vega" - }, - "v1BusEventType": { - "type": "string", - "enum": [ - "BUS_EVENT_TYPE_UNSPECIFIED", - "BUS_EVENT_TYPE_ALL", - "BUS_EVENT_TYPE_TIME_UPDATE", - "BUS_EVENT_TYPE_LEDGER_MOVEMENTS", - "BUS_EVENT_TYPE_POSITION_RESOLUTION", - "BUS_EVENT_TYPE_ORDER", - "BUS_EVENT_TYPE_ACCOUNT", - "BUS_EVENT_TYPE_PARTY", - "BUS_EVENT_TYPE_TRADE", - "BUS_EVENT_TYPE_MARGIN_LEVELS", - "BUS_EVENT_TYPE_PROPOSAL", - "BUS_EVENT_TYPE_VOTE", - "BUS_EVENT_TYPE_MARKET_DATA", - "BUS_EVENT_TYPE_NODE_SIGNATURE", - "BUS_EVENT_TYPE_LOSS_SOCIALIZATION", - "BUS_EVENT_TYPE_SETTLE_POSITION", - "BUS_EVENT_TYPE_SETTLE_DISTRESSED", - "BUS_EVENT_TYPE_MARKET_CREATED", - "BUS_EVENT_TYPE_ASSET", - "BUS_EVENT_TYPE_MARKET_TICK", - "BUS_EVENT_TYPE_WITHDRAWAL", - "BUS_EVENT_TYPE_DEPOSIT", - "BUS_EVENT_TYPE_AUCTION", - "BUS_EVENT_TYPE_RISK_FACTOR", - "BUS_EVENT_TYPE_NETWORK_PARAMETER", - "BUS_EVENT_TYPE_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_MARKET_UPDATED", - "BUS_EVENT_TYPE_ORACLE_SPEC", - "BUS_EVENT_TYPE_ORACLE_DATA", - "BUS_EVENT_TYPE_DELEGATION_BALANCE", - "BUS_EVENT_TYPE_VALIDATOR_SCORE", - "BUS_EVENT_TYPE_EPOCH_UPDATE", - "BUS_EVENT_TYPE_VALIDATOR_UPDATE", - "BUS_EVENT_TYPE_STAKE_LINKING", - "BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT", - "BUS_EVENT_TYPE_CHECKPOINT", - "BUS_EVENT_TYPE_STREAM_START", - "BUS_EVENT_TYPE_KEY_ROTATION", - "BUS_EVENT_TYPE_STATE_VAR", - "BUS_EVENT_TYPE_NETWORK_LIMITS", - "BUS_EVENT_TYPE_TRANSFER", - "BUS_EVENT_TYPE_VALIDATOR_RANKING", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED", - "BUS_EVENT_TYPE_POSITION_STATE", - "BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL", - "BUS_EVENT_TYPE_BEGIN_BLOCK", - "BUS_EVENT_TYPE_END_BLOCK", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED", - "BUS_EVENT_TYPE_SETTLE_MARKET", - "BUS_EVENT_TYPE_TRANSACTION_RESULT", - "BUS_EVENT_TYPE_SNAPSHOT_TAKEN", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY", - "BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED", - "BUS_EVENT_TYPE_EXPIRED_ORDERS", - "BUS_EVENT_TYPE_DISTRESSED_POSITIONS", - "BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_STOP_ORDER", - "BUS_EVENT_TYPE_FUNDING_PERIOD", - "BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT", - "BUS_EVENT_TYPE_TEAM_CREATED", - "BUS_EVENT_TYPE_TEAM_UPDATED", - "BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM", - "BUS_EVENT_TYPE_REFEREE_JOINED_TEAM", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_CREATED", - "BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET", - "BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_STATS_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED", - "BUS_EVENT_TYPE_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_FUNDING_PAYMENTS", - "BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_SUMMARY", - "BUS_EVENT_TYPE_TRANSFER_FEES_PAID", - "BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED", - "BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED", - "BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED", - "BUS_EVENT_TYPE_MARKET", - "BUS_EVENT_TYPE_TX_ERROR" - ], - "default": "BUS_EVENT_TYPE_UNSPECIFIED", - "description": "- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type", - "title": "Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items" - }, - "v1CheckRawTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction passed the submission checks." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted." - }, - "gasWanted": { - "type": "string", - "format": "int64", - "description": "Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction." - }, - "gasUsed": { - "type": "string", - "format": "int64", - "description": "Unused." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully checked." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "info": { - "type": "string", - "title": "Unused" - } - }, - "title": "Response for checking a version agnostic transaction on Vega" - }, - "v1CheckTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction passed the submission checks." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully checked." - }, - "gasWanted": { - "type": "string", - "format": "int64", - "description": "Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction." - }, - "gasUsed": { - "type": "string", - "format": "int64", - "description": "Unused." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully submitted." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "info": { - "type": "string", - "description": "Unused." - } - } - }, - "v1CheckpointEvent": { - "type": "object", - "properties": { - "hash": { - "type": "string" - }, - "blockHash": { - "type": "string" - }, - "blockHeight": { - "type": "string", - "format": "uint64" - } - } - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1CoreSnapshotData": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which snapshot was taken" - }, - "blockHash": { - "type": "string", - "title": "Hash of the snapshot block" - }, - "coreVersion": { - "type": "string", - "description": "Semver version number of the core." - }, - "protocolUpgradeBlock": { - "type": "boolean", - "title": "Indicates if the snapshot is taken as part of protocol upgrade" - } - }, - "description": "CoreSnapshotData represents the core snapshot data." - }, - "v1CreateReferralSet": { - "type": "object", - "properties": { - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1CreateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set." - }, - "v1CreateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "External link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "External link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1Data": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - } - }, - "data": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Data holds all the properties of the data" - }, - "matchedSpecIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data." - }, - "broadcastAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec." - }, - "metaData": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Holds all metadata properties" - }, - "error": { - "type": "string", - "description": "Error message if the data could not be sourced." - } - }, - "description": "Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data." - }, - "v1DelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to delegate stake to." - }, - "amount": { - "type": "string", - "description": "Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places." - } - }, - "description": "Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator." - }, - "v1DelegationBalanceEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "nodeId": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "epochSeq": { - "type": "string" - } - }, - "title": "DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect" - }, - "v1DistressedOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "parties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of Party IDs i.e. each party's public key for the event" - } - }, - "title": "Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders" - }, - "v1DistressedPositions": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressedParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, that are distressed but still have open volume" - }, - "safeParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position" - } - }, - "description": "Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field." - }, - "v1ERC20MultiSigSignerAdded": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "title": "ID of the signature bundle" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node to be added" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "newSigner": { - "type": "string", - "title": "Ethereum address of the new signer" - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was added for" - } - } - }, - "v1ERC20MultiSigSignerEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEventType" - }, - "signer": { - "type": "string" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ERC20MultiSigSignerEventType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ADDED", - "TYPE_REMOVED" - ], - "default": "TYPE_UNSPECIFIED" - }, - "v1ERC20MultiSigSignerRemoved": { - "type": "object", - "properties": { - "signatureSubmitters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemovedSubmitter" - }, - "title": "List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node which is to be removed" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "oldSigner": { - "type": "string", - "title": "Ethereum address of the signer to be removed" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was removed for" - } - } - }, - "v1ERC20MultiSigSignerRemovedSubmitter": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "description": "Signature ID of the signer removed." - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - } - } - }, - "v1ERC20MultiSigThresholdSetEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "newThreshold": { - "type": "integer", - "format": "int64" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1EndBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - } - }, - "title": "EndBlock" - }, - "v1EpochEvent": { - "type": "object", - "properties": { - "seq": { - "type": "string", - "format": "uint64", - "title": "Sequence number that increases by one each epoch" - }, - "action": { - "$ref": "#/definitions/vegaEpochAction", - "title": "Action tells us what action is taking place" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch started" - }, - "expireTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch should end" - }, - "endTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch actually ended" - } - }, - "title": "Epoch details" - }, - "v1EthereumKeyRotateSubmission": { - "type": "object", - "properties": { - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newAddress": { - "type": "string", - "description": "Ethereum address that is being rotated to." - }, - "currentAddress": { - "type": "string", - "description": "Ethereum address of the node's current Ethereum keys." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature signed by the new Ethereum key that can be verified to prove ownership." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated." - }, - "v1EthereumKeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Ethereum key" - }, - "oldAddress": { - "type": "string", - "title": "Ethereum address that was previously associated with the node" - }, - "newAddress": { - "type": "string", - "title": "Ethereum address that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about an Ethereum key rotation" - }, - "v1ExpiredOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "orderIds": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of expired order IDs" - } - } - }, - "v1ExternalData": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/v1Data" - } - } - }, - "v1FeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "title": "Market the fees were paid in" - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalRewardsReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral rewards received by the referrer of the referral set." - }, - "referrerRewardsGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ReferrerRewardsGenerated" - }, - "description": "Referral rewards generated by all referee taker fees." - }, - "refereesDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral discounts applied to all referee taker fees." - }, - "volumeDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total volume discounts applied to all referee taker fees." - }, - "totalMakerFeesReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total maker fees received by the maker side." - }, - "makerFeesGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1MakerFeesGenerated" - }, - "description": "Maker fees paid by all trade aggressors, and which makers the fees were paid to." - }, - "totalFeesPaidAndReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total trading fees received and paid by the party." - } - }, - "title": "Fees rewards and discounts paid / received per parties during an epoch" - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1FundingPayment": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "ID of the party." - }, - "amount": { - "type": "string", - "description": "The amount paid, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "The amount gained or lost by a party as a result of a funding payment." - }, - "v1FundingPayments": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period associated with these payments." - }, - "payments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1FundingPayment" - }, - "description": "List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "Event notifying of funding payments at the end of a funding period." - }, - "v1FundingPeriod": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market for which this funding period relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period." - }, - "start": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period started." - }, - "end": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period ended." - }, - "fundingPayment": { - "type": "string", - "description": "Funding payment for this period as the difference between the time-weighted average price of the external and internal data point." - }, - "fundingRate": { - "type": "string", - "description": "Percentage difference between the time-weighted average price of the external and internal data point." - }, - "internalTwap": { - "type": "string", - "description": "TWAP for this period based on the internal data-points." - }, - "externalTwap": { - "type": "string", - "description": "TWAP for this period based on the external data-points." - } - }, - "description": "Event notifying on the details of a funding interval for a perpetuals market." - }, - "v1FundingPeriodDataPoint": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID which the data point relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period this data point belongs to." - }, - "dataPointType": { - "$ref": "#/definitions/FundingPeriodDataPointSource", - "description": "Origin of the data point." - }, - "price": { - "type": "string", - "description": "Price of the asset as seen by this data point." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the data point was received." - }, - "twap": { - "type": "string", - "description": "The TWAP for this source with this data-point added." - } - }, - "description": "Event notifying a data point for a funding period." - }, - "v1GetSpamStatisticsResponse": { - "type": "object", - "properties": { - "chainId": { - "type": "string", - "description": "Chain ID for which the statistics are captured." - }, - "statistics": { - "$ref": "#/definitions/v1SpamStatistics", - "title": "Spam statistics for the party" - } - }, - "title": "Response containing all the spam statistics of a party for the current epoch" - }, - "v1GetVegaTimeResponse": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "title": "Timestamp representation of current VegaTime as represented in\nUnix nanoseconds, for example `1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`" - } - }, - "title": "Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"" - }, - "v1IcebergOpts": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is made visible and can be traded with during the execution of a single order." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "Minimum allowed remaining size of the order before it is replenished back to its peak size." - } - }, - "title": "Iceberg order options" - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1IssueSignatures": { - "type": "object", - "properties": { - "submitter": { - "type": "string", - "description": "Ethereum address which will submit the signatures to the smart contract." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "What kind of signatures to generate, namely for whether a signer is being added or removed." - }, - "validatorNodeId": { - "type": "string", - "description": "Node ID of the validator node that will be signed in or out of the smart contract." - } - }, - "description": "Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command." - }, - "v1JoinTeam": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the team to join, this is the same as the referral code used to generate the team." - } - }, - "description": "Command that allows the submitter to join a team or change teams if they are already a member of a team." - }, - "v1KeyRotateSubmission": { - "type": "object", - "properties": { - "newPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "New Vega public key derivation index." - }, - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newPubKey": { - "type": "string", - "description": "Vega public key that would be rotated to." - }, - "currentPubKeyHash": { - "type": "string", - "description": "Hash of the node's current Vega public key." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated." - }, - "v1KeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Vega key" - }, - "oldPubKey": { - "type": "string", - "title": "Vega public key that was previously associated with the node" - }, - "newPubKey": { - "type": "string", - "title": "Vega public key that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about a Vega key rotation" - }, - "v1LastBlockHeightResponse": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64", - "title": "Last block height" - }, - "hash": { - "type": "string", - "title": "Last block hash" - }, - "spamPowHashFunction": { - "type": "string", - "title": "Supported proof of work hash function" - }, - "spamPowDifficulty": { - "type": "integer", - "format": "int64", - "title": "Difficulty of the proof of work, i.e. the target number of zeros" - }, - "spamPowNumberOfPastBlocks": { - "type": "integer", - "format": "int64", - "title": "Supported proof of work number of blocks behind current height allowed" - }, - "spamPowNumberOfTxPerBlock": { - "type": "integer", - "format": "int64", - "title": "Allowed number of transactions per block" - }, - "spamPowIncreasingDifficulty": { - "type": "boolean", - "title": "Boolean indicating whether increasing difficulty is allowed for using the\nsame height for more than `spam_pow_number_of_past_blocks` transactions" - }, - "chainId": { - "type": "string", - "title": "Network chain id from which the block comes from" - } - }, - "title": "Response with the height of the last block processed by\ntendermint" - }, - "v1LedgerMovements": { - "type": "object", - "properties": { - "ledgerMovements": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerMovement" - }, - "title": "One or more entries containing internal transfer information" - } - }, - "title": "Transfer responses event contains a collection of transfer information" - }, - "v1LiquidityProvisionAmendment": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wants to amend the liquidity commitment for." - }, - "commitmentAmount": { - "type": "string", - "description": "New commitment amount." - }, - "fee": { - "type": "string", - "description": "New nominated liquidity fee factor." - }, - "reference": { - "type": "string", - "description": "New arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged." - }, - "v1LiquidityProvisionCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter will stop providing liquidity for." - } - }, - "description": "Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market." - }, - "v1LiquidityProvisionSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wishes to provide liquidity for." - }, - "commitmentAmount": { - "type": "string", - "description": "Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "reference": { - "type": "string", - "description": "Arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market." - }, - "v1LossSocialization": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "amount": { - "type": "string", - "title": "Amount distributed" - } - }, - "title": "Loss socialization event contains details on the amount of wins unable to be distributed" - }, - "v1MakerFeesGenerated": { - "type": "object", - "properties": { - "taker": { - "type": "string", - "description": "Party that paid the fees." - }, - "makerFeesPaid": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of maker fees paid by the taker to the maker." - } - }, - "title": "Maker fees generated by the trade aggressor" - }, - "v1MarketEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "payload": { - "type": "string", - "title": "Payload is a unique information string" - } - }, - "title": "MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging" - }, - "v1MarketTick": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Market ID for the event" - }, - "time": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Market tick event contains the time value for when a particular market was last processed on Vega" - }, - "v1NodeSignature": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the resource that the signature relates to." - }, - "sig": { - "type": "string", - "format": "byte", - "description": "Signature generated by the node." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "Kind of resource being signed." - } - }, - "description": "A validator command sent automatically containing a signature that can be used on a foreign chain to process an action." - }, - "v1NodeSignatureKind": { - "type": "string", - "enum": [ - "NODE_SIGNATURE_KIND_UNSPECIFIED", - "NODE_SIGNATURE_KIND_ASSET_NEW", - "NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED", - "NODE_SIGNATURE_KIND_ASSET_UPDATE" - ], - "default": "NODE_SIGNATURE_KIND_UNSPECIFIED", - "description": "- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.", - "title": "Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc" - }, - "v1ObserveEventBusResponse": { - "type": "object", - "properties": { - "events": { - "type": "array", - "items": { - "$ref": "#/definitions/v1BusEvent" - }, - "description": "One or more events that match the subscription request criteria." - } - }, - "title": "Response to a subscribed stream of events from the Vega event bus" - }, - "v1OneOffGovernanceTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "v1OracleDataSubmission": { - "type": "object", - "properties": { - "source": { - "$ref": "#/definitions/OracleDataSubmissionOracleSource", - "description": "Source from which the data is coming from." - }, - "payload": { - "type": "string", - "format": "byte", - "description": "Data provided by the data source." - } - }, - "title": "Command to submit new oracle data from third party providers" - }, - "v1OrderAmendment": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "ID of the order to amend." - }, - "marketId": { - "type": "string", - "description": "Market ID that the order was originally submitted to." - }, - "price": { - "type": "string", - "description": "New price for the order. This field is an unsigned integer scaled to the market's decimal places." - }, - "sizeDelta": { - "type": "string", - "format": "int64", - "description": "Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for the new expiry time for the order." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "New time in force for the order." - }, - "peggedOffset": { - "type": "string", - "description": "New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "peggedReference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "New pegged reference for the order." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0." - } - }, - "description": "A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command." - }, - "v1OrderCancellation": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided." - }, - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - } - }, - "description": "A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command." - }, - "v1OrderSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID to submit the order to." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of units." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Which side of the order book the order is for, e.g. buy or sell." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "Time in force indicates how long an order will remain active before it is executed or expires.." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT." - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type of the order." - }, - "reference": { - "type": "string", - "description": "Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times." - }, - "postOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders." - }, - "reduceOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders." - }, - "icebergOpts": { - "$ref": "#/definitions/v1IcebergOpts", - "description": "Iceberg order details. If set, the order will exist on the order book in chunks." - } - }, - "description": "A command that submits an order to the Vega network for a given market." - }, - "v1PaidLiquidityFeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market the fees were paid in." - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalFeesPaid": { - "type": "string", - "description": "Total fees paid across all parties." - }, - "feesPaidPerParty": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Fees paid per party." - } - } - }, - "v1PartyActivityStreak": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "The party." - }, - "activeFor": { - "type": "string", - "format": "uint64", - "description": "How many epoch this party has been active for." - }, - "inactiveFor": { - "type": "string", - "format": "uint64", - "description": "how many epoch this party has been inactive for." - }, - "isActive": { - "type": "boolean", - "description": "Is this party considered active or not." - }, - "rewardDistributionActivityMultiplier": { - "type": "string", - "description": "The current rewards distribution multiplier for this party." - }, - "rewardVestingActivityMultiplier": { - "type": "string", - "description": "The vesting multiplier for this party." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "The epoch this information is relevant to." - }, - "tradedVolume": { - "type": "string", - "title": "Party's traded volume at the end of the given epoch" - }, - "openVolume": { - "type": "string", - "title": "Party's open interest volume at the end of the given epoch" - } - }, - "title": "The updated activity streak of a party at end of epoch" - }, - "v1PartyAmount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Receiving party ID." - }, - "amount": { - "type": "string", - "description": "Amount received." - }, - "quantumAmount": { - "type": "string", - "description": "Amount value in quantum." - } - }, - "title": "A pair of a party and amount" - }, - "v1PartyLockedBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "untilEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the balance will be released." - }, - "balance": { - "type": "string", - "description": "Locked balance." - } - }, - "description": "A party's locked balance for a given asset." - }, - "v1PartyMarginModeUpdated": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Unique ID of the market in which the update happened." - }, - "partyId": { - "type": "string", - "description": "Unique ID of the party that updated their margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Updated margin mode." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor for the market. Isolated mode only." - }, - "minTheoreticalMarginFactor": { - "type": "string", - "description": "Minimum theoretical margin factor for the market. Isolated mode only." - }, - "maxTheoreticalLeverage": { - "type": "string", - "description": "Maximum theoretical leverage for the market. Isolated mode only." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the update happened." - } - } - }, - "v1PartyProfileUpdated": { - "type": "object", - "properties": { - "updatedProfile": { - "$ref": "#/definitions/vegaPartyProfile", - "description": "Party's profile updated." - } - } - }, - "v1PartyVestingBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "balance": { - "type": "string", - "description": "Balance that is vested." - } - }, - "description": "Balance that is being vested for the party." - }, - "v1PartyVestingStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "The party." - }, - "rewardBonusMultiplier": { - "type": "string", - "description": "The bonus multiplier applied on the reward." - }, - "quantumBalance": { - "type": "string", - "description": "The balance of the party, in quantum." - } - }, - "description": "The vesting stats for a given party." - }, - "v1PartyVestingSummary": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party ID." - }, - "partyLockedBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyLockedBalance" - }, - "description": "List of locked balances." - }, - "partyVestingBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingBalance" - }, - "description": "List of vesting balances." - } - }, - "title": "Summary of a party's vesting balances" - }, - "v1PartyVolumeDiscountStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to fees." - }, - "runningVolume": { - "type": "string", - "description": "The party's running volume." - } - }, - "description": "Volume discount stats for a given party." - }, - "v1PoWBlockState": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height for the current Proof of Work state statistics" - }, - "blockHash": { - "type": "string", - "title": "Hash of the current block" - }, - "transactionsSeen": { - "type": "string", - "format": "uint64", - "title": "Total number of transactions seen in the block" - }, - "expectedDifficulty": { - "type": "string", - "format": "uint64", - "description": "This is the minimum required difficulty for the next transaction submitted on this block\nif it is possible to submit more transactions on this block, otherwise nil." - }, - "hashFunction": { - "type": "string", - "title": "Hashing function used to calculate the block hash" - }, - "difficulty": { - "type": "string", - "format": "uint64", - "title": "Base difficulty for this block for when transactions seen \u003c tx_per_block" - }, - "txPerBlock": { - "type": "string", - "format": "uint64", - "title": "Number of transactions that can have their proof-of-work calculated with this block hash before\neither the difficulty increases, or no more transactions can use this block hash" - }, - "increasingDifficulty": { - "type": "boolean", - "title": "Whether or not this block allows for increasing proof-of-work difficulty if the\ntx-per-block-hash limit has been reached" - } - }, - "title": "Proof of Work state for a given block" - }, - "v1PoWStatistic": { - "type": "object", - "properties": { - "blockStates": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PoWBlockState" - }, - "title": "Block state for each block in scope for PoW calculation" - }, - "bannedUntil": { - "type": "string", - "title": "PoW banned until timestamp as RFC3339Nano" - }, - "numberOfPastBlocks": { - "type": "string", - "format": "uint64", - "title": "Number of block behind the current block whose hash can be used for proof-of-work calculations" - } - }, - "title": "Proof of work statistics for a party" - }, - "v1PositionResolution": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressed": { - "type": "string", - "format": "int64", - "title": "Number of distressed traders" - }, - "closed": { - "type": "string", - "format": "int64", - "title": "Number of close outs" - }, - "markPrice": { - "type": "string", - "title": "Mark price as a string representing a scaled price" - } - }, - "title": "Position resolution event contains information on distressed trades" - }, - "v1PositionStateEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Party ID for this position update" - }, - "marketId": { - "type": "string", - "title": "Market ID for this position update" - }, - "size": { - "type": "string", - "format": "int64", - "title": "Current position" - }, - "potentialBuys": { - "type": "string", - "format": "int64", - "title": "Potential orders" - }, - "potentialSells": { - "type": "string", - "format": "int64" - }, - "vwBuyPrice": { - "type": "string", - "title": "Volume weighted prices" - }, - "vwSellPrice": { - "type": "string" - } - }, - "title": "Position state event contains the current position state for a single party in a single market" - }, - "v1ProofOfWork": { - "type": "object", - "properties": { - "tid": { - "type": "string", - "description": "Unique transaction identifier used to seed the proof-of-work hash." - }, - "nonce": { - "type": "string", - "format": "uint64", - "description": "Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network." - } - }, - "description": "Components needed for the network to verify proof-of-work." - }, - "v1PropagateChainEventResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "title": "Success will be true if the event was accepted by the node,\n**Important** - success does not mean that the event is confirmed by consensus" - } - }, - "title": "Response for a new event sent by the blockchain queue to be propagated on Vega" - }, - "v1Property": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "value": { - "type": "string", - "description": "Value of the property." - } - }, - "description": "Property describes one property of data spec with a key with its value." - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1ProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market." - }, - "v1ProtocolUpgradeDataNodeReady": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the data node is ready for protocol upgrade" - }, - "v1ProtocolUpgradeEvent": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which to perform the upgrade" - }, - "vegaReleaseTag": { - "type": "string", - "title": "Release tag for the vega binary" - }, - "approvers": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Tendermint validators that have agreed to the upgrade" - }, - "status": { - "$ref": "#/definitions/v1ProtocolUpgradeProposalStatus", - "title": "Status of the proposal" - } - } - }, - "v1ProtocolUpgradeProposal": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height at which to perform the upgrade." - }, - "vegaReleaseTag": { - "type": "string", - "description": "Release tag for the Vega binary." - } - }, - "description": "A validator command sent manually by a node operator to propose a protocol upgrade." - }, - "v1ProtocolUpgradeProposalStatus": { - "type": "string", - "enum": [ - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED" - ], - "default": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "title": "- PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected" - }, - "v1ProtocolUpgradeStarted": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the core is starting a protocol upgrade" - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1RecurringGovernanceTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "v1RefereeJoinedReferralSet": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the referral set the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the set." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the set." - } - } - }, - "v1RefereeJoinedTeam": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the team the referee joined." - }, - "referee": { - "type": "string", - "description": "The party that joined the team." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined a team." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - } - }, - "v1RefereeStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Unique ID of the party." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to the party." - }, - "epochNotionalTakerVolume": { - "type": "string", - "title": "Current referee notional taker volume" - } - } - }, - "v1RefereeSwitchedTeam": { - "type": "object", - "properties": { - "fromTeamId": { - "type": "string", - "description": "The unique identifier of the team the referee left." - }, - "toTeamId": { - "type": "string", - "description": "The unique identifier of the team joined." - }, - "referee": { - "type": "string", - "description": "The party that switched team." - }, - "switchedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party switched the team." - } - } - }, - "v1ReferralProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the referral program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1ReferralProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "Referral program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program started." - } - } - }, - "v1ReferralProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "The updated referral program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program was updated." - } - } - }, - "v1ReferralSetCreated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the created set." - }, - "referrer": { - "type": "string", - "description": "Party that created the set." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was updated." - } - } - }, - "v1ReferralSetStatsUpdated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the set's statistics are updated." - }, - "referralSetRunningNotionalTakerVolume": { - "type": "string", - "description": "Running volume for the set based on the window length of the current\nreferral program." - }, - "refereesStats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1RefereeStats" - }, - "description": "Referees' statistics for that epoch." - }, - "rewardFactor": { - "type": "string", - "description": "Reward factor applied to the trades." - }, - "rewardsMultiplier": { - "type": "string", - "description": "Rewards multiplier applied to the trades." - }, - "rewardsFactorMultiplier": { - "type": "string", - "description": "Rewards factor multiplier for the trades." - }, - "wasEligible": { - "type": "boolean", - "description": "Indicates if the referral set was eligible to be part of the referral program." - }, - "referrerTakerVolume": { - "type": "string", - "title": "Taker volume of the referrer" - } - } - }, - "v1ReferrerRewardsGenerated": { - "type": "object", - "properties": { - "referrer": { - "type": "string", - "description": "Referrer party." - }, - "generatedReward": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of rewards generated per party." - } - }, - "title": "Rewards generated for referrers by each of their referees" - }, - "v1RewardPayoutEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "percentOfTotalReward": { - "type": "string" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "rewardType": { - "type": "string" - }, - "lockedUntilEpoch": { - "type": "string" - }, - "quantumAmount": { - "type": "string" - }, - "gameId": { - "type": "string" - } - } - }, - "v1SettleDistressed": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID i.e. a party's public key for the event" - }, - "margin": { - "type": "string", - "title": "Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - }, - "price": { - "type": "string", - "title": "Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - } - }, - "title": "Settle distressed event contains information on distressed trading parties who are closed out" - }, - "v1SettleMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly" - }, - "v1SettlePosition": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "tradeSettlements": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TradeSettlement" - }, - "title": "A collection of 1 or more trade settlements" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle position event contains position settlement information for a party" - }, - "v1Signature": { - "type": "object", - "properties": { - "value": { - "type": "string", - "description": "Hex encoded bytes of the signature." - }, - "algo": { - "type": "string", - "description": "Algorithm used to create the signature." - }, - "version": { - "type": "integer", - "format": "int64", - "description": "Version of the algorithm used to create the signature." - } - }, - "description": "Signature definition that allows the network to authenticate external data." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1SpamStatistic": { - "type": "object", - "properties": { - "countForEpoch": { - "type": "string", - "format": "uint64", - "title": "Current transaction count received from the party during this epoch for this policy" - }, - "maxForEpoch": { - "type": "string", - "format": "uint64", - "title": "Maximum number of transactions allowed for this policy in an epoch" - }, - "bannedUntil": { - "type": "string", - "title": "If blocked the timestamp when the party will be unblocked as RFC3339Nano" - }, - "minTokensRequired": { - "type": "string", - "title": "Effective minimum number of tokens required to submit a transaction of this type" - } - }, - "title": "Statistics for a given spam policy" - }, - "v1SpamStatistics": { - "type": "object", - "properties": { - "proposals": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for proposal transactions made by the party." - }, - "delegations": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for delegation transactions made by the party." - }, - "transfers": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transfer transactions made by the party." - }, - "nodeAnnouncements": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for node announcement transactions made by the party." - }, - "votes": { - "$ref": "#/definitions/v1VoteSpamStatistics", - "description": "Statistics for proposal votes made by the party." - }, - "pow": { - "$ref": "#/definitions/v1PoWStatistic", - "description": "Statistics for proof of work difficulty observed per block for the party." - }, - "issueSignatures": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for multisig signatures issued for the party." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch in which these statistics apply to." - }, - "createReferralSet": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transactions made by the party to create referral sets." - }, - "updateReferralSet": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transactions made by the party to update referral sets." - }, - "applyReferralCode": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transactions made by the party to apply referral codes." - } - }, - "title": "Complete spam statistics captured for a given party" - }, - "v1StakeLinking": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Internal ID for this staking event" - }, - "type": { - "$ref": "#/definitions/v1StakeLinkingType", - "description": "Stake linking event type." - }, - "ts": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the event was emitted by Ethereum." - }, - "party": { - "type": "string", - "description": "Party to whom the event is directed at." - }, - "amount": { - "type": "string", - "description": "Amount of stake deposited or removed." - }, - "status": { - "$ref": "#/definitions/v1StakeLinkingStatus", - "description": "Status of the event." - }, - "finalizedAt": { - "type": "string", - "format": "int64", - "description": "Time at which the Vega network finalised the state of the event." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction in which the event happened." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block when the event happened." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Block time." - }, - "logIndex": { - "type": "string", - "format": "uint64", - "description": "Log index." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum address from which the stake link was initiated." - } - }, - "title": "StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network" - }, - "v1StakeLinkingStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_ACCEPTED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network" - }, - "v1StakeLinkingType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LINK", - "TYPE_UNLINK" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction" - }, - "v1StateVar": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "eventId": { - "type": "string" - }, - "state": { - "type": "string" - } - }, - "title": "StateVar event updates on state changes in state variable consensus" - }, - "v1Statistics": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Current block height as reported by the Vega blockchain" - }, - "backlogLength": { - "type": "string", - "format": "uint64", - "title": "Current backlog length i.e., number of transactions, that are waiting to be included in a block" - }, - "totalPeers": { - "type": "string", - "format": "uint64", - "title": "Total number of connected peers to this node" - }, - "genesisTime": { - "type": "string", - "title": "Genesis block date and time formatted in ISO-8601 datetime format with nanosecond precision" - }, - "currentTime": { - "type": "string", - "title": "Current system date and time formatted in ISO-8601 datetime format with nanosecond precision" - }, - "vegaTime": { - "type": "string", - "title": "Current Vega date and time formatted in ISO-8601 datetime format with nanosecond precision" - }, - "status": { - "$ref": "#/definitions/vegaChainStatus", - "title": "Status of the connection to the Vega blockchain" - }, - "txPerBlock": { - "type": "string", - "format": "uint64", - "title": "Transactions per block" - }, - "averageTxBytes": { - "type": "string", - "format": "uint64", - "title": "Average transaction size in bytes" - }, - "averageOrdersPerBlock": { - "type": "string", - "format": "uint64", - "title": "Average orders per block" - }, - "tradesPerSecond": { - "type": "string", - "format": "uint64", - "title": "Trades emitted per second" - }, - "ordersPerSecond": { - "type": "string", - "format": "uint64", - "title": "Orders processed per second" - }, - "totalMarkets": { - "type": "string", - "format": "uint64", - "title": "Total markets on this Vega network" - }, - "totalAmendOrder": { - "type": "string", - "format": "uint64", - "title": "Total number of order amendments since genesis across all markets" - }, - "totalCancelOrder": { - "type": "string", - "format": "uint64", - "title": "Total number of order cancellations since genesis across all markets" - }, - "totalCreateOrder": { - "type": "string", - "format": "uint64", - "title": "Total number of order submissions since genesis across all markets" - }, - "totalOrders": { - "type": "string", - "format": "uint64", - "title": "Total number of orders processed since genesis across all markets" - }, - "totalTrades": { - "type": "string", - "format": "uint64", - "title": "Total number of trades emitted since genesis across all markets" - }, - "orderSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to order data" - }, - "tradeSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to trade data" - }, - "candleSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to candlestick data" - }, - "marketDepthSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to market depth data" - }, - "positionsSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to positions data" - }, - "accountSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to account data" - }, - "marketDataSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to market data" - }, - "appVersionHash": { - "type": "string", - "title": "Version hash of the Vega node software" - }, - "appVersion": { - "type": "string", - "title": "Version of the Vega node software" - }, - "chainVersion": { - "type": "string", - "title": "Version of the underlying Vega blockchain" - }, - "blockDuration": { - "type": "string", - "format": "uint64", - "title": "Current block duration, in nanoseconds" - }, - "uptime": { - "type": "string", - "title": "Total uptime for this node formatted in ISO-8601 datetime format with nanosecond precision" - }, - "chainId": { - "type": "string", - "title": "Unique ID for the underlying Vega blockchain" - }, - "marketDepthUpdatesSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to market depth update data" - }, - "blockHash": { - "type": "string", - "title": "Current block hash" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Current epoch" - }, - "epochStartTime": { - "type": "string", - "title": "Epoch start time" - }, - "epochExpiryTime": { - "type": "string", - "title": "Epoch expected end time" - }, - "eventCount": { - "type": "string", - "format": "uint64", - "title": "Number of events in the last block" - }, - "eventsPerSecond": { - "type": "string", - "format": "uint64", - "title": "Rate of events per second in the last block" - } - }, - "title": "Vega domain specific statistics as reported by the node the caller is connected to" - }, - "v1StatisticsResponse": { - "type": "object", - "properties": { - "statistics": { - "$ref": "#/definitions/v1Statistics" - } - }, - "title": "Response containing statistics about the Vega network" - }, - "v1StopOrderEvent": { - "type": "object", - "properties": { - "submission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "stopOrder": { - "$ref": "#/definitions/vegaStopOrder" - } - } - }, - "v1StopOrderSetup": { - "type": "object", - "properties": { - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Order to be submitted once the trigger is breached." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Indicates if this order is linked to an order or position to derive the order size" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "If this order is linked to a position, provide an optional scaling factor" - }, - "price": { - "type": "string", - "description": "Order will be submitted if the last traded price on the market breaches the given price." - }, - "trailingPercentOffset": { - "type": "string", - "description": "Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted." - } - }, - "description": "Price and expiry configuration for a stop order." - }, - "v1StopOrdersCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - }, - "stopOrderId": { - "type": "string", - "description": "Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided." - } - }, - "description": "A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command." - }, - "v1StopOrdersSubmission": { - "type": "object", - "properties": { - "risesAbove": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price rises above a given trigger price." - }, - "fallsBelow": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price falls below a given trigger price." - } - }, - "description": "A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO)." - }, - "v1SubmitRawTransactionRequestType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ASYNC", - "TYPE_SYNC", - "TYPE_COMMIT" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_ASYNC: Transaction will be submitted without waiting for response\n - TYPE_SYNC: Transaction will be submitted, and blocking until the\ntendermint mempool returns a response\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the tendermint\nnetwork has committed it into a block. Used only for debugging,\nnot for submitting transactions", - "title": "Blockchain transaction type" - }, - "v1SubmitRawTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction was validated and submitted to the chain's mempool." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction, which can be used to identify the transaction in a node's event stream." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully submitted." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "height": { - "type": "string", - "format": "int64", - "description": "Unused." - } - }, - "title": "Response for submitting a version agnostic transaction on Vega" - }, - "v1SubmitTransactionRequestType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ASYNC", - "TYPE_SYNC", - "TYPE_COMMIT" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Blockchain transaction type.\n\n - TYPE_ASYNC: Transaction will be submitted without waiting for a response.\n - TYPE_SYNC: Transaction will be submitted, and blocking until the mempool returns a response.\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the network has committed it into a block.\nUsed only for debugging local network, not for submitting transactions." - }, - "v1SubmitTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction was validated and submitted to the chain's mempool." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction, which can be used to identify the transaction in a node's event stream." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully submitted." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "height": { - "type": "string", - "format": "int64", - "description": "Unused." - } - }, - "description": "Response for submitting a transaction on the network." - }, - "v1TeamCreated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the created team." - }, - "referrer": { - "type": "string", - "description": "The party that created the team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the team is created." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the team was created." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TeamUpdated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier for the updated team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TimeUpdate": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Time update event contains the latest time update from Vega blockchain and indicates the start of a new block" - }, - "v1TradeSettlement": { - "type": "object", - "properties": { - "size": { - "type": "string", - "format": "int64", - "title": "Size of trade settlement" - }, - "price": { - "type": "string", - "title": "Price of settlement as string (in asset decimals)" - }, - "marketPrice": { - "type": "string", - "title": "Price of settlement as a string (in market decimals)" - } - }, - "title": "Trade settlement is part of the settle position event" - }, - "v1Transaction": { - "type": "object", - "properties": { - "inputData": { - "type": "string", - "format": "byte", - "description": "Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`." - }, - "signature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature of the input data field, signed by the sender of this transaction." - }, - "address": { - "type": "string", - "description": "Hex-encoded address of the sender. Not supported yet." - }, - "pubKey": { - "type": "string", - "description": "Hex-encoded public key of the sender." - }, - "version": { - "$ref": "#/definitions/v1TxVersion", - "description": "Version of the transaction." - }, - "pow": { - "$ref": "#/definitions/v1ProofOfWork", - "description": "Proof-of-work containing the random transaction ID used by the client and the nonce." - } - }, - "description": "Transaction containing a command that can be sent to instruct the network to execute an action.\nA transaction contains a byte string representation of the input data which must then be signed, with the signature added to the transaction." - }, - "v1TransactionResult": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "status": { - "type": "boolean", - "description": "Status of the transaction, did it succeed or an error was raised." - }, - "hash": { - "type": "string", - "title": "Hash of the transaction" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - }, - "keyRotateSubmission": { - "$ref": "#/definitions/v1KeyRotateSubmission" - }, - "ethereumKeyRotateSubmission": { - "$ref": "#/definitions/v1EthereumKeyRotateSubmission" - }, - "stopOrderSubmission": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "stopOrderCancellation": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "createReferralSet": { - "$ref": "#/definitions/v1CreateReferralSet" - }, - "updateReferralSet": { - "$ref": "#/definitions/v1UpdateReferralSet" - }, - "applyReferralCode": { - "$ref": "#/definitions/v1ApplyReferralCode" - }, - "updateMarginMode": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "joinTeam": { - "$ref": "#/definitions/v1JoinTeam" - }, - "batchProposal": { - "$ref": "#/definitions/v1BatchProposalSubmission" - }, - "updatePartyProfile": { - "$ref": "#/definitions/v1UpdatePartyProfile" - }, - "success": { - "$ref": "#/definitions/TransactionResultSuccessDetails" - }, - "failure": { - "$ref": "#/definitions/TransactionResultFailureDetails" - } - } - }, - "v1TransferFees": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer that triggered the collection of fees." - }, - "amount": { - "type": "string", - "description": "Amount of fees paid." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch when the transfer was dispatched, and fees were paid." - }, - "discountApplied": { - "type": "string", - "description": "Amount that was subtracted from the transfer fee based on available discounts." - } - } - }, - "v1TransferFeesDiscount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party that the transfer fee discount applies to." - }, - "asset": { - "type": "string", - "description": "Asset that the transfer fee discount is relevant to." - }, - "amount": { - "type": "string", - "description": "Amount that the transfer fee was discounted by." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the discount was first available." - } - } - }, - "v1TransferStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_DONE", - "STATUS_REJECTED", - "STATUS_STOPPED", - "STATUS_CANCELLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user" - }, - "v1TxErrorEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "errMsg": { - "type": "string", - "title": "Error message describing what went wrong" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - } - } - }, - "v1TxVersion": { - "type": "string", - "enum": [ - "TX_VERSION_UNSPECIFIED", - "TX_VERSION_V2", - "TX_VERSION_V3" - ], - "default": "TX_VERSION_UNSPECIFIED", - "description": "Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks." - }, - "v1UndelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to undelegate stake from." - }, - "amount": { - "type": "string", - "description": "Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed." - }, - "method": { - "$ref": "#/definitions/v1UndelegateSubmissionMethod", - "description": "Method of delegation." - } - }, - "description": "Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node." - }, - "v1UndelegateSubmissionMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_NOW", - "METHOD_AT_END_OF_EPOCH" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch." - }, - "v1UpdateMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market to change margin mode for." - }, - "mode": { - "$ref": "#/definitions/UpdateMarginModeMode", - "description": "Margin mode to use." - }, - "marginFactor": { - "type": "string", - "title": "Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside" - } - } - }, - "v1UpdatePartyProfile": { - "type": "object", - "properties": { - "alias": { - "type": "string", - "description": "Alias given to the party. It must be unique network-wide." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Freeform data to associate to the party.\nSupport a maximum of 10 entries." - } - }, - "description": "Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed." - }, - "v1UpdateReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the referral set to update." - }, - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1UpdateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged." - }, - "v1UpdateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "New name of the team." - }, - "teamUrl": { - "type": "string", - "description": "New link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "New link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1ValidatorRankingEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "stakeScore": { - "type": "string", - "title": "Stake based score - no anti-whaling" - }, - "performanceScore": { - "type": "string", - "title": "Performance base score" - }, - "rankingScore": { - "type": "string", - "title": "Final score" - }, - "previousStatus": { - "type": "string", - "title": "Status of the validator in the previous epoch" - }, - "nextStatus": { - "type": "string", - "title": "Status of the validator in the next epoch" - }, - "epochSeq": { - "type": "string", - "title": "Epoch seq for which the status is valid" - }, - "tmVotingPower": { - "type": "integer", - "format": "int64", - "title": "Tendermint voting power of the validator" - } - }, - "title": "Event that explains the status of the validator for the coming epoch" - }, - "v1ValidatorScoreEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "validatorScore": { - "type": "string" - }, - "normalisedScore": { - "type": "string" - }, - "validatorPerformance": { - "type": "string" - }, - "rawValidatorScore": { - "type": "string" - }, - "validatorStatus": { - "type": "string" - }, - "multisigScore": { - "type": "string" - } - }, - "title": "ValidatorScoreEvent is the score a validator gets for a given epoch" - }, - "v1ValidatorUpdate": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the validator node" - }, - "vegaPubKey": { - "type": "string", - "title": "Vega public key of validator node" - }, - "ethereumAddress": { - "type": "string", - "title": "Ethereum public key of validator node" - }, - "tmPubKey": { - "type": "string", - "title": "Public key of Tendermint" - }, - "infoUrl": { - "type": "string", - "title": "URL with more info on the node" - }, - "country": { - "type": "string", - "title": "Country code (ISO 3166-1 alpha-2) for the location of the node" - }, - "name": { - "type": "string", - "title": "Name of the validator" - }, - "avatarUrl": { - "type": "string", - "title": "AvatarURL of the validator" - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "title": "Vega public key derivation index" - }, - "added": { - "type": "boolean", - "title": "Flag indicating if the validator has been added to or removed from vega" - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the announced pending node will start participating in the network" - }, - "submitterAddress": { - "type": "string", - "title": "Ethereum public key being used as the submitter to allow automatic signature generation" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the node was announced or removed from the network" - } - }, - "title": "Validator update event contains information about validator node" - }, - "v1VestingBalancesSummary": { - "type": "object", - "properties": { - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these balances are valid." - }, - "partiesVestingSummary": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingSummary" - }, - "description": "Parties' summaries." - } - }, - "title": "Summary of the vesting and locked balances for an epoch" - }, - "v1VestingStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the vesting statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingStats" - }, - "description": "All parties stats." - } - }, - "description": "Stats of all parties invested in the vesting program." - }, - "v1VolumeDiscountProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the volume discount program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1VolumeDiscountProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "Volume discount program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program started." - } - } - }, - "v1VolumeDiscountProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "The updated volume discount program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program was updated." - } - } - }, - "v1VolumeDiscountStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVolumeDiscountStats" - }, - "description": "All parties' stats." - } - }, - "description": "Stats of all parties eligible for volume discount." - }, - "v1VoteSpamStatistic": { - "type": "object", - "properties": { - "proposal": { - "type": "string", - "description": "Unique ID of the proposal being voted on by the party." - }, - "countForEpoch": { - "type": "string", - "format": "uint64", - "title": "Current vote count received from the party for the given proposal during this epoch" - }, - "minTokensRequired": { - "type": "string", - "title": "Effective minimum number of tokens required to vote on the proposal" - } - }, - "description": "Vote statistics for the voting spam policies\nwhich are calculated as a ratio of the total votes\nthat have been rejected." - }, - "v1VoteSpamStatistics": { - "type": "object", - "properties": { - "statistics": { - "type": "array", - "items": { - "$ref": "#/definitions/v1VoteSpamStatistic" - }, - "title": "List of statistics for proposals voted on by the party" - }, - "maxForEpoch": { - "type": "string", - "format": "uint64", - "title": "Maximum number of votes per proposal allowed in an epoch" - }, - "bannedUntil": { - "type": "string", - "title": "If blocked the timestamp when the party will be unblocked as RFC3339Nano" - } - }, - "title": "Voting statistics by proposal for a given party for the current epoch" - }, - "v1VoteSubmission": { - "type": "object", - "properties": { - "proposalId": { - "type": "string", - "description": "Submit vote for the specified proposal ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Actual value of the vote." - } - }, - "description": "Command that allows a token holder to vote for or against an active governance proposal." - }, - "v1WithdrawSubmission": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "description": "Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to be withdrawn." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Details specific to the foreign chain, such as the receiver address." - } - }, - "description": "Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge." - }, - "vegaAccount": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique account ID, used internally by Vega." - }, - "owner": { - "type": "string", - "description": "Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions." - }, - "balance": { - "type": "string", - "description": "Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative." - }, - "asset": { - "type": "string", - "description": "Asset ID for the account." - }, - "marketId": { - "type": "string", - "description": "Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type related to this account." - } - }, - "title": "Represents an account for an asset on Vega for a particular owner or party" - }, - "vegaAccountDetails": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID of the asset for this account." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the account." - }, - "owner": { - "type": "string", - "description": "Not specified if network account." - }, - "marketId": { - "type": "string", - "description": "Not specified if account is not related to a market." - } - } - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAsset": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Internal identifier of the asset." - }, - "details": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Definition of the external source for this asset." - }, - "status": { - "$ref": "#/definitions/vegaAssetStatus", - "description": "Status of the asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaAssetStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PROPOSED", - "STATUS_REJECTED", - "STATUS_PENDING_LISTING", - "STATUS_ENABLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network" - }, - "vegaAuctionDuration": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "format": "int64", - "description": "Duration of the auction in seconds." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Target uncrossing trading volume." - } - }, - "title": "Auction duration is used to configure 3 auction periods:\n1. `duration \u003e 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume \u003e 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration \u003e 0`, `volume \u003e 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume" - }, - "vegaAuctionTrigger": { - "type": "string", - "enum": [ - "AUCTION_TRIGGER_UNSPECIFIED", - "AUCTION_TRIGGER_BATCH", - "AUCTION_TRIGGER_OPENING", - "AUCTION_TRIGGER_PRICE", - "AUCTION_TRIGGER_LIQUIDITY", - "AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET", - "AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS", - "AUCTION_TRIGGER_GOVERNANCE_SUSPENSION" - ], - "default": "AUCTION_TRIGGER_UNSPECIFIED", - "description": "- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance", - "title": "Auction triggers indicate what condition triggered an auction (if market is in auction mode)" - }, - "vegaBatchProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "proposalParams": { - "$ref": "#/definitions/vegaProposalParameters", - "description": "Specific parameters defining the proposal's characteristics used for validation." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal on Vega" - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaChainStatus": { - "type": "string", - "enum": [ - "CHAIN_STATUS_UNSPECIFIED", - "CHAIN_STATUS_DISCONNECTED", - "CHAIN_STATUS_REPLAYING", - "CHAIN_STATUS_CONNECTED" - ], - "default": "CHAIN_STATUS_UNSPECIFIED", - "description": "- CHAIN_STATUS_UNSPECIFIED: Default value, always invalid\n - CHAIN_STATUS_DISCONNECTED: Blockchain is disconnected\n - CHAIN_STATUS_REPLAYING: Blockchain is replaying historic transactions\n - CHAIN_STATUS_CONNECTED: Blockchain is connected and receiving transactions", - "title": "Vega blockchain status as reported by the node the caller is connected to" - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpec": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Hash generated from the DataSpec data." - }, - "createdAt": { - "type": "string", - "format": "int64", - "title": "Creation date and time" - }, - "updatedAt": { - "type": "string", - "format": "int64", - "title": "Last Updated timestamp" - }, - "data": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "status": { - "$ref": "#/definitions/vegaDataSourceSpecStatus", - "title": "Status describes the status of the data source spec" - } - }, - "description": "Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_DEACTIVATED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.", - "title": "Status describe the status of the data source spec" - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDeposit": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the deposit." - }, - "status": { - "$ref": "#/definitions/vegaDepositStatus", - "description": "Status of the deposit." - }, - "partyId": { - "type": "string", - "description": "Party ID of the user initiating the deposit." - }, - "asset": { - "type": "string", - "description": "Vega asset targeted by this deposit." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction from the foreign chain." - }, - "creditedTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the Vega account was updated with the deposit." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the deposit was created on the Vega network." - } - }, - "title": "Deposit on to the Vega network" - }, - "vegaDepositStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_CANCELLED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Deposit is being processed by the network\n - STATUS_CANCELLED: Deposit has been cancelled by the network\n - STATUS_FINALIZED: Deposit has been finalised and accounts have been updated", - "title": "Status of the deposit" - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaEpochAction": { - "type": "string", - "enum": [ - "EPOCH_ACTION_UNSPECIFIED", - "EPOCH_ACTION_START", - "EPOCH_ACTION_END" - ], - "default": "EPOCH_ACTION_UNSPECIFIED", - "description": "- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.", - "title": "What epoch action has occurred" - }, - "vegaErc20WithdrawExt": { - "type": "object", - "properties": { - "receiverAddress": { - "type": "string", - "description": "Address into which the bridge will release the funds." - } - }, - "title": "Extension of data required for the withdraw submissions" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaExternalDataSourceSpec": { - "type": "object", - "properties": { - "spec": { - "$ref": "#/definitions/vegaDataSourceSpec" - } - } - }, - "vegaFee": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places." - }, - "infrastructureFee": { - "type": "string", - "description": "Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places." - }, - "liquidityFee": { - "type": "string", - "description": "Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places." - }, - "makerFeeVolumeDiscount": { - "type": "string", - "description": "Volume discounts.\nDiscount on maker fee based on the taker volume." - }, - "infrastructureFeeVolumeDiscount": { - "type": "string", - "description": "Discount on infrastructure fee based on the taker volume." - }, - "liquidityFeeVolumeDiscount": { - "type": "string", - "description": "Discount on liquidity fee basedo on taker volume." - }, - "makerFeeReferrerDiscount": { - "type": "string", - "description": "Referrer discounts.\nDiscount on maker fee for eligible referrer." - }, - "infrastructureFeeReferrerDiscount": { - "type": "string", - "description": "Discount on infrastructure fee for eligible referrer." - }, - "liquidityFeeReferrerDiscount": { - "type": "string", - "description": "Discount on liquidity fee for eligible referrer." - } - }, - "title": "Represents any fees paid by a party, resulting from a trade" - }, - "vegaFeeFactors": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Market maker fee charged network wide." - }, - "infrastructureFee": { - "type": "string", - "description": "Infrastructure fee charged network wide for staking and governance." - }, - "liquidityFee": { - "type": "string", - "description": "Liquidity fee applied per market for market making." - } - }, - "title": "Fee factors definition" - }, - "vegaFees": { - "type": "object", - "properties": { - "factors": { - "$ref": "#/definitions/vegaFeeFactors", - "description": "Fee factors." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Liquidity fee settings for the market describing how the fee was calculated." - } - }, - "title": "Fees definition" - }, - "vegaFuture": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the future." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the settlement data source filter." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the trading termination data source filter." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data spec and the data source." - } - }, - "title": "Future product definition" - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIcebergOrder": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that will be made visible if the iceberg order is replenished after trading." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount." - }, - "reservedRemaining": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed." - } - }, - "title": "Details of an iceberg order" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique instrument ID." - }, - "code": { - "type": "string", - "description": "Code for the instrument." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - }, - "metadata": { - "$ref": "#/definitions/vegaInstrumentMetadata", - "description": "Collection of instrument meta-data." - }, - "future": { - "$ref": "#/definitions/vegaFuture", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpot", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetual", - "description": "Perpetual." - } - }, - "title": "Instrument definition" - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaInstrumentMetadata": { - "type": "object", - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of 0 or more tags." - } - }, - "title": "Instrument metadata definition" - }, - "vegaLedgerEntry": { - "type": "object", - "properties": { - "fromAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer from." - }, - "toAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer to." - }, - "amount": { - "type": "string", - "description": "Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "type": { - "$ref": "#/definitions/vegaTransferType", - "description": "Transfer type for this entry." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in nanoseconds of when the ledger entry was created." - }, - "fromAccountBalance": { - "type": "string", - "description": "Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "toAccountBalance": { - "type": "string", - "description": "Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "transferId": { - "type": "string", - "description": "Transfer ID the ledger entry relates to." - } - }, - "title": "Represents a ledger entry on Vega" - }, - "vegaLedgerMovement": { - "type": "object", - "properties": { - "entries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerEntry" - }, - "description": "All the entries for these ledger movements." - }, - "balances": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPostTransferBalance" - }, - "description": "Resulting balances once the ledger movement are applied." - } - } - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquidityOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Pegged reference point for the order." - }, - "proportion": { - "type": "integer", - "format": "int64", - "description": "Relative proportion of the commitment to be allocated at a price level." - }, - "offset": { - "type": "string", - "description": "Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places." - } - }, - "title": "Represents a liquidity order" - }, - "vegaLiquidityOrderReference": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Unique ID of the pegged order generated to fulfil this liquidity order." - }, - "liquidityOrder": { - "$ref": "#/definitions/vegaLiquidityOrder", - "description": "Liquidity order from the original submission." - } - }, - "title": "Pair of a liquidity order and the ID of the generated order" - }, - "vegaLiquidityProviderFeeShare": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "equityLikeShare": { - "type": "string", - "description": "Share own by this liquidity provider." - }, - "averageEntryValuation": { - "type": "string", - "description": "Average entry valuation of the liquidity provider for the market." - }, - "averageScore": { - "type": "string", - "description": "Average liquidity score." - }, - "virtualStake": { - "type": "string", - "description": "The virtual stake of this liquidity provider." - } - }, - "title": "Equity like share of liquidity fee for each liquidity provider" - }, - "vegaLiquidityProviderSLA": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "currentEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP meets the commitment during the current epoch." - }, - "lastEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP met the commitment in the previous epoch." - }, - "lastEpochFeePenalty": { - "type": "string", - "description": "Indicates the fee penalty amount applied in the previous epoch." - }, - "lastEpochBondPenalty": { - "type": "string", - "description": "Shows the bond penalties from past epochs." - }, - "hysteresisPeriodFeePenalties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Determines how the fee penalties from past epochs affect future fee revenue." - }, - "requiredLiquidity": { - "type": "string", - "description": "Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range." - }, - "notionalVolumeBuys": { - "type": "string", - "description": "Notional volume of orders within the range provided on the buy side of the book." - }, - "notionalVolumeSells": { - "type": "string", - "description": "Notional volume of orders within the range provided on the sell side of the book." - } - }, - "title": "SLA performance for each liquidity provider" - }, - "vegaLiquidityProvision": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the liquidity provision." - }, - "partyId": { - "type": "string", - "description": "Unique party ID for the creator of the provision." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was updated." - }, - "marketId": { - "type": "string", - "description": "Market ID for the liquidity provision." - }, - "commitmentAmount": { - "type": "string", - "description": "Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "sells": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity sell orders to meet the liquidity provision obligation." - }, - "buys": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity buy orders to meet the liquidity provision obligation." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version of this liquidity provision." - }, - "status": { - "$ref": "#/definitions/vegaLiquidityProvisionStatus", - "description": "Status of this liquidity provision." - }, - "reference": { - "type": "string", - "description": "Reference shared between this liquidity provision and all its orders." - } - }, - "title": "Liquidity provider commitment" - }, - "vegaLiquidityProvisionStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_STOPPED", - "STATUS_CANCELLED", - "STATUS_REJECTED", - "STATUS_UNDEPLOYED", - "STATUS_PENDING" - ], - "default": "STATUS_UNSPECIFIED", - "description": "Status of a liquidity provision.\n\n - STATUS_UNSPECIFIED: Always invalid\n - STATUS_ACTIVE: Liquidity provision is active\n - STATUS_STOPPED: Liquidity provision was stopped by the network\n - STATUS_CANCELLED: Liquidity provision was cancelled by the liquidity provider\n - STATUS_REJECTED: Liquidity provision was invalid and got rejected\n - STATUS_UNDEPLOYED: Liquidity provision is valid and accepted by network, but orders aren't deployed\n - STATUS_PENDING: Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties." - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarginCalculator": { - "type": "object", - "properties": { - "scalingFactors": { - "$ref": "#/definitions/vegaScalingFactors", - "description": "Scaling factors for margin calculation." - } - }, - "title": "Margin Calculator definition" - }, - "vegaMarginLevels": { - "type": "object", - "properties": { - "maintenanceMargin": { - "type": "string", - "description": "Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "searchLevel": { - "type": "string", - "description": "Margin search level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "initialMargin": { - "type": "string", - "description": "Initial margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "collateralReleaseLevel": { - "type": "string", - "description": "Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "partyId": { - "type": "string", - "description": "Party ID for whom the margin levels apply." - }, - "marketId": { - "type": "string", - "description": "Market ID for which the margin levels apply." - }, - "asset": { - "type": "string", - "description": "Asset ID for which the margin levels apply." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the ledger entry was created." - }, - "orderMargin": { - "type": "string", - "description": "Margin required to cover orders in isolated margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Margin mode for the party, cross margin or isolated margin." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor, relevant only for isolated margin, 0 otherwise." - } - }, - "title": "Represents the margin levels for a party on a market at a given time" - }, - "vegaMarginMode": { - "type": "string", - "enum": [ - "MARGIN_MODE_UNSPECIFIED", - "MARGIN_MODE_CROSS_MARGIN", - "MARGIN_MODE_ISOLATED_MARGIN" - ], - "default": "MARGIN_MODE_UNSPECIFIED", - "title": "- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "vegaMarket": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the market." - }, - "tradableInstrument": { - "$ref": "#/definitions/vegaTradableInstrument", - "description": "Tradable instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`." - }, - "fees": { - "$ref": "#/definitions/vegaFees", - "description": "Fees configuration that apply to the market." - }, - "openingAuction": { - "$ref": "#/definitions/vegaAuctionDuration", - "description": "Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)." - }, - "priceMonitoringSettings": { - "$ref": "#/definitions/vegaPriceMonitoringSettings", - "description": "PriceMonitoringSettings for the market." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "LiquidityMonitoringParameters for the market." - }, - "tradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current mode of execution of the market." - }, - "state": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "marketTimestamps": { - "$ref": "#/definitions/vegaMarketTimestamps", - "description": "Timestamps for when the market state changes." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "The number of decimal places for a position." - }, - "lpPriceRange": { - "type": "string", - "description": "Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "parentMarketId": { - "type": "string", - "title": "ID of the market this market succeeds" - }, - "insurancePoolFraction": { - "type": "string", - "description": "The fraction of the parent market's insurance pool that this market inherits; range 0 through 1." - }, - "successorMarketId": { - "type": "string", - "description": "ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled." - }, - "liquiditySlaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Liquidity SLA parameters for the market." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy used by this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price calculation configuration." - } - }, - "title": "Market definition" - }, - "vegaMarketData": { - "type": "object", - "properties": { - "markPrice": { - "type": "string", - "description": "Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidPrice": { - "type": "string", - "description": "Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestOfferPrice": { - "type": "string", - "description": "Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places." - }, - "bestOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestStaticBidPrice": { - "type": "string", - "description": "Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticBidVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static bid price excluding pegged orders." - }, - "bestStaticOfferPrice": { - "type": "string", - "description": "Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static offer price, excluding pegged orders." - }, - "midPrice": { - "type": "string", - "description": "Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "staticMidPrice": { - "type": "string", - "description": "Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "market": { - "type": "string", - "title": "Market ID for the data" - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which this mark price was relevant." - }, - "openInterest": { - "type": "string", - "format": "uint64", - "description": "Sum of the size of all positions greater than zero on the market." - }, - "auctionEnd": { - "type": "string", - "format": "int64", - "description": "Time in seconds until the end of the auction (zero if currently not in auction period)." - }, - "auctionStart": { - "type": "string", - "format": "int64", - "description": "Time until next auction, or start time of the current auction if market is in auction period." - }, - "indicativePrice": { - "type": "string", - "description": "Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places." - }, - "indicativeVolume": { - "type": "string", - "format": "uint64", - "description": "Indicative volume (zero if not in auction)." - }, - "marketTradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current trading mode for the market." - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market is in an auction trading mode, this field indicates what triggered the auction." - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market auction is extended, this field indicates what caused the extension." - }, - "targetStake": { - "type": "string", - "description": "Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "suppliedStake": { - "type": "string", - "description": "Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "priceMonitoringBounds": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringBounds" - }, - "description": "One or more price monitoring bounds for the current timestamp." - }, - "marketValueProxy": { - "type": "string", - "description": "Market value proxy." - }, - "liquidityProviderFeeShare": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare" - }, - "description": "Equity like share of liquidity fee for each liquidity provider." - }, - "marketState": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "nextMarkToMarket": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the next mark-to-market calculation will occur." - }, - "lastTradedPrice": { - "type": "string", - "description": "Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places." - }, - "marketGrowth": { - "type": "string", - "description": "Market growth at the last market time window." - }, - "productData": { - "$ref": "#/definitions/vegaProductData", - "description": "Data related to the particular product type of the market." - }, - "liquidityProviderSla": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderSLA" - }, - "description": "SLA performance for each liquidity provider." - }, - "nextNetworkCloseout": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the market will next submit a trade to reduce its position." - }, - "markPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the mark price." - } - }, - "title": "Represents data generated by a market when open" - }, - "vegaMarketState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_PROPOSED", - "STATE_REJECTED", - "STATE_PENDING", - "STATE_CANCELLED", - "STATE_ACTIVE", - "STATE_SUSPENDED", - "STATE_CLOSED", - "STATE_TRADING_TERMINATED", - "STATE_SETTLED", - "STATE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance", - "title": "Current state of the market" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMarketTimestamps": { - "type": "object", - "properties": { - "proposed": { - "type": "string", - "format": "int64", - "description": "Time when the market is first proposed." - }, - "pending": { - "type": "string", - "format": "int64", - "description": "Time when the market has been voted in and began its opening auction." - }, - "open": { - "type": "string", - "format": "int64", - "description": "Time when the market has left the opening auction and is ready to accept trades." - }, - "close": { - "type": "string", - "format": "int64", - "description": "Time when the market closed." - } - }, - "title": "Time stamps for important times about creating, enacting etc the market" - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkLimits": { - "type": "object", - "properties": { - "canProposeMarket": { - "type": "boolean", - "description": "Are market proposals allowed at this point in time." - }, - "canProposeAsset": { - "type": "boolean", - "description": "Are asset proposals allowed at this point in time." - }, - "proposeMarketEnabled": { - "type": "boolean", - "description": "Are market proposals enabled on this chain." - }, - "proposeAssetEnabled": { - "type": "boolean", - "description": "Are asset proposals enabled on this chain." - }, - "genesisLoaded": { - "type": "boolean", - "description": "True once the genesis file is loaded." - }, - "proposeMarketEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set)." - }, - "proposeAssetEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set)." - }, - "canProposeSpotMarket": { - "type": "boolean", - "description": "Are spot market proposals allowed at this point in time." - }, - "canProposePerpetualMarket": { - "type": "boolean", - "description": "Are perpetual market proposals allowed at this point in time." - } - }, - "title": "Network limits, defined in the genesis file" - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaOracleData": { - "type": "object", - "properties": { - "externalData": { - "$ref": "#/definitions/v1ExternalData" - } - } - }, - "vegaOracleSpec": { - "type": "object", - "properties": { - "externalDataSourceSpec": { - "$ref": "#/definitions/vegaExternalDataSourceSpec" - } - }, - "title": "Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*" - }, - "vegaOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID generated for the order." - }, - "marketId": { - "type": "string", - "description": "Market ID for the order." - }, - "partyId": { - "type": "string", - "description": "Party ID for the order." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Side for the order, e.g. SIDE_BUY or SIDE_SELL." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of contracts." - }, - "remaining": { - "type": "string", - "format": "uint64", - "description": "Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "title": "Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce" - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type for the order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the order was created at, in nanoseconds." - }, - "status": { - "$ref": "#/definitions/vegaOrderStatus", - "description": "Current status of the order." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order will expire." - }, - "reference": { - "type": "string", - "description": "Reference given for the order." - }, - "reason": { - "$ref": "#/definitions/vegaOrderError", - "description": "Futher details for why an order with status `STATUS_REJECTED` was rejected." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order was last updated." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version for the order, initial value is version 1 and is incremented after each successful amend." - }, - "batchId": { - "type": "string", - "format": "uint64", - "description": "Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details, used only if the order represents a pegged order." - }, - "liquidityProvisionId": { - "type": "string", - "description": "Set if the order was created as part of a liquidity provision, will be empty if not." - }, - "postOnly": { - "type": "boolean", - "description": "Only valid for Limit orders. Cannot be True at the same time as Reduce-Only." - }, - "reduceOnly": { - "type": "boolean", - "description": "Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0." - }, - "icebergOrder": { - "$ref": "#/definitions/vegaIcebergOrder", - "title": "Details of an iceberg order" - } - }, - "title": "Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties" - }, - "vegaOrderError": { - "type": "string", - "enum": [ - "ORDER_ERROR_UNSPECIFIED", - "ORDER_ERROR_INVALID_MARKET_ID", - "ORDER_ERROR_INVALID_ORDER_ID", - "ORDER_ERROR_OUT_OF_SEQUENCE", - "ORDER_ERROR_INVALID_REMAINING_SIZE", - "ORDER_ERROR_TIME_FAILURE", - "ORDER_ERROR_REMOVAL_FAILURE", - "ORDER_ERROR_INVALID_EXPIRATION_DATETIME", - "ORDER_ERROR_INVALID_ORDER_REFERENCE", - "ORDER_ERROR_EDIT_NOT_ALLOWED", - "ORDER_ERROR_AMEND_FAILURE", - "ORDER_ERROR_NOT_FOUND", - "ORDER_ERROR_INVALID_PARTY_ID", - "ORDER_ERROR_MARKET_CLOSED", - "ORDER_ERROR_MARGIN_CHECK_FAILED", - "ORDER_ERROR_MISSING_GENERAL_ACCOUNT", - "ORDER_ERROR_INTERNAL_ERROR", - "ORDER_ERROR_INVALID_SIZE", - "ORDER_ERROR_INVALID_PERSISTENCE", - "ORDER_ERROR_INVALID_TYPE", - "ORDER_ERROR_SELF_TRADING", - "ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES", - "ORDER_ERROR_INCORRECT_MARKET_TYPE", - "ORDER_ERROR_INVALID_TIME_IN_FORCE", - "ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION", - "ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING", - "ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT", - "ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT", - "ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT", - "ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC", - "ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION", - "ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION", - "ORDER_ERROR_MUST_BE_LIMIT_ORDER", - "ORDER_ERROR_MUST_BE_GTT_OR_GTC", - "ORDER_ERROR_WITHOUT_REFERENCE_PRICE", - "ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO", - "ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO", - "ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE", - "ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER", - "ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS", - "ORDER_ERROR_TOO_MANY_PEGGED_ORDERS", - "ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE", - "ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION", - "ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED", - "ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE" - ], - "default": "ORDER_ERROR_UNSPECIFIED", - "description": "- ORDER_ERROR_UNSPECIFIED: Default value, no error reported\n - ORDER_ERROR_INVALID_MARKET_ID: Order was submitted for a market that does not exist\n - ORDER_ERROR_INVALID_ORDER_ID: Order was submitted with an invalid ID\n - ORDER_ERROR_OUT_OF_SEQUENCE: Order was amended with a sequence number that was not previous version + 1\n - ORDER_ERROR_INVALID_REMAINING_SIZE: Order was amended with an invalid remaining size (e.g. remaining greater than total size)\n - ORDER_ERROR_TIME_FAILURE: Node was unable to get Vega (blockchain) time\n - ORDER_ERROR_REMOVAL_FAILURE: Failed to remove an order from the book\n - ORDER_ERROR_INVALID_EXPIRATION_DATETIME: Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid\n - ORDER_ERROR_INVALID_ORDER_REFERENCE: Order was submitted or amended with an invalid reference field\n - ORDER_ERROR_EDIT_NOT_ALLOWED: Order amend was submitted for an order field that cannot not be amended (e.g. order ID)\n - ORDER_ERROR_AMEND_FAILURE: Amend failure because amend details do not match original order\n - ORDER_ERROR_NOT_FOUND: Order not found in an order book or store\n - ORDER_ERROR_INVALID_PARTY_ID: Order was submitted with an invalid or missing party ID\n - ORDER_ERROR_MARKET_CLOSED: Order was submitted for a market that has closed\n - ORDER_ERROR_MARGIN_CHECK_FAILED: Order was submitted, but the party did not have enough collateral to cover the order\n - ORDER_ERROR_MISSING_GENERAL_ACCOUNT: Order was submitted, but the party did not have an account for this asset\n - ORDER_ERROR_INTERNAL_ERROR: Unspecified internal error\n - ORDER_ERROR_INVALID_SIZE: Order was submitted with an invalid or missing size (e.g. 0)\n - ORDER_ERROR_INVALID_PERSISTENCE: Order was submitted with an invalid persistence for its type\n - ORDER_ERROR_INVALID_TYPE: Order was submitted with an invalid type field\n - ORDER_ERROR_SELF_TRADING: Order was stopped as it would have traded with another order submitted from the same party\n - ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES: Order was submitted, but the party did not have enough collateral to cover the fees for the order\n - ORDER_ERROR_INCORRECT_MARKET_TYPE: Order was submitted with an incorrect or invalid market type\n - ORDER_ERROR_INVALID_TIME_IN_FORCE: Order was submitted with invalid time in force\n - ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION: Good For Normal order has reached the market when it is in auction mode\n - ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING: Good For Auction order has reached the market when it is in continuous trading mode\n - ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT: Attempt to amend order to GTT without ExpiryAt\n - ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT: Attempt to amend ExpiryAt to a value before CreatedAt\n - ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT: Attempt to amend to GTC without an ExpiryAt value\n - ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC: Amending to FOK or IOC is invalid\n - ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN: Amending to GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN: Amending from GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION: IOC orders are not allowed during auction\n - ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION: FOK orders are not allowed during auction\n - ORDER_ERROR_MUST_BE_LIMIT_ORDER: Pegged orders must be LIMIT orders\n - ORDER_ERROR_MUST_BE_GTT_OR_GTC: Pegged orders can only have TIF GTC or GTT\n - ORDER_ERROR_WITHOUT_REFERENCE_PRICE: Pegged order must have a reference price\n - ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE: Buy pegged order cannot reference best ask price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO: Pegged order offset must be \u003e= 0\n - ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE: Sell pegged order cannot reference best bid price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO: Pegged order offset must be \u003e zero\n - ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE: Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)\n - ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER: Cannot amend details of a non pegged details\n - ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER: Could not re-price a pegged order because a market price is unavailable\n - ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER: It is not possible to amend the price of an existing pegged order\n - ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS: FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds\n - ORDER_ERROR_TOO_MANY_PEGGED_ORDERS: Unable to submit pegged order, temporarily too many pegged orders across all markets\n - ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE: Post order would trade\n - ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION: Post order would trade\n - ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED: Isolated margin check failed\n - ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE: In isolated margin pegged orders are rejected", - "title": "OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`" - }, - "vegaOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_EXPIRED", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_FILLED", - "STATUS_REJECTED", - "STATUS_PARTIALLY_FILLED", - "STATUS_PARKED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)", - "title": "Status values for an order" - }, - "vegaOrderType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LIMIT", - "TYPE_MARKET", - "TYPE_NETWORK" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)", - "title": "Type values for an order" - }, - "vegaParty": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the party, typically represented by a public key." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "title": "Party represents an entity who wishes to trade on or query a Vega network" - }, - "vegaPartyProfile": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID associated to the profile." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "description": "Holds metadata associated to a party." - }, - "vegaPeggedOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Price point the order is linked to." - }, - "offset": { - "type": "string", - "description": "Offset from the price reference." - } - }, - "title": "Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading" - }, - "vegaPeggedReference": { - "type": "string", - "enum": [ - "PEGGED_REFERENCE_UNSPECIFIED", - "PEGGED_REFERENCE_MID", - "PEGGED_REFERENCE_BEST_BID", - "PEGGED_REFERENCE_BEST_ASK" - ], - "default": "PEGGED_REFERENCE_UNSPECIFIED", - "description": "- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference", - "title": "Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point" - }, - "vegaPerpetual": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the perpetual." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfig": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Optional configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product definition" - }, - "vegaPerpetualData": { - "type": "object", - "properties": { - "fundingPayment": { - "type": "string", - "description": "Current funding payment for the in-progress funding period." - }, - "fundingRate": { - "type": "string", - "description": "Current funding rate for the in-progress funding period." - }, - "internalTwap": { - "type": "string", - "description": "Time-weighted-average the internal data-points for the in-progress funding period." - }, - "externalTwap": { - "type": "string", - "description": "Time-weighted-average the external data points for the in-progress funding period." - }, - "seqNum": { - "type": "string", - "format": "uint64", - "title": "Funding period sequence number" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Funding period start time" - }, - "indexPrice": { - "type": "string", - "description": "The index price used for perps." - }, - "nextIndexPriceCalc": { - "type": "string", - "format": "int64", - "description": "The next time the index price is calculated for perps." - }, - "indexPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the index price (perps only)." - } - }, - "description": "Represents market data specific to a perpetual market." - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPostTransferBalance": { - "type": "object", - "properties": { - "account": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "Account relating to the transfer." - }, - "balance": { - "type": "string", - "description": "Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Represents the balance for an account during a transfer" - }, - "vegaPriceMonitoringBounds": { - "type": "object", - "properties": { - "minValidPrice": { - "type": "string", - "description": "Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "maxValidPrice": { - "type": "string", - "description": "Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "trigger": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger", - "description": "Price monitoring trigger associated with the bounds." - }, - "referencePrice": { - "type": "string", - "description": "Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places." - } - }, - "title": "Represents a list of valid (at the current timestamp) price ranges per associated trigger" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringSettings": { - "type": "object", - "properties": { - "parameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Specifies price monitoring parameters to be used for price monitoring purposes." - } - }, - "title": "PriceMonitoringSettings contains the settings for price monitoring" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProductData": { - "type": "object", - "properties": { - "perpetualData": { - "$ref": "#/definitions/vegaPerpetualData" - } - }, - "description": "Represents market data specific to a particular product type." - }, - "vegaProposal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique proposal ID." - }, - "reference": { - "type": "string", - "description": "Proposal reference." - }, - "partyId": { - "type": "string", - "description": "Party ID i.e. public key of the party submitting the proposal." - }, - "state": { - "$ref": "#/definitions/vegaProposalState", - "description": "Current state of the proposal, i.e. open, passed, failed etc." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term." - }, - "reason": { - "$ref": "#/definitions/vegaProposalError", - "description": "Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses." - }, - "errorDetails": { - "type": "string", - "description": "Detailed error associated to the reason." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - }, - "requiredParticipation": { - "type": "string", - "description": "Required vote participation for this proposal." - }, - "requiredMajority": { - "type": "string", - "description": "Required majority for this proposal." - }, - "requiredLiquidityProviderParticipation": { - "type": "string", - "description": "Required participation from liquidity providers, optional but is required for market update proposal." - }, - "requiredLiquidityProviderMajority": { - "type": "string", - "description": "Required majority from liquidity providers, optional but is required for market update proposal." - }, - "batchTerms": { - "$ref": "#/definitions/vegaBatchProposalTerms", - "description": "Batch proposal terms." - }, - "batchId": { - "type": "string", - "description": "ID of a batch proposal that this proposal is part of." - } - }, - "title": "Governance proposal" - }, - "vegaProposalError": { - "type": "string", - "enum": [ - "PROPOSAL_ERROR_UNSPECIFIED", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE", - "PROPOSAL_ERROR_ENACT_TIME_TOO_SOON", - "PROPOSAL_ERROR_ENACT_TIME_TOO_LATE", - "PROPOSAL_ERROR_INSUFFICIENT_TOKENS", - "PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY", - "PROPOSAL_ERROR_NO_PRODUCT", - "PROPOSAL_ERROR_UNSUPPORTED_PRODUCT", - "PROPOSAL_ERROR_NO_TRADING_MODE", - "PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE", - "PROPOSAL_ERROR_NODE_VALIDATION_FAILED", - "PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD", - "PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS", - "PROPOSAL_ERROR_INVALID_ASSET", - "PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS", - "PROPOSAL_ERROR_NO_RISK_PARAMETERS", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE", - "PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE", - "PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET", - "PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT", - "PROPOSAL_ERROR_INVALID_RISK_PARAMETER", - "PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_INVALID_ASSET_DETAILS", - "PROPOSAL_ERROR_UNKNOWN_TYPE", - "PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE", - "PROPOSAL_ERROR_INVALID_FREEFORM", - "PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE", - "PROPOSAL_ERROR_INVALID_MARKET", - "PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES", - "PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS", - "PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE", - "PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_INVALID_SPOT", - "PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED", - "PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE", - "PROPOSAL_ERROR_INVALID_SLA_PARAMS", - "PROPOSAL_ERROR_MISSING_SLA_PARAMS", - "PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT", - "PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM", - "PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED" - ], - "default": "PROPOSAL_ERROR_UNSPECIFIED", - "description": "- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation \u003c Closing \u003c Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined", - "title": "List of possible errors that can cause a proposal to be in state rejected or failed" - }, - "vegaProposalParameters": { - "type": "object", - "properties": { - "minClose": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before a proposal can be closed for voting." - }, - "maxClose": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time that a proposal can be open for voting." - }, - "minEnact": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before an enacted proposal takes effect." - }, - "maxEnact": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time before an enacted proposal must take effect." - }, - "requiredParticipation": { - "type": "string", - "description": "Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid." - }, - "requiredMajority": { - "type": "string", - "description": "Specifies the required percentage of votes a proposal needs to be approved." - }, - "minProposerBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a proposer must hold to initiate a proposal." - }, - "minVoterBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a voter must hold to participate in voting." - }, - "requiredParticipationLp": { - "type": "string", - "description": "Specifies the required percentage of participation from liquidity providers for the proposal to be valid." - }, - "requiredMajorityLp": { - "type": "string", - "description": "Specifies the required majority percentage from liquidity providers for a proposal to be approved." - }, - "minEquityLikeShare": { - "type": "string", - "description": "Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible." - } - } - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_FAILED", - "STATE_OPEN", - "STATE_PASSED", - "STATE_REJECTED", - "STATE_DECLINED", - "STATE_ENACTED", - "STATE_WAITING_FOR_NODE_VOTE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal", - "title": "Proposal state transition:\nOpen -\u003e\n - Passed -\u003e Enacted.\n - Passed -\u003e Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state" - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which the referral set's running volume is evaluated." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaRiskFactor": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market ID that relates to this risk factor." - }, - "short": { - "type": "string", - "description": "Short Risk factor value." - }, - "long": { - "type": "string", - "description": "Long Risk factor value." - } - }, - "title": "Risk factors are used to calculate the current risk associated with orders trading on a given market" - }, - "vegaScalingFactors": { - "type": "object", - "properties": { - "searchLevel": { - "type": "number", - "format": "double", - "description": "Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release." - }, - "initialMargin": { - "type": "number", - "format": "double", - "description": "Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin." - }, - "collateralRelease": { - "type": "number", - "format": "double", - "description": "Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset." - } - }, - "title": "Scaling Factors (for use in margin calculation)" - }, - "vegaSide": { - "type": "string", - "enum": [ - "SIDE_UNSPECIFIED", - "SIDE_BUY", - "SIDE_SELL" - ], - "default": "SIDE_UNSPECIFIED", - "description": "- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order", - "title": "Side relates to the direction of an order, to Buy, or Sell" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSimpleRiskModel": { - "type": "object", - "properties": { - "params": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Risk model params for simple modelling." - } - }, - "title": "Risk model for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpot": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Asset ID of the underlying base asset for the spot product." - }, - "quoteAsset": { - "type": "string", - "description": "Asset ID of the underlying quote asset for the spot product." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - } - }, - "title": "Spot product definition" - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaStopOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "ID of this stop order\nalso the ID of the associated order if it is ever triggered" - }, - "ocoLinkId": { - "type": "string", - "title": "The ID of the 'other' part of the OCO if 2 stop orders were submitted at once" - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Optional expiry timestamp." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "triggerDirection": { - "$ref": "#/definitions/StopOrderTriggerDirection", - "description": "Trigger direction for this stop order." - }, - "status": { - "$ref": "#/definitions/vegaStopOrderStatus", - "description": "Status of the stop order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Creation time of the stop order." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Last update of this stop order." - }, - "orderId": { - "type": "string", - "description": "ID of the order created once the trigger is hit." - }, - "partyId": { - "type": "string", - "description": "ID of the party that submitted this stop order." - }, - "marketId": { - "type": "string", - "description": "ID of the market the stop order is submitted to." - }, - "rejectionReason": { - "$ref": "#/definitions/StopOrderRejectionReason", - "title": "An optional reason for why a stop order was rejected" - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Size override setting" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "Size override value" - }, - "price": { - "type": "string", - "description": "Fixed price at which the order will be submitted." - }, - "trailingPercentOffset": { - "type": "string", - "title": "Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%" - } - } - }, - "vegaStopOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_TRIGGERED", - "STATUS_EXPIRED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission" - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaTradableInstrument": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrument", - "description": "Details for the underlying instrument." - }, - "marginCalculator": { - "$ref": "#/definitions/vegaMarginCalculator", - "description": "Margin calculator for the instrument." - }, - "logNormalRiskModel": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal." - }, - "simpleRiskModel": { - "$ref": "#/definitions/vegaSimpleRiskModel", - "description": "Simple." - } - }, - "title": "Tradable Instrument definition" - }, - "vegaTrade": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the trade." - }, - "marketId": { - "type": "string", - "description": "Market ID on which the trade occurred." - }, - "price": { - "type": "string", - "description": "Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size filled for the trade." - }, - "buyer": { - "type": "string", - "description": "Unique party ID for the buyer." - }, - "seller": { - "type": "string", - "description": "Unique party ID for the seller." - }, - "aggressor": { - "$ref": "#/definitions/vegaSide", - "description": "Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL." - }, - "buyOrder": { - "type": "string", - "description": "Identifier of the order from the buy side." - }, - "sellOrder": { - "type": "string", - "description": "Identifier of the order from the sell side." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the trade occurred." - }, - "type": { - "$ref": "#/definitions/vegaTradeType", - "description": "Type for the trade." - }, - "buyerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the buyer party for the trade." - }, - "sellerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the seller party for the trade." - }, - "buyerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the buy side order was placed in." - }, - "sellerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the sell side order was placed in." - }, - "assetPrice": { - "type": "string", - "description": "Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates." - } - }, - "title": "A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega" - }, - "vegaTradeType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_DEFAULT", - "TYPE_NETWORK_CLOSE_OUT_GOOD", - "TYPE_NETWORK_CLOSE_OUT_BAD" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_DEFAULT: Normal trading between two parties\n - TYPE_NETWORK_CLOSE_OUT_GOOD: Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties\n - TYPE_NETWORK_CLOSE_OUT_BAD: Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party", - "title": "Type values for a trade" - }, - "vegaTransferType": { - "type": "string", - "enum": [ - "TRANSFER_TYPE_UNSPECIFIED", - "TRANSFER_TYPE_LOSS", - "TRANSFER_TYPE_WIN", - "TRANSFER_TYPE_MTM_LOSS", - "TRANSFER_TYPE_MTM_WIN", - "TRANSFER_TYPE_MARGIN_LOW", - "TRANSFER_TYPE_MARGIN_HIGH", - "TRANSFER_TYPE_MARGIN_CONFISCATED", - "TRANSFER_TYPE_MAKER_FEE_PAY", - "TRANSFER_TYPE_MAKER_FEE_RECEIVE", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE", - "TRANSFER_TYPE_LIQUIDITY_FEE_PAY", - "TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE", - "TRANSFER_TYPE_BOND_LOW", - "TRANSFER_TYPE_BOND_HIGH", - "TRANSFER_TYPE_WITHDRAW", - "TRANSFER_TYPE_DEPOSIT", - "TRANSFER_TYPE_BOND_SLASHING", - "TRANSFER_TYPE_REWARD_PAYOUT", - "TRANSFER_TYPE_TRANSFER_FUNDS_SEND", - "TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE", - "TRANSFER_TYPE_CLEAR_ACCOUNT", - "TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE", - "TRANSFER_TYPE_SPOT", - "TRANSFER_TYPE_HOLDING_LOCK", - "TRANSFER_TYPE_HOLDING_RELEASE", - "TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION", - "TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE", - "TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE", - "TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY", - "TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY", - "TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT", - "TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE", - "TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS", - "TRANSFER_TYPE_PERPETUALS_FUNDING_WIN", - "TRANSFER_TYPE_REWARDS_VESTED", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE", - "TRANSFER_TYPE_ORDER_MARGIN_LOW", - "TRANSFER_TYPE_ORDER_MARGIN_HIGH", - "TRANSFER_TYPE_ISOLATED_MARGIN_LOW", - "TRANSFER_TYPE_ISOLATED_MARGIN_HIGH" - ], - "default": "TRANSFER_TYPE_UNSPECIFIED", - "description": "- TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.", - "title": "Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which a referral set's running volume is evaluated." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVote": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Voter's party ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Which way the party voted." - }, - "proposalId": { - "type": "string", - "description": "Proposal ID being voted on." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the vote was acknowledged by the network." - }, - "totalGovernanceTokenBalance": { - "type": "string", - "description": "Total number of governance token for the party that cast the vote." - }, - "totalGovernanceTokenWeight": { - "type": "string", - "description": "The weight of this vote based on the total number of governance tokens." - }, - "totalEquityLikeShareWeight": { - "type": "string", - "description": "The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal." - }, - "perMarketEquityLikeShareWeight": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal." - } - }, - "title": "Governance vote" - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - }, - "vegaWithdrawExt": { - "type": "object", - "properties": { - "erc20": { - "$ref": "#/definitions/vegaErc20WithdrawExt", - "description": "ERC20 withdrawal details." - } - }, - "title": "Withdrawal external details" - }, - "vegaWithdrawal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the withdrawal." - }, - "partyId": { - "type": "string", - "description": "Unique party ID of the user initiating the withdrawal." - }, - "amount": { - "type": "string", - "description": "Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to withdraw funds from." - }, - "status": { - "$ref": "#/definitions/vegaWithdrawalStatus", - "description": "Status of the withdrawal." - }, - "ref": { - "type": "string", - "description": "Reference which is used by the foreign chain\nto refer to this withdrawal." - }, - "txHash": { - "type": "string", - "description": "Hash of the foreign chain for this transaction." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the network started to process this withdrawal." - }, - "withdrawnTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the withdrawal was finalised by the network." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Foreign chain specifics." - } - }, - "title": "Withdrawal from the Vega network" - }, - "vegaWithdrawalStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_REJECTED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Withdrawal is open and being processed by the network\n - STATUS_REJECTED: Withdrawal have been cancelled\n - STATUS_FINALIZED: Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network", - "title": "Status of the withdrawal" - }, - "vegacommandsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account." - } - }, - "description": "Details for a one-off transfer." - }, - "vegacommandsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64", - "description": "First epoch from which this transfer shall be executed." - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be executed." - }, - "factor": { - "type": "string", - "description": "Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Details for a recurring transfer" - }, - "vegacommandsv1Transfer": { - "type": "object", - "properties": { - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type from which the funds of the party should be taken." - }, - "to": { - "type": "string", - "description": "Public key of the destination account." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the destination account." - }, - "asset": { - "type": "string", - "description": "Asset ID of the asset to be transferred." - }, - "amount": { - "type": "string", - "description": "Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places." - }, - "reference": { - "type": "string", - "description": "Reference to be attached to the transfer." - }, - "oneOff": { - "$ref": "#/definitions/vegacommandsv1OneOffTransfer", - "description": "Details of a one-off transfer that is executed once at a specified time." - }, - "recurring": { - "$ref": "#/definitions/vegacommandsv1RecurringTransfer", - "description": "Details of a transfer that is executed once every epoch until stopped." - } - }, - "title": "Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`" - }, - "vegaeventsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "vegaeventsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "factor": { - "type": "string" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "vegaeventsv1Transfer": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "from": { - "type": "string" - }, - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "to": { - "type": "string" - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "reference": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/v1TransferStatus" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "reason": { - "type": "string" - }, - "gameId": { - "type": "string", - "title": "ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation" - }, - "oneOff": { - "$ref": "#/definitions/vegaeventsv1OneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaeventsv1RecurringTransfer" - }, - "oneOffGovernance": { - "$ref": "#/definitions/v1OneOffGovernanceTransfer" - }, - "recurringGovernance": { - "$ref": "#/definitions/v1RecurringGovernanceTransfer" - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/corestate.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/corestate.swagger.json deleted file mode 100644 index 8bf44480c..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/api/v1/corestate.swagger.json +++ /dev/null @@ -1,3392 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega core state APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "CoreStateService" - } - ], - "host": "lb.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "MarketTradingMode": { - "type": "string", - "enum": [ - "TRADING_MODE_UNSPECIFIED", - "TRADING_MODE_CONTINUOUS", - "TRADING_MODE_BATCH_AUCTION", - "TRADING_MODE_OPENING_AUCTION", - "TRADING_MODE_MONITORING_AUCTION", - "TRADING_MODE_NO_TRADING", - "TRADING_MODE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "TRADING_MODE_UNSPECIFIED", - "description": "- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance", - "title": "Trading mode the market is currently running, also referred to as 'market state'" - }, - "apiv1Account": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "market": { - "type": "string" - }, - "balance": { - "type": "string" - }, - "asset": { - "type": "string" - }, - "type": { - "type": "string" - } - } - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1ListAccountsResponse": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/apiv1Account" - } - } - } - }, - "v1ListAssetsResponse": { - "type": "object", - "properties": { - "assets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAsset" - } - } - } - }, - "v1ListDelegationsResponse": { - "type": "object", - "properties": { - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - } - } - } - }, - "v1ListMarketsDataResponse": { - "type": "object", - "properties": { - "marketsData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketData" - } - } - } - }, - "v1ListMarketsResponse": { - "type": "object", - "properties": { - "markets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarket" - } - } - } - }, - "v1ListNetworkLimitsResponse": { - "type": "object", - "properties": { - "networkLimits": { - "$ref": "#/definitions/vegaNetworkLimits" - } - } - }, - "v1ListNetworkParametersResponse": { - "type": "object", - "properties": { - "networkParameters": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNetworkParameter" - } - } - } - }, - "v1ListPartiesResponse": { - "type": "object", - "properties": { - "parties": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaParty" - } - } - } - }, - "v1ListPartiesStakeResponse": { - "type": "object", - "properties": { - "partiesStake": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyStake" - } - } - } - }, - "v1ListProposalsResponse": { - "type": "object", - "properties": { - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaProposal" - } - } - } - }, - "v1ListValidatorsResponse": { - "type": "object", - "properties": { - "validators": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ValidatorUpdate" - } - } - } - }, - "v1ListVotesResponse": { - "type": "object", - "properties": { - "votes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - } - } - } - }, - "v1PartyStake": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "currentStakeAvailable": { - "type": "string" - }, - "stakeLinkings": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StakeLinking" - } - } - } - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1StakeLinking": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Internal ID for this staking event" - }, - "type": { - "$ref": "#/definitions/v1StakeLinkingType", - "description": "Stake linking event type." - }, - "ts": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the event was emitted by Ethereum." - }, - "party": { - "type": "string", - "description": "Party to whom the event is directed at." - }, - "amount": { - "type": "string", - "description": "Amount of stake deposited or removed." - }, - "status": { - "$ref": "#/definitions/v1StakeLinkingStatus", - "description": "Status of the event." - }, - "finalizedAt": { - "type": "string", - "format": "int64", - "description": "Time at which the Vega network finalised the state of the event." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction in which the event happened." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block when the event happened." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Block time." - }, - "logIndex": { - "type": "string", - "format": "uint64", - "description": "Log index." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum address from which the stake link was initiated." - } - }, - "title": "StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network" - }, - "v1StakeLinkingStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_ACCEPTED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network" - }, - "v1StakeLinkingType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LINK", - "TYPE_UNLINK" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction" - }, - "v1ValidatorUpdate": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the validator node" - }, - "vegaPubKey": { - "type": "string", - "title": "Vega public key of validator node" - }, - "ethereumAddress": { - "type": "string", - "title": "Ethereum public key of validator node" - }, - "tmPubKey": { - "type": "string", - "title": "Public key of Tendermint" - }, - "infoUrl": { - "type": "string", - "title": "URL with more info on the node" - }, - "country": { - "type": "string", - "title": "Country code (ISO 3166-1 alpha-2) for the location of the node" - }, - "name": { - "type": "string", - "title": "Name of the validator" - }, - "avatarUrl": { - "type": "string", - "title": "AvatarURL of the validator" - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "title": "Vega public key derivation index" - }, - "added": { - "type": "boolean", - "title": "Flag indicating if the validator has been added to or removed from vega" - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the announced pending node will start participating in the network" - }, - "submitterAddress": { - "type": "string", - "title": "Ethereum public key being used as the submitter to allow automatic signature generation" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the node was announced or removed from the network" - } - }, - "title": "Validator update event contains information about validator node" - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAsset": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Internal identifier of the asset." - }, - "details": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Definition of the external source for this asset." - }, - "status": { - "$ref": "#/definitions/vegaAssetStatus", - "description": "Status of the asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaAssetStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PROPOSED", - "STATUS_REJECTED", - "STATUS_PENDING_LISTING", - "STATUS_ENABLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network" - }, - "vegaAuctionDuration": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "format": "int64", - "description": "Duration of the auction in seconds." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Target uncrossing trading volume." - } - }, - "title": "Auction duration is used to configure 3 auction periods:\n1. `duration \u003e 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume \u003e 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration \u003e 0`, `volume \u003e 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume" - }, - "vegaAuctionTrigger": { - "type": "string", - "enum": [ - "AUCTION_TRIGGER_UNSPECIFIED", - "AUCTION_TRIGGER_BATCH", - "AUCTION_TRIGGER_OPENING", - "AUCTION_TRIGGER_PRICE", - "AUCTION_TRIGGER_LIQUIDITY", - "AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET", - "AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS", - "AUCTION_TRIGGER_GOVERNANCE_SUSPENSION" - ], - "default": "AUCTION_TRIGGER_UNSPECIFIED", - "description": "- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance", - "title": "Auction triggers indicate what condition triggered an auction (if market is in auction mode)" - }, - "vegaBatchProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "proposalParams": { - "$ref": "#/definitions/vegaProposalParameters", - "description": "Specific parameters defining the proposal's characteristics used for validation." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal on Vega" - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpec": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Hash generated from the DataSpec data." - }, - "createdAt": { - "type": "string", - "format": "int64", - "title": "Creation date and time" - }, - "updatedAt": { - "type": "string", - "format": "int64", - "title": "Last Updated timestamp" - }, - "data": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "status": { - "$ref": "#/definitions/vegaDataSourceSpecStatus", - "title": "Status describes the status of the data source spec" - } - }, - "description": "Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_DEACTIVATED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.", - "title": "Status describe the status of the data source spec" - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDelegation": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party which is delegating." - }, - "nodeId": { - "type": "string", - "description": "Node ID to delegate to." - }, - "amount": { - "type": "string", - "description": "Amount delegated. This field is an unsigned integer scaled to the asset's decimal places." - }, - "epochSeq": { - "type": "string", - "description": "Epoch of delegation." - } - } - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaFeeFactors": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Market maker fee charged network wide." - }, - "infrastructureFee": { - "type": "string", - "description": "Infrastructure fee charged network wide for staking and governance." - }, - "liquidityFee": { - "type": "string", - "description": "Liquidity fee applied per market for market making." - } - }, - "title": "Fee factors definition" - }, - "vegaFees": { - "type": "object", - "properties": { - "factors": { - "$ref": "#/definitions/vegaFeeFactors", - "description": "Fee factors." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Liquidity fee settings for the market describing how the fee was calculated." - } - }, - "title": "Fees definition" - }, - "vegaFuture": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the future." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the settlement data source filter." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the trading termination data source filter." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data spec and the data source." - } - }, - "title": "Future product definition" - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique instrument ID." - }, - "code": { - "type": "string", - "description": "Code for the instrument." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - }, - "metadata": { - "$ref": "#/definitions/vegaInstrumentMetadata", - "description": "Collection of instrument meta-data." - }, - "future": { - "$ref": "#/definitions/vegaFuture", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpot", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetual", - "description": "Perpetual." - } - }, - "title": "Instrument definition" - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaInstrumentMetadata": { - "type": "object", - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of 0 or more tags." - } - }, - "title": "Instrument metadata definition" - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquidityProviderFeeShare": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "equityLikeShare": { - "type": "string", - "description": "Share own by this liquidity provider." - }, - "averageEntryValuation": { - "type": "string", - "description": "Average entry valuation of the liquidity provider for the market." - }, - "averageScore": { - "type": "string", - "description": "Average liquidity score." - }, - "virtualStake": { - "type": "string", - "description": "The virtual stake of this liquidity provider." - } - }, - "title": "Equity like share of liquidity fee for each liquidity provider" - }, - "vegaLiquidityProviderSLA": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "currentEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP meets the commitment during the current epoch." - }, - "lastEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP met the commitment in the previous epoch." - }, - "lastEpochFeePenalty": { - "type": "string", - "description": "Indicates the fee penalty amount applied in the previous epoch." - }, - "lastEpochBondPenalty": { - "type": "string", - "description": "Shows the bond penalties from past epochs." - }, - "hysteresisPeriodFeePenalties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Determines how the fee penalties from past epochs affect future fee revenue." - }, - "requiredLiquidity": { - "type": "string", - "description": "Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range." - }, - "notionalVolumeBuys": { - "type": "string", - "description": "Notional volume of orders within the range provided on the buy side of the book." - }, - "notionalVolumeSells": { - "type": "string", - "description": "Notional volume of orders within the range provided on the sell side of the book." - } - }, - "title": "SLA performance for each liquidity provider" - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarginCalculator": { - "type": "object", - "properties": { - "scalingFactors": { - "$ref": "#/definitions/vegaScalingFactors", - "description": "Scaling factors for margin calculation." - } - }, - "title": "Margin Calculator definition" - }, - "vegaMarket": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the market." - }, - "tradableInstrument": { - "$ref": "#/definitions/vegaTradableInstrument", - "description": "Tradable instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`." - }, - "fees": { - "$ref": "#/definitions/vegaFees", - "description": "Fees configuration that apply to the market." - }, - "openingAuction": { - "$ref": "#/definitions/vegaAuctionDuration", - "description": "Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)." - }, - "priceMonitoringSettings": { - "$ref": "#/definitions/vegaPriceMonitoringSettings", - "description": "PriceMonitoringSettings for the market." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "LiquidityMonitoringParameters for the market." - }, - "tradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current mode of execution of the market." - }, - "state": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "marketTimestamps": { - "$ref": "#/definitions/vegaMarketTimestamps", - "description": "Timestamps for when the market state changes." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "The number of decimal places for a position." - }, - "lpPriceRange": { - "type": "string", - "description": "Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "parentMarketId": { - "type": "string", - "title": "ID of the market this market succeeds" - }, - "insurancePoolFraction": { - "type": "string", - "description": "The fraction of the parent market's insurance pool that this market inherits; range 0 through 1." - }, - "successorMarketId": { - "type": "string", - "description": "ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled." - }, - "liquiditySlaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Liquidity SLA parameters for the market." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy used by this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price calculation configuration." - } - }, - "title": "Market definition" - }, - "vegaMarketData": { - "type": "object", - "properties": { - "markPrice": { - "type": "string", - "description": "Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidPrice": { - "type": "string", - "description": "Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestOfferPrice": { - "type": "string", - "description": "Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places." - }, - "bestOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestStaticBidPrice": { - "type": "string", - "description": "Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticBidVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static bid price excluding pegged orders." - }, - "bestStaticOfferPrice": { - "type": "string", - "description": "Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static offer price, excluding pegged orders." - }, - "midPrice": { - "type": "string", - "description": "Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "staticMidPrice": { - "type": "string", - "description": "Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "market": { - "type": "string", - "title": "Market ID for the data" - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which this mark price was relevant." - }, - "openInterest": { - "type": "string", - "format": "uint64", - "description": "Sum of the size of all positions greater than zero on the market." - }, - "auctionEnd": { - "type": "string", - "format": "int64", - "description": "Time in seconds until the end of the auction (zero if currently not in auction period)." - }, - "auctionStart": { - "type": "string", - "format": "int64", - "description": "Time until next auction, or start time of the current auction if market is in auction period." - }, - "indicativePrice": { - "type": "string", - "description": "Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places." - }, - "indicativeVolume": { - "type": "string", - "format": "uint64", - "description": "Indicative volume (zero if not in auction)." - }, - "marketTradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current trading mode for the market." - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market is in an auction trading mode, this field indicates what triggered the auction." - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market auction is extended, this field indicates what caused the extension." - }, - "targetStake": { - "type": "string", - "description": "Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "suppliedStake": { - "type": "string", - "description": "Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "priceMonitoringBounds": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringBounds" - }, - "description": "One or more price monitoring bounds for the current timestamp." - }, - "marketValueProxy": { - "type": "string", - "description": "Market value proxy." - }, - "liquidityProviderFeeShare": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare" - }, - "description": "Equity like share of liquidity fee for each liquidity provider." - }, - "marketState": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "nextMarkToMarket": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the next mark-to-market calculation will occur." - }, - "lastTradedPrice": { - "type": "string", - "description": "Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places." - }, - "marketGrowth": { - "type": "string", - "description": "Market growth at the last market time window." - }, - "productData": { - "$ref": "#/definitions/vegaProductData", - "description": "Data related to the particular product type of the market." - }, - "liquidityProviderSla": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderSLA" - }, - "description": "SLA performance for each liquidity provider." - }, - "nextNetworkCloseout": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the market will next submit a trade to reduce its position." - }, - "markPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the mark price." - } - }, - "title": "Represents data generated by a market when open" - }, - "vegaMarketState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_PROPOSED", - "STATE_REJECTED", - "STATE_PENDING", - "STATE_CANCELLED", - "STATE_ACTIVE", - "STATE_SUSPENDED", - "STATE_CLOSED", - "STATE_TRADING_TERMINATED", - "STATE_SETTLED", - "STATE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance", - "title": "Current state of the market" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMarketTimestamps": { - "type": "object", - "properties": { - "proposed": { - "type": "string", - "format": "int64", - "description": "Time when the market is first proposed." - }, - "pending": { - "type": "string", - "format": "int64", - "description": "Time when the market has been voted in and began its opening auction." - }, - "open": { - "type": "string", - "format": "int64", - "description": "Time when the market has left the opening auction and is ready to accept trades." - }, - "close": { - "type": "string", - "format": "int64", - "description": "Time when the market closed." - } - }, - "title": "Time stamps for important times about creating, enacting etc the market" - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkLimits": { - "type": "object", - "properties": { - "canProposeMarket": { - "type": "boolean", - "description": "Are market proposals allowed at this point in time." - }, - "canProposeAsset": { - "type": "boolean", - "description": "Are asset proposals allowed at this point in time." - }, - "proposeMarketEnabled": { - "type": "boolean", - "description": "Are market proposals enabled on this chain." - }, - "proposeAssetEnabled": { - "type": "boolean", - "description": "Are asset proposals enabled on this chain." - }, - "genesisLoaded": { - "type": "boolean", - "description": "True once the genesis file is loaded." - }, - "proposeMarketEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set)." - }, - "proposeAssetEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set)." - }, - "canProposeSpotMarket": { - "type": "boolean", - "description": "Are spot market proposals allowed at this point in time." - }, - "canProposePerpetualMarket": { - "type": "boolean", - "description": "Are perpetual market proposals allowed at this point in time." - } - }, - "title": "Network limits, defined in the genesis file" - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaParty": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the party, typically represented by a public key." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "title": "Party represents an entity who wishes to trade on or query a Vega network" - }, - "vegaPerpetual": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the perpetual." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfig": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Optional configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product definition" - }, - "vegaPerpetualData": { - "type": "object", - "properties": { - "fundingPayment": { - "type": "string", - "description": "Current funding payment for the in-progress funding period." - }, - "fundingRate": { - "type": "string", - "description": "Current funding rate for the in-progress funding period." - }, - "internalTwap": { - "type": "string", - "description": "Time-weighted-average the internal data-points for the in-progress funding period." - }, - "externalTwap": { - "type": "string", - "description": "Time-weighted-average the external data points for the in-progress funding period." - }, - "seqNum": { - "type": "string", - "format": "uint64", - "title": "Funding period sequence number" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Funding period start time" - }, - "indexPrice": { - "type": "string", - "description": "The index price used for perps." - }, - "nextIndexPriceCalc": { - "type": "string", - "format": "int64", - "description": "The next time the index price is calculated for perps." - }, - "indexPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the index price (perps only)." - } - }, - "description": "Represents market data specific to a perpetual market." - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPriceMonitoringBounds": { - "type": "object", - "properties": { - "minValidPrice": { - "type": "string", - "description": "Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "maxValidPrice": { - "type": "string", - "description": "Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "trigger": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger", - "description": "Price monitoring trigger associated with the bounds." - }, - "referencePrice": { - "type": "string", - "description": "Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places." - } - }, - "title": "Represents a list of valid (at the current timestamp) price ranges per associated trigger" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringSettings": { - "type": "object", - "properties": { - "parameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Specifies price monitoring parameters to be used for price monitoring purposes." - } - }, - "title": "PriceMonitoringSettings contains the settings for price monitoring" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProductData": { - "type": "object", - "properties": { - "perpetualData": { - "$ref": "#/definitions/vegaPerpetualData" - } - }, - "description": "Represents market data specific to a particular product type." - }, - "vegaProposal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique proposal ID." - }, - "reference": { - "type": "string", - "description": "Proposal reference." - }, - "partyId": { - "type": "string", - "description": "Party ID i.e. public key of the party submitting the proposal." - }, - "state": { - "$ref": "#/definitions/vegaProposalState", - "description": "Current state of the proposal, i.e. open, passed, failed etc." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term." - }, - "reason": { - "$ref": "#/definitions/vegaProposalError", - "description": "Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses." - }, - "errorDetails": { - "type": "string", - "description": "Detailed error associated to the reason." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - }, - "requiredParticipation": { - "type": "string", - "description": "Required vote participation for this proposal." - }, - "requiredMajority": { - "type": "string", - "description": "Required majority for this proposal." - }, - "requiredLiquidityProviderParticipation": { - "type": "string", - "description": "Required participation from liquidity providers, optional but is required for market update proposal." - }, - "requiredLiquidityProviderMajority": { - "type": "string", - "description": "Required majority from liquidity providers, optional but is required for market update proposal." - }, - "batchTerms": { - "$ref": "#/definitions/vegaBatchProposalTerms", - "description": "Batch proposal terms." - }, - "batchId": { - "type": "string", - "description": "ID of a batch proposal that this proposal is part of." - } - }, - "title": "Governance proposal" - }, - "vegaProposalError": { - "type": "string", - "enum": [ - "PROPOSAL_ERROR_UNSPECIFIED", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE", - "PROPOSAL_ERROR_ENACT_TIME_TOO_SOON", - "PROPOSAL_ERROR_ENACT_TIME_TOO_LATE", - "PROPOSAL_ERROR_INSUFFICIENT_TOKENS", - "PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY", - "PROPOSAL_ERROR_NO_PRODUCT", - "PROPOSAL_ERROR_UNSUPPORTED_PRODUCT", - "PROPOSAL_ERROR_NO_TRADING_MODE", - "PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE", - "PROPOSAL_ERROR_NODE_VALIDATION_FAILED", - "PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD", - "PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS", - "PROPOSAL_ERROR_INVALID_ASSET", - "PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS", - "PROPOSAL_ERROR_NO_RISK_PARAMETERS", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE", - "PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE", - "PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET", - "PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT", - "PROPOSAL_ERROR_INVALID_RISK_PARAMETER", - "PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_INVALID_ASSET_DETAILS", - "PROPOSAL_ERROR_UNKNOWN_TYPE", - "PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE", - "PROPOSAL_ERROR_INVALID_FREEFORM", - "PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE", - "PROPOSAL_ERROR_INVALID_MARKET", - "PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES", - "PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS", - "PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE", - "PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_INVALID_SPOT", - "PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED", - "PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE", - "PROPOSAL_ERROR_INVALID_SLA_PARAMS", - "PROPOSAL_ERROR_MISSING_SLA_PARAMS", - "PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT", - "PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM", - "PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED" - ], - "default": "PROPOSAL_ERROR_UNSPECIFIED", - "description": "- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation \u003c Closing \u003c Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined", - "title": "List of possible errors that can cause a proposal to be in state rejected or failed" - }, - "vegaProposalParameters": { - "type": "object", - "properties": { - "minClose": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before a proposal can be closed for voting." - }, - "maxClose": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time that a proposal can be open for voting." - }, - "minEnact": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before an enacted proposal takes effect." - }, - "maxEnact": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time before an enacted proposal must take effect." - }, - "requiredParticipation": { - "type": "string", - "description": "Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid." - }, - "requiredMajority": { - "type": "string", - "description": "Specifies the required percentage of votes a proposal needs to be approved." - }, - "minProposerBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a proposer must hold to initiate a proposal." - }, - "minVoterBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a voter must hold to participate in voting." - }, - "requiredParticipationLp": { - "type": "string", - "description": "Specifies the required percentage of participation from liquidity providers for the proposal to be valid." - }, - "requiredMajorityLp": { - "type": "string", - "description": "Specifies the required majority percentage from liquidity providers for a proposal to be approved." - }, - "minEquityLikeShare": { - "type": "string", - "description": "Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible." - } - } - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_FAILED", - "STATE_OPEN", - "STATE_PASSED", - "STATE_REJECTED", - "STATE_DECLINED", - "STATE_ENACTED", - "STATE_WAITING_FOR_NODE_VOTE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal", - "title": "Proposal state transition:\nOpen -\u003e\n - Passed -\u003e Enacted.\n - Passed -\u003e Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state" - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaScalingFactors": { - "type": "object", - "properties": { - "searchLevel": { - "type": "number", - "format": "double", - "description": "Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release." - }, - "initialMargin": { - "type": "number", - "format": "double", - "description": "Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin." - }, - "collateralRelease": { - "type": "number", - "format": "double", - "description": "Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset." - } - }, - "title": "Scaling Factors (for use in margin calculation)" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSimpleRiskModel": { - "type": "object", - "properties": { - "params": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Risk model params for simple modelling." - } - }, - "title": "Risk model for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpot": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Asset ID of the underlying base asset for the spot product." - }, - "quoteAsset": { - "type": "string", - "description": "Asset ID of the underlying quote asset for the spot product." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - } - }, - "title": "Spot product definition" - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaTradableInstrument": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrument", - "description": "Details for the underlying instrument." - }, - "marginCalculator": { - "$ref": "#/definitions/vegaMarginCalculator", - "description": "Margin calculator for the instrument." - }, - "logNormalRiskModel": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal." - }, - "simpleRiskModel": { - "$ref": "#/definitions/vegaSimpleRiskModel", - "description": "Simple." - } - }, - "title": "Tradable Instrument definition" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVote": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Voter's party ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Which way the party voted." - }, - "proposalId": { - "type": "string", - "description": "Proposal ID being voted on." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the vote was acknowledged by the network." - }, - "totalGovernanceTokenBalance": { - "type": "string", - "description": "Total number of governance token for the party that cast the vote." - }, - "totalGovernanceTokenWeight": { - "type": "string", - "description": "The weight of this vote based on the total number of governance tokens." - }, - "totalEquityLikeShareWeight": { - "type": "string", - "description": "The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal." - }, - "perMarketEquityLikeShareWeight": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal." - } - }, - "title": "Governance vote" - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/assets.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/assets.swagger.json deleted file mode 100644 index 9d097dbb9..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/assets.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/assets.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/chain_events.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/chain_events.swagger.json deleted file mode 100644 index 7e122e440..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/chain_events.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/chain_events.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/checkpoint/v1/checkpoint.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/checkpoint/v1/checkpoint.swagger.json deleted file mode 100644 index cdccfb99c..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/checkpoint/v1/checkpoint.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/checkpoint/v1/checkpoint.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/commands.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/commands.swagger.json deleted file mode 100644 index 26814accb..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/commands.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/commands.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/data.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/data.swagger.json deleted file mode 100644 index 72e1066f9..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/data.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/data.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/signature.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/signature.swagger.json deleted file mode 100644 index bca419264..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/signature.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/signature.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/transaction.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/transaction.swagger.json deleted file mode 100644 index 80565817c..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/transaction.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/transaction.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/validator_commands.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/validator_commands.swagger.json deleted file mode 100644 index 11a4f0aac..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/commands/v1/validator_commands.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/validator_commands.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/data.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/data.swagger.json deleted file mode 100644 index dac21342e..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/data.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data/v1/data.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "rpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/spec.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/spec.swagger.json deleted file mode 100644 index 77fbc8b87..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data/v1/spec.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data/v1/spec.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "rpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data_source.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data_source.swagger.json deleted file mode 100644 index fc4472949..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/data_source.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data_source.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/events/v1/events.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/events/v1/events.swagger.json deleted file mode 100644 index 2b32a0c55..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/events/v1/events.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/events/v1/events.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/governance.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/governance.swagger.json deleted file mode 100644 index 45c945a56..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/governance.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/governance.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/markets.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/markets.swagger.json deleted file mode 100644 index 8fbf8badc..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/markets.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/markets.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/oracle.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/oracle.swagger.json deleted file mode 100644 index ef6f33a5a..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/oracle.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/oracle.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/snapshot/v1/snapshot.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/snapshot/v1/snapshot.swagger.json deleted file mode 100644 index fbdb3af1d..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/snapshot/v1/snapshot.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/snapshot/v1/snapshot.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/vega.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/vega.swagger.json deleted file mode 100644 index 53809884b..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/vega.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/vega.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/wallet/v1/wallet.swagger.json b/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/wallet/v1/wallet.swagger.json deleted file mode 100644 index f14317268..000000000 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/vega/wallet/v1/wallet.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/wallet/v1/wallet.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/blockexplorer/api/v1/blockexplorer.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/blockexplorer/api/v1/blockexplorer.swagger.json deleted file mode 100644 index c31322d6b..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/blockexplorer/api/v1/blockexplorer.swagger.json +++ /dev/null @@ -1,3753 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega block explorer APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "BlockExplorerService" - } - ], - "host": "lb.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "OracleDataSubmissionOracleSource": { - "type": "string", - "enum": [ - "ORACLE_SOURCE_UNSPECIFIED", - "ORACLE_SOURCE_OPEN_ORACLE", - "ORACLE_SOURCE_JSON", - "ORACLE_SOURCE_ETHEREUM" - ], - "default": "ORACLE_SOURCE_UNSPECIFIED", - "description": "- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.", - "title": "Supported oracle sources" - }, - "OrderTimeInForce": { - "type": "string", - "enum": [ - "TIME_IN_FORCE_UNSPECIFIED", - "TIME_IN_FORCE_GTC", - "TIME_IN_FORCE_GTT", - "TIME_IN_FORCE_IOC", - "TIME_IN_FORCE_FOK", - "TIME_IN_FORCE_GFA", - "TIME_IN_FORCE_GFN" - ], - "default": "TIME_IN_FORCE_UNSPECIFIED", - "description": "- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)", - "title": "Time In Force for an order" - }, - "StopOrderExpiryStrategy": { - "type": "string", - "enum": [ - "EXPIRY_STRATEGY_UNSPECIFIED", - "EXPIRY_STRATEGY_CANCELS", - "EXPIRY_STRATEGY_SUBMIT" - ], - "default": "EXPIRY_STRATEGY_UNSPECIFIED", - "description": " - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached." - }, - "StopOrderSizeOverrideSetting": { - "type": "string", - "enum": [ - "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "SIZE_OVERRIDE_SETTING_NONE", - "SIZE_OVERRIDE_SETTING_POSITION" - ], - "default": "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "title": "- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader" - }, - "StopOrderSizeOverrideValue": { - "type": "object", - "properties": { - "percentage": { - "type": "string", - "title": "Scaling percentage of the current position’s size" - } - } - }, - "UpdateMarginModeMode": { - "type": "string", - "enum": [ - "MODE_UNSPECIFIED", - "MODE_CROSS_MARGIN", - "MODE_ISOLATED_MARGIN" - ], - "default": "MODE_UNSPECIFIED", - "title": "- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "blockexplorerapiv1Transaction": { - "type": "object", - "properties": { - "block": { - "type": "string", - "format": "uint64", - "title": "Height of the block the transaction was found in" - }, - "index": { - "type": "integer", - "format": "int64", - "title": "Index of the transaction in the block" - }, - "hash": { - "type": "string", - "title": "Hash of the transaction" - }, - "submitter": { - "type": "string", - "title": "Vega public key of the transaction's submitter" - }, - "type": { - "type": "string", - "title": "Type of transaction" - }, - "code": { - "type": "integer", - "format": "int64", - "title": "Results code of the transaction. 0 indicates the transaction was successful" - }, - "cursor": { - "type": "string", - "title": "Cursor for this transaction. This is used for paginating results" - }, - "command": { - "$ref": "#/definitions/v1InputData", - "title": "Actual command of the transaction" - }, - "signature": { - "$ref": "#/definitions/v1Signature", - "title": "Signature generated by the submitter for the transaction" - }, - "error": { - "type": "string", - "title": "Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0" - }, - "createdAt": { - "type": "string", - "description": "Timestamp when the transaction happened, using RFC3399 format." - }, - "version": { - "$ref": "#/definitions/v1TxVersion", - "title": "Version format of the transaction" - }, - "pow": { - "$ref": "#/definitions/v1ProofOfWork", - "title": "Proof of Work parameters of the transaction" - } - } - }, - "commandsv1CancelTransfer": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer ID of the transfer to cancel." - } - }, - "description": "Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction." - }, - "commandsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account." - } - }, - "description": "Details for a one-off transfer." - }, - "commandsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64", - "description": "First epoch from which this transfer shall be executed." - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be executed." - }, - "factor": { - "type": "string", - "description": "Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Details for a recurring transfer" - }, - "commandsv1Transfer": { - "type": "object", - "properties": { - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type from which the funds of the party should be taken." - }, - "to": { - "type": "string", - "description": "Public key of the destination account." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the destination account." - }, - "asset": { - "type": "string", - "description": "Asset ID of the asset to be transferred." - }, - "amount": { - "type": "string", - "description": "Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places." - }, - "reference": { - "type": "string", - "description": "Reference to be attached to the transfer." - }, - "oneOff": { - "$ref": "#/definitions/commandsv1OneOffTransfer", - "description": "Details of a one-off transfer that is executed once at a specified time." - }, - "recurring": { - "$ref": "#/definitions/commandsv1RecurringTransfer", - "description": "Details of a transfer that is executed once every epoch until stopped." - } - }, - "title": "Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`" - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1AnnounceNode": { - "type": "object", - "properties": { - "vegaPubKey": { - "type": "string", - "description": "Vega public key of the node being announced." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node being announced." - }, - "chainPubKey": { - "type": "string", - "description": "Public key for the blockchain, currently the node's CometBFT key." - }, - "infoUrl": { - "type": "string", - "description": "URL to the node operators homepage allowing stake holders to make an informed decision when delegating." - }, - "country": { - "type": "string", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node." - }, - "id": { - "type": "string", - "description": "Node ID of the validator, which is the node's public master key." - }, - "name": { - "type": "string", - "description": "Human-readable name of the node." - }, - "avatarUrl": { - "type": "string", - "description": "URL to the node operator's avatar." - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "Vega public key derivation index." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch from which the node is expected to be ready to validate blocks." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the Vega wallet." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - } - }, - "description": "A command that allows a new node operator to announce themselves to the network as a new validator." - }, - "v1ApplyReferralCode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Referral code, normally the referral set ID, for the party to join." - } - }, - "description": "Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch." - }, - "v1BatchMarketInstructions": { - "type": "object", - "properties": { - "cancellations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "description": "List of order cancellations to be processed sequentially." - }, - "amendments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "description": "List of order amendments to be processed sequentially." - }, - "submissions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "description": "List of order submissions to be processed sequentially." - }, - "stopOrdersCancellation": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "description": "List of stop order cancellations to be processed sequentially." - }, - "stopOrdersSubmission": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "description": "List of stop order submissions to be processed sequentially." - }, - "updateMarginMode": { - "type": "array", - "items": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "title": "Update margin mode instruction" - } - }, - "description": "A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\"." - }, - "v1BatchProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/v1BatchProposalSubmissionTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it." - }, - "v1BatchProposalSubmissionTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal submission" - }, - "v1ChainEvent": { - "type": "object", - "properties": { - "txId": { - "type": "string", - "description": "ID of the transaction on the foreign chain that caused the event." - }, - "nonce": { - "type": "string", - "format": "uint64", - "description": "Arbitrary one-time integer used to prevent replay attacks." - }, - "builtin": { - "$ref": "#/definitions/vegaBuiltinAssetEvent", - "description": "Built-in asset event." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Event", - "description": "Ethereum ERC20 event." - }, - "stakingEvent": { - "$ref": "#/definitions/vegaStakingEvent", - "description": "Ethereum Staking event." - }, - "erc20Multisig": { - "$ref": "#/definitions/vegaERC20MultiSigEvent", - "description": "Ethereum ERC20 multisig event." - }, - "contractCall": { - "$ref": "#/definitions/vegaEthContractCallEvent", - "description": "Ethereum contract call event." - } - }, - "description": "A validator command sent automatically that provides information of events that have happened on foreign chains." - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1CreateReferralSet": { - "type": "object", - "properties": { - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1CreateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set." - }, - "v1CreateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "External link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "External link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1DelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to delegate stake to." - }, - "amount": { - "type": "string", - "description": "Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places." - } - }, - "description": "Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator." - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1EthereumKeyRotateSubmission": { - "type": "object", - "properties": { - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newAddress": { - "type": "string", - "description": "Ethereum address that is being rotated to." - }, - "currentAddress": { - "type": "string", - "description": "Ethereum address of the node's current Ethereum keys." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature signed by the new Ethereum key that can be verified to prove ownership." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated." - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1GetTransactionResponse": { - "type": "object", - "properties": { - "transaction": { - "$ref": "#/definitions/blockexplorerapiv1Transaction", - "title": "Transaction corresponding to the hash" - } - } - }, - "v1IcebergOpts": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is made visible and can be traded with during the execution of a single order." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "Minimum allowed remaining size of the order before it is replenished back to its peak size." - } - }, - "title": "Iceberg order options" - }, - "v1InfoResponse": { - "type": "object", - "properties": { - "version": { - "type": "string", - "title": "Semver formatted version of the data node" - }, - "commitHash": { - "type": "string", - "title": "Commit hash from which the data node was built" - } - } - }, - "v1InputData": { - "type": "object", - "properties": { - "nonce": { - "type": "string", - "format": "uint64", - "description": "Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height which has been used to calculate the transaction proof-of-work." - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Command to submit an order." - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation", - "description": "Command to cancel an order." - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment", - "description": "Command to amend an order." - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission", - "description": "Command to submit a withdrawal." - }, - "proposalSubmission": { - "$ref": "#/definitions/v1ProposalSubmission", - "description": "Command to submit a governance proposal." - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission", - "description": "Command to submit a vote on a governance proposal." - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission", - "description": "Command to submit a liquidity commitment." - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission", - "description": "Command to delegate tokens to a validator." - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission", - "description": "Command to remove tokens delegated to a validator." - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation", - "description": "Command to cancel a liquidity commitment." - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment", - "description": "Command to amend a liquidity commitment." - }, - "transfer": { - "$ref": "#/definitions/commandsv1Transfer", - "description": "Command to submit a transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer", - "description": "Command to cancel a recurring transfer." - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode", - "description": "Command used by a node operator to announce its node as a pending validator." - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions", - "description": "Command to submit a batch of order instructions." - }, - "stopOrdersSubmission": { - "$ref": "#/definitions/v1StopOrdersSubmission", - "description": "Command to submit a pair of stop orders." - }, - "stopOrdersCancellation": { - "$ref": "#/definitions/v1StopOrdersCancellation", - "description": "Command to cancel stop orders." - }, - "createReferralSet": { - "$ref": "#/definitions/v1CreateReferralSet", - "description": "Command to create a referral set." - }, - "updateReferralSet": { - "$ref": "#/definitions/v1UpdateReferralSet", - "description": "Command to update a referral set." - }, - "applyReferralCode": { - "$ref": "#/definitions/v1ApplyReferralCode", - "description": "Command to apply a referral code." - }, - "updateMarginMode": { - "$ref": "#/definitions/v1UpdateMarginMode", - "description": "Command to update the margin mode of a party in a market." - }, - "joinTeam": { - "$ref": "#/definitions/v1JoinTeam", - "description": "Command to join a team." - }, - "nodeVote": { - "$ref": "#/definitions/v1NodeVote", - "description": "Validator command sent automatically to vote on that validity of an external resource." - }, - "nodeSignature": { - "$ref": "#/definitions/v1NodeSignature", - "description": "Validator command sent automatically to provide signatures for the Ethereum bridge." - }, - "chainEvent": { - "$ref": "#/definitions/v1ChainEvent", - "description": "Validator command sent automatically to notify the Vega chain of an off-chain event." - }, - "keyRotateSubmission": { - "$ref": "#/definitions/v1KeyRotateSubmission", - "description": "Validator command sent manually by a node operator to rotate their node's Vega keys." - }, - "stateVariableProposal": { - "$ref": "#/definitions/v1StateVariableProposal", - "description": "Validator command sent automatically to reach consensus on floating point values." - }, - "validatorHeartbeat": { - "$ref": "#/definitions/v1ValidatorHeartbeat", - "description": "Validator command sent automatically to signal regular participation in the network." - }, - "ethereumKeyRotateSubmission": { - "$ref": "#/definitions/v1EthereumKeyRotateSubmission", - "description": "Validator command sent manually by a node operator to rotate their node's Ethereum keys." - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal", - "description": "Validator command sent manually to propose a protocol upgrade." - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures", - "description": "Command to request signatures to amend the multisig-control contract." - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission", - "description": "Command to submit external oracle data." - }, - "batchProposalSubmission": { - "$ref": "#/definitions/v1BatchProposalSubmission", - "description": "Command to submit a batch governance proposal." - }, - "updatePartyProfile": { - "$ref": "#/definitions/v1UpdatePartyProfile", - "description": "Command to update a party's profile." - } - }, - "description": "Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message." - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1IssueSignatures": { - "type": "object", - "properties": { - "submitter": { - "type": "string", - "description": "Ethereum address which will submit the signatures to the smart contract." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "What kind of signatures to generate, namely for whether a signer is being added or removed." - }, - "validatorNodeId": { - "type": "string", - "description": "Node ID of the validator node that will be signed in or out of the smart contract." - } - }, - "description": "Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command." - }, - "v1JoinTeam": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the team to join, this is the same as the referral code used to generate the team." - } - }, - "description": "Command that allows the submitter to join a team or change teams if they are already a member of a team." - }, - "v1KeyRotateSubmission": { - "type": "object", - "properties": { - "newPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "New Vega public key derivation index." - }, - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newPubKey": { - "type": "string", - "description": "Vega public key that would be rotated to." - }, - "currentPubKeyHash": { - "type": "string", - "description": "Hash of the node's current Vega public key." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated." - }, - "v1LiquidityProvisionAmendment": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wants to amend the liquidity commitment for." - }, - "commitmentAmount": { - "type": "string", - "description": "New commitment amount." - }, - "fee": { - "type": "string", - "description": "New nominated liquidity fee factor." - }, - "reference": { - "type": "string", - "description": "New arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged." - }, - "v1LiquidityProvisionCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter will stop providing liquidity for." - } - }, - "description": "Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market." - }, - "v1LiquidityProvisionSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wishes to provide liquidity for." - }, - "commitmentAmount": { - "type": "string", - "description": "Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "reference": { - "type": "string", - "description": "Arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market." - }, - "v1ListTransactionsResponse": { - "type": "object", - "properties": { - "transactions": { - "type": "array", - "items": { - "$ref": "#/definitions/blockexplorerapiv1Transaction" - }, - "title": "Transaction corresponding to the specific request and filters" - } - } - }, - "v1NodeSignature": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the resource that the signature relates to." - }, - "sig": { - "type": "string", - "format": "byte", - "description": "Signature generated by the node." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "Kind of resource being signed." - } - }, - "description": "A validator command sent automatically containing a signature that can be used on a foreign chain to process an action." - }, - "v1NodeSignatureKind": { - "type": "string", - "enum": [ - "NODE_SIGNATURE_KIND_UNSPECIFIED", - "NODE_SIGNATURE_KIND_ASSET_NEW", - "NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED", - "NODE_SIGNATURE_KIND_ASSET_UPDATE" - ], - "default": "NODE_SIGNATURE_KIND_UNSPECIFIED", - "description": "- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.", - "title": "Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc" - }, - "v1NodeVote": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Reference identifying the resource that has been verified." - }, - "type": { - "$ref": "#/definitions/v1NodeVoteType", - "description": "Type of external event that has been verified." - } - }, - "description": "A validator command which is sent automatically by a node when it has verified a resource external to the network." - }, - "v1NodeVoteType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_STAKE_DEPOSITED", - "TYPE_STAKE_REMOVED", - "TYPE_FUNDS_DEPOSITED", - "TYPE_SIGNER_ADDED", - "TYPE_SIGNER_REMOVED", - "TYPE_BRIDGE_STOPPED", - "TYPE_BRIDGE_RESUMED", - "TYPE_ASSET_LISTED", - "TYPE_LIMITS_UPDATED", - "TYPE_STAKE_TOTAL_SUPPLY", - "TYPE_SIGNER_THRESHOLD_SET", - "TYPE_GOVERNANCE_VALIDATE_ASSET", - "TYPE_ETHEREUM_CONTRACT_CALL_RESULT" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Represents an unspecified or missing value from the input\n - TYPE_STAKE_DEPOSITED: Node vote for a new stake deposit\n - TYPE_STAKE_REMOVED: Node vote for a new stake removed event\n - TYPE_FUNDS_DEPOSITED: Node vote for a new collateral deposit\n - TYPE_SIGNER_ADDED: Node vote for a new signer added to the erc20 bridge\n - TYPE_SIGNER_REMOVED: Node vote for a signer removed from the erc20 bridge\n - TYPE_BRIDGE_STOPPED: Node vote for a bridge stopped event\n - TYPE_BRIDGE_RESUMED: Node vote for a bridge resumed event\n - TYPE_ASSET_LISTED: Node vote for a newly listed asset\n - TYPE_LIMITS_UPDATED: Node vote for an asset limits update\n - TYPE_STAKE_TOTAL_SUPPLY: Node vote to share the total supply of the staking token\n - TYPE_SIGNER_THRESHOLD_SET: Node vote to update the threshold of the signer set for the multisig contract\n - TYPE_GOVERNANCE_VALIDATE_ASSET: Node vote to validate a new assert governance proposal\n - TYPE_ETHEREUM_CONTRACT_CALL_RESULT: Node vote for an Ethereum contract call result" - }, - "v1OracleDataSubmission": { - "type": "object", - "properties": { - "source": { - "$ref": "#/definitions/OracleDataSubmissionOracleSource", - "description": "Source from which the data is coming from." - }, - "payload": { - "type": "string", - "format": "byte", - "description": "Data provided by the data source." - } - }, - "title": "Command to submit new oracle data from third party providers" - }, - "v1OrderAmendment": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "ID of the order to amend." - }, - "marketId": { - "type": "string", - "description": "Market ID that the order was originally submitted to." - }, - "price": { - "type": "string", - "description": "New price for the order. This field is an unsigned integer scaled to the market's decimal places." - }, - "sizeDelta": { - "type": "string", - "format": "int64", - "description": "Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for the new expiry time for the order." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "New time in force for the order." - }, - "peggedOffset": { - "type": "string", - "description": "New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "peggedReference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "New pegged reference for the order." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0." - } - }, - "description": "A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command." - }, - "v1OrderCancellation": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided." - }, - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - } - }, - "description": "A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command." - }, - "v1OrderSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID to submit the order to." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of units." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Which side of the order book the order is for, e.g. buy or sell." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "Time in force indicates how long an order will remain active before it is executed or expires.." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT." - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type of the order." - }, - "reference": { - "type": "string", - "description": "Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times." - }, - "postOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders." - }, - "reduceOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders." - }, - "icebergOpts": { - "$ref": "#/definitions/v1IcebergOpts", - "description": "Iceberg order details. If set, the order will exist on the order book in chunks." - } - }, - "description": "A command that submits an order to the Vega network for a given market." - }, - "v1ProofOfWork": { - "type": "object", - "properties": { - "tid": { - "type": "string", - "description": "Unique transaction identifier used to seed the proof-of-work hash." - }, - "nonce": { - "type": "string", - "format": "uint64", - "description": "Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network." - } - }, - "description": "Components needed for the network to verify proof-of-work." - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1ProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market." - }, - "v1ProtocolUpgradeProposal": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height at which to perform the upgrade." - }, - "vegaReleaseTag": { - "type": "string", - "description": "Release tag for the Vega binary." - } - }, - "description": "A validator command sent manually by a node operator to propose a protocol upgrade." - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1Signature": { - "type": "object", - "properties": { - "value": { - "type": "string", - "description": "Hex encoded bytes of the signature." - }, - "algo": { - "type": "string", - "description": "Algorithm used to create the signature." - }, - "version": { - "type": "integer", - "format": "int64", - "description": "Version of the algorithm used to create the signature." - } - }, - "description": "Signature definition that allows the network to authenticate external data." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1StateVariableProposal": { - "type": "object", - "properties": { - "proposal": { - "$ref": "#/definitions/vegaStateValueProposal", - "description": "Details of the state variable being proposed." - } - }, - "description": "A validator command sent automatically to reach consensus on floating point values." - }, - "v1StopOrderSetup": { - "type": "object", - "properties": { - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Order to be submitted once the trigger is breached." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Indicates if this order is linked to an order or position to derive the order size" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "If this order is linked to a position, provide an optional scaling factor" - }, - "price": { - "type": "string", - "description": "Order will be submitted if the last traded price on the market breaches the given price." - }, - "trailingPercentOffset": { - "type": "string", - "description": "Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted." - } - }, - "description": "Price and expiry configuration for a stop order." - }, - "v1StopOrdersCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - }, - "stopOrderId": { - "type": "string", - "description": "Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided." - } - }, - "description": "A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command." - }, - "v1StopOrdersSubmission": { - "type": "object", - "properties": { - "risesAbove": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price rises above a given trigger price." - }, - "fallsBelow": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price falls below a given trigger price." - } - }, - "description": "A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO)." - }, - "v1TxVersion": { - "type": "string", - "enum": [ - "TX_VERSION_UNSPECIFIED", - "TX_VERSION_V2", - "TX_VERSION_V3" - ], - "default": "TX_VERSION_UNSPECIFIED", - "description": "Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks." - }, - "v1UndelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to undelegate stake from." - }, - "amount": { - "type": "string", - "description": "Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed." - }, - "method": { - "$ref": "#/definitions/v1UndelegateSubmissionMethod", - "description": "Method of delegation." - } - }, - "description": "Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node." - }, - "v1UndelegateSubmissionMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_NOW", - "METHOD_AT_END_OF_EPOCH" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch." - }, - "v1UpdateMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market to change margin mode for." - }, - "mode": { - "$ref": "#/definitions/UpdateMarginModeMode", - "description": "Margin mode to use." - }, - "marginFactor": { - "type": "string", - "title": "Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside" - } - } - }, - "v1UpdatePartyProfile": { - "type": "object", - "properties": { - "alias": { - "type": "string", - "description": "Alias given to the party. It must be unique network-wide." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Freeform data to associate to the party.\nSupport a maximum of 10 entries." - } - }, - "description": "Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed." - }, - "v1UpdateReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the referral set to update." - }, - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1UpdateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged." - }, - "v1UpdateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "New name of the team." - }, - "teamUrl": { - "type": "string", - "description": "New link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "New link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1ValidatorHeartbeat": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID of the validator emitting the heartbeat." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the validator made using their Ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the validator made using their Vega wallet." - }, - "message": { - "type": "string", - "description": "Message which has been signed." - } - }, - "description": "A validator command which is sent automatically at regular intervals by any validator participating in the network.\nIt is used to allow the network to know whether a validator is active, or if they have shut down." - }, - "v1VoteSubmission": { - "type": "object", - "properties": { - "proposalId": { - "type": "string", - "description": "Submit vote for the specified proposal ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Actual value of the vote." - } - }, - "description": "Command that allows a token holder to vote for or against an active governance proposal." - }, - "v1WithdrawSubmission": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "description": "Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to be withdrawn." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Details specific to the foreign chain, such as the receiver address." - } - }, - "description": "Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge." - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaBuiltinAssetDeposit": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "partyId": { - "type": "string", - "description": "Vega party ID i.e. public key." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Deposit for a Vega built-in asset" - }, - "vegaBuiltinAssetEvent": { - "type": "object", - "properties": { - "deposit": { - "$ref": "#/definitions/vegaBuiltinAssetDeposit", - "description": "Built-in asset deposit." - }, - "withdrawal": { - "$ref": "#/definitions/vegaBuiltinAssetWithdrawal", - "description": "Built-in asset withdrawal." - } - }, - "title": "Event related to a Vega built-in asset" - }, - "vegaBuiltinAssetWithdrawal": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "partyId": { - "type": "string", - "description": "Vega network party ID i.e. public key." - }, - "amount": { - "type": "string", - "description": "The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Withdrawal for a Vega built-in asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20AssetDelist": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - } - }, - "title": "Asset deny-listing for an ERC20 token" - }, - "vegaERC20AssetLimitsUpdated": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "sourceEthereumAddress": { - "type": "string", - "description": "Ethereum wallet that initiated the deposit." - }, - "lifetimeLimits": { - "type": "string", - "description": "Updated lifetime limits." - }, - "withdrawThreshold": { - "type": "string", - "description": "Updated withdrawal threshold." - } - } - }, - "vegaERC20AssetList": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "assetSource": { - "type": "string", - "description": "Ethereum address of the asset." - } - }, - "title": "Asset allow-listing for an ERC20 token" - }, - "vegaERC20Deposit": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "sourceEthereumAddress": { - "type": "string", - "description": "Ethereum wallet that initiated the deposit." - }, - "targetPartyId": { - "type": "string", - "description": "Vega party ID i.e. public key that is the target of the deposit." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited." - } - }, - "title": "Asset deposit for an ERC20 token" - }, - "vegaERC20Event": { - "type": "object", - "properties": { - "index": { - "type": "string", - "format": "uint64", - "description": "Index of the log in the transaction." - }, - "block": { - "type": "string", - "format": "uint64", - "description": "Block in which the transaction was added." - }, - "assetList": { - "$ref": "#/definitions/vegaERC20AssetList", - "description": "List an ERC20 asset." - }, - "assetDelist": { - "$ref": "#/definitions/vegaERC20AssetDelist", - "description": "De-list an ERC20 asset." - }, - "deposit": { - "$ref": "#/definitions/vegaERC20Deposit", - "description": "Deposit ERC20 asset." - }, - "withdrawal": { - "$ref": "#/definitions/vegaERC20Withdrawal", - "description": "Withdraw ERC20 asset." - }, - "assetLimitsUpdated": { - "$ref": "#/definitions/vegaERC20AssetLimitsUpdated", - "description": "Update an ERC20 asset." - }, - "bridgeStopped": { - "type": "boolean", - "description": "Bridge operations has been stopped." - }, - "bridgeResumed": { - "type": "boolean", - "description": "Bridge operations has been resumed." - } - }, - "title": "Event related to an ERC20 token" - }, - "vegaERC20MultiSigEvent": { - "type": "object", - "properties": { - "index": { - "type": "string", - "format": "uint64", - "title": "Index of the log in the transaction" - }, - "block": { - "type": "string", - "format": "uint64", - "title": "Block in which the transaction was added" - }, - "signerAdded": { - "$ref": "#/definitions/vegaERC20SignerAdded", - "title": "Add a signer to the erc20 bridge" - }, - "signerRemoved": { - "$ref": "#/definitions/vegaERC20SignerRemoved", - "title": "Remove a signer from the erc20 bridge" - }, - "thresholdSet": { - "$ref": "#/definitions/vegaERC20ThresholdSet", - "title": "Threshold set" - } - }, - "title": "Event related to the ERC20 MultiSig" - }, - "vegaERC20SignerAdded": { - "type": "object", - "properties": { - "newSigner": { - "type": "string", - "title": "Ethereum address of the new signer" - }, - "nonce": { - "type": "string", - "title": "Nonce created by the Vega network used for this new signer" - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable." - } - }, - "title": "New signer added to the ERC20 bridge" - }, - "vegaERC20SignerRemoved": { - "type": "object", - "properties": { - "oldSigner": { - "type": "string", - "title": "Ethereum address of the old signer" - }, - "nonce": { - "type": "string", - "title": "Nonce created by the Vega network used for this old signer" - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable." - } - }, - "title": "Signer removed from the ERC20 bridge" - }, - "vegaERC20ThresholdSet": { - "type": "object", - "properties": { - "newThreshold": { - "type": "integer", - "format": "int64", - "title": "New threshold value to set" - }, - "nonce": { - "type": "string", - "title": "Nonce created by the Vega network" - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable." - } - }, - "title": "Threshold has been updated on the multisig control" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaERC20Withdrawal": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "targetEthereumAddress": { - "type": "string", - "description": "Target Ethereum wallet address." - }, - "referenceNonce": { - "type": "string", - "description": "Reference nonce used for the transaction." - } - }, - "title": "Asset withdrawal for an ERC20 token" - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaErc20WithdrawExt": { - "type": "object", - "properties": { - "receiverAddress": { - "type": "string", - "description": "Address into which the bridge will release the funds." - } - }, - "title": "Extension of data required for the withdraw submissions" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthContractCallEvent": { - "type": "object", - "properties": { - "specId": { - "type": "string", - "description": "ID of the data source spec that triggered this contract call." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Ethereum block height." - }, - "blockTime": { - "type": "string", - "format": "uint64", - "description": "Ethereum block time in Unix seconds." - }, - "result": { - "type": "string", - "format": "byte", - "description": "Result of contract call, packed according to the ABI stored in the associated data source spec." - }, - "error": { - "type": "string", - "description": "Error message if the call failed." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "Source chain for this chain event." - } - }, - "title": "Result of calling an arbitrary Ethereum contract method" - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaKeyValueBundle": { - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "tolerance": { - "type": "string" - }, - "value": { - "$ref": "#/definitions/vegaStateVarValue" - } - } - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMatrixValue": { - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVectorValue" - } - } - } - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaOrderType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LIMIT", - "TYPE_MARKET", - "TYPE_NETWORK" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)", - "title": "Type values for an order" - }, - "vegaPeggedOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Price point the order is linked to." - }, - "offset": { - "type": "string", - "description": "Offset from the price reference." - } - }, - "title": "Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading" - }, - "vegaPeggedReference": { - "type": "string", - "enum": [ - "PEGGED_REFERENCE_UNSPECIFIED", - "PEGGED_REFERENCE_MID", - "PEGGED_REFERENCE_BEST_BID", - "PEGGED_REFERENCE_BEST_ASK" - ], - "default": "PEGGED_REFERENCE_UNSPECIFIED", - "description": "- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference", - "title": "Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point" - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaScalarValue": { - "type": "object", - "properties": { - "value": { - "type": "string" - } - } - }, - "vegaSide": { - "type": "string", - "enum": [ - "SIDE_UNSPECIFIED", - "SIDE_BUY", - "SIDE_SELL" - ], - "default": "SIDE_UNSPECIFIED", - "description": "- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order", - "title": "Side relates to the direction of an order, to Buy, or Sell" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakeDeposited": { - "type": "object", - "properties": { - "ethereumAddress": { - "type": "string", - "title": "Ethereum Address of the user depositing stake (hex encode with 0x prefix)" - }, - "vegaPublicKey": { - "type": "string", - "description": "Hex encoded public key of the party receiving the stake deposit." - }, - "amount": { - "type": "string", - "description": "Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available." - } - } - }, - "vegaStakeRemoved": { - "type": "object", - "properties": { - "ethereumAddress": { - "type": "string", - "description": "Ethereum address of the user removing stake. This should be hex encoded with 0x prefix." - }, - "vegaPublicKey": { - "type": "string", - "description": "Hex encoded public key of the party from which to remove stake." - }, - "amount": { - "type": "string", - "description": "Amount removed as a base 10 unsigned integer scaled to the asset's decimal places." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable." - } - } - }, - "vegaStakeTotalSupply": { - "type": "object", - "properties": { - "tokenAddress": { - "type": "string", - "title": "Address of the staking asset" - }, - "totalSupply": { - "type": "string", - "description": "Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places." - } - } - }, - "vegaStakingEvent": { - "type": "object", - "properties": { - "index": { - "type": "string", - "format": "uint64", - "description": "Index of the log in the transaction." - }, - "block": { - "type": "string", - "format": "uint64", - "description": "Block in which the transaction was added." - }, - "stakeDeposited": { - "$ref": "#/definitions/vegaStakeDeposited" - }, - "stakeRemoved": { - "$ref": "#/definitions/vegaStakeRemoved" - }, - "totalSupply": { - "$ref": "#/definitions/vegaStakeTotalSupply" - } - }, - "description": "Event related to staking on the Vega network." - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaStateValueProposal": { - "type": "object", - "properties": { - "stateVarId": { - "type": "string", - "description": "State variable ID." - }, - "eventId": { - "type": "string", - "description": "Event ID." - }, - "kvb": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaKeyValueBundle" - }, - "description": "Key value tolerance triplets." - } - } - }, - "vegaStateVarValue": { - "type": "object", - "properties": { - "scalarVal": { - "$ref": "#/definitions/vegaScalarValue" - }, - "vectorVal": { - "$ref": "#/definitions/vegaVectorValue" - }, - "matrixVal": { - "$ref": "#/definitions/vegaMatrixValue" - } - } - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaVectorValue": { - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - }, - "vegaWithdrawExt": { - "type": "object", - "properties": { - "erc20": { - "$ref": "#/definitions/vegaErc20WithdrawExt", - "description": "ERC20 withdrawal details." - } - }, - "title": "Withdrawal external details" - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/core.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/core.swagger.json deleted file mode 100644 index 13bfb2112..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/core.swagger.json +++ /dev/null @@ -1,8486 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega core APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "CoreService" - } - ], - "host": "lb.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "FundingPeriodDataPointSource": { - "type": "string", - "enum": [ - "SOURCE_UNSPECIFIED", - "SOURCE_EXTERNAL", - "SOURCE_INTERNAL" - ], - "default": "SOURCE_UNSPECIFIED", - "description": " - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market." - }, - "MarketTradingMode": { - "type": "string", - "enum": [ - "TRADING_MODE_UNSPECIFIED", - "TRADING_MODE_CONTINUOUS", - "TRADING_MODE_BATCH_AUCTION", - "TRADING_MODE_OPENING_AUCTION", - "TRADING_MODE_MONITORING_AUCTION", - "TRADING_MODE_NO_TRADING", - "TRADING_MODE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "TRADING_MODE_UNSPECIFIED", - "description": "- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance", - "title": "Trading mode the market is currently running, also referred to as 'market state'" - }, - "OracleDataSubmissionOracleSource": { - "type": "string", - "enum": [ - "ORACLE_SOURCE_UNSPECIFIED", - "ORACLE_SOURCE_OPEN_ORACLE", - "ORACLE_SOURCE_JSON", - "ORACLE_SOURCE_ETHEREUM" - ], - "default": "ORACLE_SOURCE_UNSPECIFIED", - "description": "- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.", - "title": "Supported oracle sources" - }, - "OrderTimeInForce": { - "type": "string", - "enum": [ - "TIME_IN_FORCE_UNSPECIFIED", - "TIME_IN_FORCE_GTC", - "TIME_IN_FORCE_GTT", - "TIME_IN_FORCE_IOC", - "TIME_IN_FORCE_FOK", - "TIME_IN_FORCE_GFA", - "TIME_IN_FORCE_GFN" - ], - "default": "TIME_IN_FORCE_UNSPECIFIED", - "description": "- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)", - "title": "Time In Force for an order" - }, - "StopOrderExpiryStrategy": { - "type": "string", - "enum": [ - "EXPIRY_STRATEGY_UNSPECIFIED", - "EXPIRY_STRATEGY_CANCELS", - "EXPIRY_STRATEGY_SUBMIT" - ], - "default": "EXPIRY_STRATEGY_UNSPECIFIED", - "description": " - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached." - }, - "StopOrderRejectionReason": { - "type": "string", - "enum": [ - "REJECTION_REASON_UNSPECIFIED", - "REJECTION_REASON_TRADING_NOT_ALLOWED", - "REJECTION_REASON_EXPIRY_IN_THE_PAST", - "REJECTION_REASON_MUST_BE_REDUCE_ONLY", - "REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION", - "REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION", - "REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION", - "REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES" - ], - "default": "REJECTION_REASON_UNSPECIFIED", - "title": "- REJECTION_REASON_UNSPECIFIED: Never valid\n - REJECTION_REASON_TRADING_NOT_ALLOWED: Trading is not allowed yet\n - REJECTION_REASON_EXPIRY_IN_THE_PAST: Expiry of the stop order is in the past\n - REJECTION_REASON_MUST_BE_REDUCE_ONLY: Stop orders submission must be reduce only\n - REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED: Party has reached the maximum stop orders allowed for this market\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION: Stop orders are not allowed if there is no open position\n - REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION: This stop order does not close the position\n - REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID: The percentage value for the linked stop order is invalid\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION: Stop orders are not allowed during the opening auction\n - REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES: Stop OCO orders cannot have the same expiry timestamp" - }, - "StopOrderSizeOverrideSetting": { - "type": "string", - "enum": [ - "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "SIZE_OVERRIDE_SETTING_NONE", - "SIZE_OVERRIDE_SETTING_POSITION" - ], - "default": "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "title": "- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader" - }, - "StopOrderSizeOverrideValue": { - "type": "object", - "properties": { - "percentage": { - "type": "string", - "title": "Scaling percentage of the current position’s size" - } - } - }, - "StopOrderTriggerDirection": { - "type": "string", - "enum": [ - "TRIGGER_DIRECTION_UNSPECIFIED", - "TRIGGER_DIRECTION_RISES_ABOVE", - "TRIGGER_DIRECTION_FALLS_BELOW" - ], - "default": "TRIGGER_DIRECTION_UNSPECIFIED", - "title": "- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level" - }, - "TransactionResultFailureDetails": { - "type": "object", - "properties": { - "error": { - "type": "string", - "title": "Error message explaining the reason for the transaction failing processing" - } - } - }, - "TransactionResultSuccessDetails": { - "type": "object" - }, - "UpdateMarginModeMode": { - "type": "string", - "enum": [ - "MODE_UNSPECIFIED", - "MODE_CROSS_MARGIN", - "MODE_ISOLATED_MARGIN" - ], - "default": "MODE_UNSPECIFIED", - "title": "- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "commandsv1CancelTransfer": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer ID of the transfer to cancel." - } - }, - "description": "Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction." - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1AnnounceNode": { - "type": "object", - "properties": { - "vegaPubKey": { - "type": "string", - "description": "Vega public key of the node being announced." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node being announced." - }, - "chainPubKey": { - "type": "string", - "description": "Public key for the blockchain, currently the node's CometBFT key." - }, - "infoUrl": { - "type": "string", - "description": "URL to the node operators homepage allowing stake holders to make an informed decision when delegating." - }, - "country": { - "type": "string", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node." - }, - "id": { - "type": "string", - "description": "Node ID of the validator, which is the node's public master key." - }, - "name": { - "type": "string", - "description": "Human-readable name of the node." - }, - "avatarUrl": { - "type": "string", - "description": "URL to the node operator's avatar." - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "Vega public key derivation index." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch from which the node is expected to be ready to validate blocks." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the Vega wallet." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - } - }, - "description": "A command that allows a new node operator to announce themselves to the network as a new validator." - }, - "v1ApplyReferralCode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Referral code, normally the referral set ID, for the party to join." - } - }, - "description": "Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch." - }, - "v1AuctionEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "openingAuction": { - "type": "boolean", - "title": "True if the event indicates an auction opening and False otherwise" - }, - "leave": { - "type": "boolean", - "title": "True if the event indicates leaving auction mode and False otherwise" - }, - "start": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the start time for an auction" - }, - "end": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the end time for an auction" - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "Reason this market is/was in auction" - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction" - } - }, - "title": "Auction event indicating a change in auction state, for example starting or ending an auction" - }, - "v1BatchMarketInstructions": { - "type": "object", - "properties": { - "cancellations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "description": "List of order cancellations to be processed sequentially." - }, - "amendments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "description": "List of order amendments to be processed sequentially." - }, - "submissions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "description": "List of order submissions to be processed sequentially." - }, - "stopOrdersCancellation": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "description": "List of stop order cancellations to be processed sequentially." - }, - "stopOrdersSubmission": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "description": "List of stop order submissions to be processed sequentially." - }, - "updateMarginMode": { - "type": "array", - "items": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "title": "Update margin mode instruction" - } - }, - "description": "A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\"." - }, - "v1BatchProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/v1BatchProposalSubmissionTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it." - }, - "v1BatchProposalSubmissionTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal submission" - }, - "v1BeginBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "hash": { - "type": "string" - } - }, - "title": "BeginBlock" - }, - "v1BusEvent": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Unique event ID for the message" - }, - "block": { - "type": "string", - "title": "The batch or block of transactions that the events relate to" - }, - "type": { - "$ref": "#/definitions/v1BusEventType", - "title": "The type of bus event. Must be one of the list below:" - }, - "timeUpdate": { - "$ref": "#/definitions/v1TimeUpdate", - "title": "Time update events" - }, - "ledgerMovements": { - "$ref": "#/definitions/v1LedgerMovements", - "title": "Transfer responses update events" - }, - "positionResolution": { - "$ref": "#/definitions/v1PositionResolution", - "title": "Position resolution events" - }, - "order": { - "$ref": "#/definitions/vegaOrder", - "title": "Order events" - }, - "account": { - "$ref": "#/definitions/vegaAccount", - "title": "Account events" - }, - "party": { - "$ref": "#/definitions/vegaParty", - "title": "Party events" - }, - "trade": { - "$ref": "#/definitions/vegaTrade", - "title": "Trade events" - }, - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "title": "Margin level update events" - }, - "proposal": { - "$ref": "#/definitions/vegaProposal", - "title": "Proposal events for governance" - }, - "vote": { - "$ref": "#/definitions/vegaVote", - "title": "Vote events for governance" - }, - "marketData": { - "$ref": "#/definitions/vegaMarketData", - "title": "Market data events" - }, - "nodeSignature": { - "$ref": "#/definitions/v1NodeSignature", - "title": "Node signature events" - }, - "lossSocialization": { - "$ref": "#/definitions/v1LossSocialization", - "title": "Loss socialization events" - }, - "settlePosition": { - "$ref": "#/definitions/v1SettlePosition", - "title": "Position settlement events" - }, - "settleDistressed": { - "$ref": "#/definitions/v1SettleDistressed", - "title": "Position distressed events" - }, - "marketCreated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "asset": { - "$ref": "#/definitions/vegaAsset", - "title": "Asset events" - }, - "marketTick": { - "$ref": "#/definitions/v1MarketTick", - "title": "Market tick events" - }, - "withdrawal": { - "$ref": "#/definitions/vegaWithdrawal", - "title": "Withdrawal events" - }, - "deposit": { - "$ref": "#/definitions/vegaDeposit", - "title": "Deposit events" - }, - "auction": { - "$ref": "#/definitions/v1AuctionEvent", - "title": "Auction events" - }, - "riskFactor": { - "$ref": "#/definitions/vegaRiskFactor", - "title": "Risk factor events" - }, - "networkParameter": { - "$ref": "#/definitions/vegaNetworkParameter", - "title": "Network parameter events" - }, - "liquidityProvision": { - "$ref": "#/definitions/vegaLiquidityProvision", - "title": "LiquidityProvision events" - }, - "marketUpdated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "oracleSpec": { - "$ref": "#/definitions/vegaOracleSpec", - "title": "OracleSpec events" - }, - "oracleData": { - "$ref": "#/definitions/vegaOracleData", - "title": "OracleData events" - }, - "delegationBalance": { - "$ref": "#/definitions/v1DelegationBalanceEvent", - "title": "Delegation balance events" - }, - "validatorScore": { - "$ref": "#/definitions/v1ValidatorScoreEvent", - "title": "Validator score calculated" - }, - "epochEvent": { - "$ref": "#/definitions/v1EpochEvent", - "title": "Epoch update events" - }, - "validatorUpdate": { - "$ref": "#/definitions/v1ValidatorUpdate", - "title": "Validator update events" - }, - "stakeLinking": { - "$ref": "#/definitions/v1StakeLinking", - "title": "Staking event" - }, - "rewardPayout": { - "$ref": "#/definitions/v1RewardPayoutEvent", - "title": "Reward payout event" - }, - "checkpoint": { - "$ref": "#/definitions/v1CheckpointEvent", - "title": "Checkpoint was created" - }, - "keyRotation": { - "$ref": "#/definitions/v1KeyRotation", - "title": "Key rotation took place" - }, - "stateVar": { - "$ref": "#/definitions/v1StateVar", - "title": "State variable consensus state transition update" - }, - "networkLimits": { - "$ref": "#/definitions/vegaNetworkLimits", - "title": "Network limits events" - }, - "transfer": { - "$ref": "#/definitions/vegaeventsv1Transfer", - "title": "Transfer event" - }, - "rankingEvent": { - "$ref": "#/definitions/v1ValidatorRankingEvent", - "title": "Ranking event" - }, - "erc20MultisigSignerEvent": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEvent", - "title": "ERC20 multi sig signer event" - }, - "erc20MultisigSetThresholdEvent": { - "$ref": "#/definitions/v1ERC20MultiSigThresholdSetEvent", - "title": "ERC20 multi sig set threshold event" - }, - "erc20MultisigSignerAdded": { - "$ref": "#/definitions/v1ERC20MultiSigSignerAdded", - "title": "ERC20 multi sig signer added" - }, - "erc20MultisigSignerRemoved": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemoved", - "title": "ERC20 multi sig signer removed" - }, - "positionStateEvent": { - "$ref": "#/definitions/v1PositionStateEvent", - "title": "Position status for a party in a market" - }, - "ethereumKeyRotation": { - "$ref": "#/definitions/v1EthereumKeyRotation", - "title": "Ethereum key rotation took place" - }, - "protocolUpgradeEvent": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent", - "title": "Protocol upgrade proposal updates" - }, - "beginBlock": { - "$ref": "#/definitions/v1BeginBlock", - "title": "Core is starting to process a new block" - }, - "endBlock": { - "$ref": "#/definitions/v1EndBlock", - "title": "Core finished processing a block" - }, - "protocolUpgradeStarted": { - "$ref": "#/definitions/v1ProtocolUpgradeStarted", - "title": "Core is starting a protocol upgrade" - }, - "settleMarket": { - "$ref": "#/definitions/v1SettleMarket", - "title": "Settle market event for data-node to update positions for settled markets" - }, - "transactionResult": { - "$ref": "#/definitions/v1TransactionResult", - "title": "Result of a transaction processed by the network" - }, - "coreSnapshotEvent": { - "$ref": "#/definitions/v1CoreSnapshotData", - "title": "Core snapshot has been taken at the end of the block" - }, - "protocolUpgradeDataNodeReady": { - "$ref": "#/definitions/v1ProtocolUpgradeDataNodeReady", - "title": "Core snapshot has been taken at the end of the block" - }, - "distressedOrders": { - "$ref": "#/definitions/v1DistressedOrders", - "title": "Parties that had their orders closed because they were distressed" - }, - "expiredOrders": { - "$ref": "#/definitions/v1ExpiredOrders", - "title": "Orders that expired for a given market" - }, - "distressedPositions": { - "$ref": "#/definitions/v1DistressedPositions", - "title": "Open positions on the market that are/were distressed" - }, - "stopOrder": { - "$ref": "#/definitions/v1StopOrderEvent", - "title": "A stop order event" - }, - "fundingPeriod": { - "$ref": "#/definitions/v1FundingPeriod", - "description": "Start or end of a funding period." - }, - "fundingPeriodDataPoint": { - "$ref": "#/definitions/v1FundingPeriodDataPoint", - "description": "Data point within a funding period." - }, - "teamCreated": { - "$ref": "#/definitions/v1TeamCreated", - "title": "Event notifying of the creation of a team.m" - }, - "teamUpdated": { - "$ref": "#/definitions/v1TeamUpdated", - "description": "Event notifying of an update to a team." - }, - "refereeSwitchedTeam": { - "$ref": "#/definitions/v1RefereeSwitchedTeam", - "description": "Event notifying that a referee switched teams." - }, - "refereeJoinedTeam": { - "$ref": "#/definitions/v1RefereeJoinedTeam", - "description": "Event notifying that a referee joined a team." - }, - "referralProgramStarted": { - "$ref": "#/definitions/v1ReferralProgramStarted", - "description": "Event notifying that a referral program has started." - }, - "referralProgramUpdated": { - "$ref": "#/definitions/v1ReferralProgramUpdated", - "description": "Event notifying that a referral program has been updated." - }, - "referralProgramEnded": { - "$ref": "#/definitions/v1ReferralProgramEnded", - "description": "Event notifying that a referral program has ended." - }, - "referralSetCreated": { - "$ref": "#/definitions/v1ReferralSetCreated", - "description": "Event notifying a referral set has been created." - }, - "refereeJoinedReferralSet": { - "$ref": "#/definitions/v1RefereeJoinedReferralSet", - "description": "Event notifying a referee has joined a referral set." - }, - "partyActivityStreak": { - "$ref": "#/definitions/v1PartyActivityStreak", - "title": "Event notifying of an update to a party's activity streak" - }, - "volumeDiscountProgramStarted": { - "$ref": "#/definitions/v1VolumeDiscountProgramStarted", - "description": "Event notifying that a volume discount program has started." - }, - "volumeDiscountProgramUpdated": { - "$ref": "#/definitions/v1VolumeDiscountProgramUpdated", - "description": "Event notifying that a volume discount program has been updated." - }, - "volumeDiscountProgramEnded": { - "$ref": "#/definitions/v1VolumeDiscountProgramEnded", - "description": "Event notifying that a volume discount program has ended." - }, - "referralSetStatsUpdated": { - "$ref": "#/definitions/v1ReferralSetStatsUpdated", - "description": "Event notifying of an update to a referral set's statistics." - }, - "vestingStatsUpdated": { - "$ref": "#/definitions/v1VestingStatsUpdated", - "description": "Event notifying of an update to the vesting statistics." - }, - "volumeDiscountStatsUpdated": { - "$ref": "#/definitions/v1VolumeDiscountStatsUpdated", - "description": "Event notifying of an update to the volume discount statistics." - }, - "feesStats": { - "$ref": "#/definitions/v1FeesStats", - "description": "Event notifying of an update the fees stats for a market." - }, - "fundingPayments": { - "$ref": "#/definitions/v1FundingPayments", - "description": "Event notifying of funding payments at the end of a funding period." - }, - "paidLiquidityFeesStats": { - "$ref": "#/definitions/v1PaidLiquidityFeesStats", - "description": "Event notifying of an update to the liqudity fees stats for a market." - }, - "vestingBalancesSummary": { - "$ref": "#/definitions/v1VestingBalancesSummary", - "description": "Event notifying of an update to the vesting and locked balances." - }, - "transferFees": { - "$ref": "#/definitions/v1TransferFees", - "description": "Event notifying of fees related to a transfer being paid." - }, - "transferFeesDiscount": { - "$ref": "#/definitions/v1TransferFeesDiscount", - "description": "Event notifying of a party's available discounts for transfer fees, per asset." - }, - "partyMarginModeUpdated": { - "$ref": "#/definitions/v1PartyMarginModeUpdated", - "description": "Event notifying of a party's margin mode update on a market." - }, - "partyProfileUpdated": { - "$ref": "#/definitions/v1PartyProfileUpdated", - "description": "Event notifying of a party's profile update." - }, - "market": { - "$ref": "#/definitions/v1MarketEvent", - "title": "Market tick events" - }, - "txErrEvent": { - "$ref": "#/definitions/v1TxErrorEvent", - "title": "Transaction error events, not included in the ALL event type" - }, - "version": { - "type": "integer", - "format": "int64", - "title": "Version of bus event" - }, - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - } - }, - "title": "Bus event is a container for event bus events emitted by Vega" - }, - "v1BusEventType": { - "type": "string", - "enum": [ - "BUS_EVENT_TYPE_UNSPECIFIED", - "BUS_EVENT_TYPE_ALL", - "BUS_EVENT_TYPE_TIME_UPDATE", - "BUS_EVENT_TYPE_LEDGER_MOVEMENTS", - "BUS_EVENT_TYPE_POSITION_RESOLUTION", - "BUS_EVENT_TYPE_ORDER", - "BUS_EVENT_TYPE_ACCOUNT", - "BUS_EVENT_TYPE_PARTY", - "BUS_EVENT_TYPE_TRADE", - "BUS_EVENT_TYPE_MARGIN_LEVELS", - "BUS_EVENT_TYPE_PROPOSAL", - "BUS_EVENT_TYPE_VOTE", - "BUS_EVENT_TYPE_MARKET_DATA", - "BUS_EVENT_TYPE_NODE_SIGNATURE", - "BUS_EVENT_TYPE_LOSS_SOCIALIZATION", - "BUS_EVENT_TYPE_SETTLE_POSITION", - "BUS_EVENT_TYPE_SETTLE_DISTRESSED", - "BUS_EVENT_TYPE_MARKET_CREATED", - "BUS_EVENT_TYPE_ASSET", - "BUS_EVENT_TYPE_MARKET_TICK", - "BUS_EVENT_TYPE_WITHDRAWAL", - "BUS_EVENT_TYPE_DEPOSIT", - "BUS_EVENT_TYPE_AUCTION", - "BUS_EVENT_TYPE_RISK_FACTOR", - "BUS_EVENT_TYPE_NETWORK_PARAMETER", - "BUS_EVENT_TYPE_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_MARKET_UPDATED", - "BUS_EVENT_TYPE_ORACLE_SPEC", - "BUS_EVENT_TYPE_ORACLE_DATA", - "BUS_EVENT_TYPE_DELEGATION_BALANCE", - "BUS_EVENT_TYPE_VALIDATOR_SCORE", - "BUS_EVENT_TYPE_EPOCH_UPDATE", - "BUS_EVENT_TYPE_VALIDATOR_UPDATE", - "BUS_EVENT_TYPE_STAKE_LINKING", - "BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT", - "BUS_EVENT_TYPE_CHECKPOINT", - "BUS_EVENT_TYPE_STREAM_START", - "BUS_EVENT_TYPE_KEY_ROTATION", - "BUS_EVENT_TYPE_STATE_VAR", - "BUS_EVENT_TYPE_NETWORK_LIMITS", - "BUS_EVENT_TYPE_TRANSFER", - "BUS_EVENT_TYPE_VALIDATOR_RANKING", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED", - "BUS_EVENT_TYPE_POSITION_STATE", - "BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL", - "BUS_EVENT_TYPE_BEGIN_BLOCK", - "BUS_EVENT_TYPE_END_BLOCK", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED", - "BUS_EVENT_TYPE_SETTLE_MARKET", - "BUS_EVENT_TYPE_TRANSACTION_RESULT", - "BUS_EVENT_TYPE_SNAPSHOT_TAKEN", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY", - "BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED", - "BUS_EVENT_TYPE_EXPIRED_ORDERS", - "BUS_EVENT_TYPE_DISTRESSED_POSITIONS", - "BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_STOP_ORDER", - "BUS_EVENT_TYPE_FUNDING_PERIOD", - "BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT", - "BUS_EVENT_TYPE_TEAM_CREATED", - "BUS_EVENT_TYPE_TEAM_UPDATED", - "BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM", - "BUS_EVENT_TYPE_REFEREE_JOINED_TEAM", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_CREATED", - "BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET", - "BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_STATS_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED", - "BUS_EVENT_TYPE_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_FUNDING_PAYMENTS", - "BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_SUMMARY", - "BUS_EVENT_TYPE_TRANSFER_FEES_PAID", - "BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED", - "BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED", - "BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED", - "BUS_EVENT_TYPE_MARKET", - "BUS_EVENT_TYPE_TX_ERROR" - ], - "default": "BUS_EVENT_TYPE_UNSPECIFIED", - "description": "- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type", - "title": "Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items" - }, - "v1CheckRawTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction passed the submission checks." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted." - }, - "gasWanted": { - "type": "string", - "format": "int64", - "description": "Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction." - }, - "gasUsed": { - "type": "string", - "format": "int64", - "description": "Unused." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully checked." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "info": { - "type": "string", - "title": "Unused" - } - }, - "title": "Response for checking a version agnostic transaction on Vega" - }, - "v1CheckTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction passed the submission checks." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully checked." - }, - "gasWanted": { - "type": "string", - "format": "int64", - "description": "Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction." - }, - "gasUsed": { - "type": "string", - "format": "int64", - "description": "Unused." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully submitted." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "info": { - "type": "string", - "description": "Unused." - } - } - }, - "v1CheckpointEvent": { - "type": "object", - "properties": { - "hash": { - "type": "string" - }, - "blockHash": { - "type": "string" - }, - "blockHeight": { - "type": "string", - "format": "uint64" - } - } - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1CoreSnapshotData": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which snapshot was taken" - }, - "blockHash": { - "type": "string", - "title": "Hash of the snapshot block" - }, - "coreVersion": { - "type": "string", - "description": "Semver version number of the core." - }, - "protocolUpgradeBlock": { - "type": "boolean", - "title": "Indicates if the snapshot is taken as part of protocol upgrade" - } - }, - "description": "CoreSnapshotData represents the core snapshot data." - }, - "v1CreateReferralSet": { - "type": "object", - "properties": { - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1CreateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set." - }, - "v1CreateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "External link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "External link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1Data": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - } - }, - "data": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Data holds all the properties of the data" - }, - "matchedSpecIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data." - }, - "broadcastAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec." - }, - "metaData": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Holds all metadata properties" - }, - "error": { - "type": "string", - "description": "Error message if the data could not be sourced." - } - }, - "description": "Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data." - }, - "v1DelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to delegate stake to." - }, - "amount": { - "type": "string", - "description": "Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places." - } - }, - "description": "Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator." - }, - "v1DelegationBalanceEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "nodeId": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "epochSeq": { - "type": "string" - } - }, - "title": "DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect" - }, - "v1DistressedOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "parties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of Party IDs i.e. each party's public key for the event" - } - }, - "title": "Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders" - }, - "v1DistressedPositions": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressedParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, that are distressed but still have open volume" - }, - "safeParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position" - } - }, - "description": "Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field." - }, - "v1ERC20MultiSigSignerAdded": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "title": "ID of the signature bundle" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node to be added" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "newSigner": { - "type": "string", - "title": "Ethereum address of the new signer" - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was added for" - } - } - }, - "v1ERC20MultiSigSignerEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEventType" - }, - "signer": { - "type": "string" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ERC20MultiSigSignerEventType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ADDED", - "TYPE_REMOVED" - ], - "default": "TYPE_UNSPECIFIED" - }, - "v1ERC20MultiSigSignerRemoved": { - "type": "object", - "properties": { - "signatureSubmitters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemovedSubmitter" - }, - "title": "List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node which is to be removed" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "oldSigner": { - "type": "string", - "title": "Ethereum address of the signer to be removed" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was removed for" - } - } - }, - "v1ERC20MultiSigSignerRemovedSubmitter": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "description": "Signature ID of the signer removed." - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - } - } - }, - "v1ERC20MultiSigThresholdSetEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "newThreshold": { - "type": "integer", - "format": "int64" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1EndBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - } - }, - "title": "EndBlock" - }, - "v1EpochEvent": { - "type": "object", - "properties": { - "seq": { - "type": "string", - "format": "uint64", - "title": "Sequence number that increases by one each epoch" - }, - "action": { - "$ref": "#/definitions/vegaEpochAction", - "title": "Action tells us what action is taking place" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch started" - }, - "expireTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch should end" - }, - "endTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch actually ended" - } - }, - "title": "Epoch details" - }, - "v1EthereumKeyRotateSubmission": { - "type": "object", - "properties": { - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newAddress": { - "type": "string", - "description": "Ethereum address that is being rotated to." - }, - "currentAddress": { - "type": "string", - "description": "Ethereum address of the node's current Ethereum keys." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature signed by the new Ethereum key that can be verified to prove ownership." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated." - }, - "v1EthereumKeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Ethereum key" - }, - "oldAddress": { - "type": "string", - "title": "Ethereum address that was previously associated with the node" - }, - "newAddress": { - "type": "string", - "title": "Ethereum address that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about an Ethereum key rotation" - }, - "v1ExpiredOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "orderIds": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of expired order IDs" - } - } - }, - "v1ExternalData": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/v1Data" - } - } - }, - "v1FeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "title": "Market the fees were paid in" - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalRewardsReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral rewards received by the referrer of the referral set." - }, - "referrerRewardsGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ReferrerRewardsGenerated" - }, - "description": "Referral rewards generated by all referee taker fees." - }, - "refereesDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral discounts applied to all referee taker fees." - }, - "volumeDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total volume discounts applied to all referee taker fees." - }, - "totalMakerFeesReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total maker fees received by the maker side." - }, - "makerFeesGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1MakerFeesGenerated" - }, - "description": "Maker fees paid by all trade aggressors, and which makers the fees were paid to." - }, - "totalFeesPaidAndReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total trading fees received and paid by the party." - } - }, - "title": "Fees rewards and discounts paid / received per parties during an epoch" - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1FundingPayment": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "ID of the party." - }, - "amount": { - "type": "string", - "description": "The amount paid, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "The amount gained or lost by a party as a result of a funding payment." - }, - "v1FundingPayments": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period associated with these payments." - }, - "payments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1FundingPayment" - }, - "description": "List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "Event notifying of funding payments at the end of a funding period." - }, - "v1FundingPeriod": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market for which this funding period relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period." - }, - "start": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period started." - }, - "end": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period ended." - }, - "fundingPayment": { - "type": "string", - "description": "Funding payment for this period as the difference between the time-weighted average price of the external and internal data point." - }, - "fundingRate": { - "type": "string", - "description": "Percentage difference between the time-weighted average price of the external and internal data point." - }, - "internalTwap": { - "type": "string", - "description": "TWAP for this period based on the internal data-points." - }, - "externalTwap": { - "type": "string", - "description": "TWAP for this period based on the external data-points." - } - }, - "description": "Event notifying on the details of a funding interval for a perpetuals market." - }, - "v1FundingPeriodDataPoint": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID which the data point relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period this data point belongs to." - }, - "dataPointType": { - "$ref": "#/definitions/FundingPeriodDataPointSource", - "description": "Origin of the data point." - }, - "price": { - "type": "string", - "description": "Price of the asset as seen by this data point." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the data point was received." - }, - "twap": { - "type": "string", - "description": "The TWAP for this source with this data-point added." - } - }, - "description": "Event notifying a data point for a funding period." - }, - "v1GetSpamStatisticsResponse": { - "type": "object", - "properties": { - "chainId": { - "type": "string", - "description": "Chain ID for which the statistics are captured." - }, - "statistics": { - "$ref": "#/definitions/v1SpamStatistics", - "title": "Spam statistics for the party" - } - }, - "title": "Response containing all the spam statistics of a party for the current epoch" - }, - "v1GetVegaTimeResponse": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "title": "Timestamp representation of current VegaTime as represented in\nUnix nanoseconds, for example `1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`" - } - }, - "title": "Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"" - }, - "v1IcebergOpts": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is made visible and can be traded with during the execution of a single order." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "Minimum allowed remaining size of the order before it is replenished back to its peak size." - } - }, - "title": "Iceberg order options" - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1IssueSignatures": { - "type": "object", - "properties": { - "submitter": { - "type": "string", - "description": "Ethereum address which will submit the signatures to the smart contract." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "What kind of signatures to generate, namely for whether a signer is being added or removed." - }, - "validatorNodeId": { - "type": "string", - "description": "Node ID of the validator node that will be signed in or out of the smart contract." - } - }, - "description": "Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command." - }, - "v1JoinTeam": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the team to join, this is the same as the referral code used to generate the team." - } - }, - "description": "Command that allows the submitter to join a team or change teams if they are already a member of a team." - }, - "v1KeyRotateSubmission": { - "type": "object", - "properties": { - "newPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "New Vega public key derivation index." - }, - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newPubKey": { - "type": "string", - "description": "Vega public key that would be rotated to." - }, - "currentPubKeyHash": { - "type": "string", - "description": "Hash of the node's current Vega public key." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated." - }, - "v1KeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Vega key" - }, - "oldPubKey": { - "type": "string", - "title": "Vega public key that was previously associated with the node" - }, - "newPubKey": { - "type": "string", - "title": "Vega public key that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about a Vega key rotation" - }, - "v1LastBlockHeightResponse": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64", - "title": "Last block height" - }, - "hash": { - "type": "string", - "title": "Last block hash" - }, - "spamPowHashFunction": { - "type": "string", - "title": "Supported proof of work hash function" - }, - "spamPowDifficulty": { - "type": "integer", - "format": "int64", - "title": "Difficulty of the proof of work, i.e. the target number of zeros" - }, - "spamPowNumberOfPastBlocks": { - "type": "integer", - "format": "int64", - "title": "Supported proof of work number of blocks behind current height allowed" - }, - "spamPowNumberOfTxPerBlock": { - "type": "integer", - "format": "int64", - "title": "Allowed number of transactions per block" - }, - "spamPowIncreasingDifficulty": { - "type": "boolean", - "title": "Boolean indicating whether increasing difficulty is allowed for using the\nsame height for more than `spam_pow_number_of_past_blocks` transactions" - }, - "chainId": { - "type": "string", - "title": "Network chain id from which the block comes from" - } - }, - "title": "Response with the height of the last block processed by\ntendermint" - }, - "v1LedgerMovements": { - "type": "object", - "properties": { - "ledgerMovements": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerMovement" - }, - "title": "One or more entries containing internal transfer information" - } - }, - "title": "Transfer responses event contains a collection of transfer information" - }, - "v1LiquidityProvisionAmendment": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wants to amend the liquidity commitment for." - }, - "commitmentAmount": { - "type": "string", - "description": "New commitment amount." - }, - "fee": { - "type": "string", - "description": "New nominated liquidity fee factor." - }, - "reference": { - "type": "string", - "description": "New arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged." - }, - "v1LiquidityProvisionCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter will stop providing liquidity for." - } - }, - "description": "Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market." - }, - "v1LiquidityProvisionSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wishes to provide liquidity for." - }, - "commitmentAmount": { - "type": "string", - "description": "Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "reference": { - "type": "string", - "description": "Arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market." - }, - "v1LossSocialization": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "amount": { - "type": "string", - "title": "Amount distributed" - } - }, - "title": "Loss socialization event contains details on the amount of wins unable to be distributed" - }, - "v1MakerFeesGenerated": { - "type": "object", - "properties": { - "taker": { - "type": "string", - "description": "Party that paid the fees." - }, - "makerFeesPaid": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of maker fees paid by the taker to the maker." - } - }, - "title": "Maker fees generated by the trade aggressor" - }, - "v1MarketEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "payload": { - "type": "string", - "title": "Payload is a unique information string" - } - }, - "title": "MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging" - }, - "v1MarketTick": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Market ID for the event" - }, - "time": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Market tick event contains the time value for when a particular market was last processed on Vega" - }, - "v1NodeSignature": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the resource that the signature relates to." - }, - "sig": { - "type": "string", - "format": "byte", - "description": "Signature generated by the node." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "Kind of resource being signed." - } - }, - "description": "A validator command sent automatically containing a signature that can be used on a foreign chain to process an action." - }, - "v1NodeSignatureKind": { - "type": "string", - "enum": [ - "NODE_SIGNATURE_KIND_UNSPECIFIED", - "NODE_SIGNATURE_KIND_ASSET_NEW", - "NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED", - "NODE_SIGNATURE_KIND_ASSET_UPDATE" - ], - "default": "NODE_SIGNATURE_KIND_UNSPECIFIED", - "description": "- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.", - "title": "Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc" - }, - "v1ObserveEventBusResponse": { - "type": "object", - "properties": { - "events": { - "type": "array", - "items": { - "$ref": "#/definitions/v1BusEvent" - }, - "description": "One or more events that match the subscription request criteria." - } - }, - "title": "Response to a subscribed stream of events from the Vega event bus" - }, - "v1OneOffGovernanceTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "v1OracleDataSubmission": { - "type": "object", - "properties": { - "source": { - "$ref": "#/definitions/OracleDataSubmissionOracleSource", - "description": "Source from which the data is coming from." - }, - "payload": { - "type": "string", - "format": "byte", - "description": "Data provided by the data source." - } - }, - "title": "Command to submit new oracle data from third party providers" - }, - "v1OrderAmendment": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "ID of the order to amend." - }, - "marketId": { - "type": "string", - "description": "Market ID that the order was originally submitted to." - }, - "price": { - "type": "string", - "description": "New price for the order. This field is an unsigned integer scaled to the market's decimal places." - }, - "sizeDelta": { - "type": "string", - "format": "int64", - "description": "Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for the new expiry time for the order." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "New time in force for the order." - }, - "peggedOffset": { - "type": "string", - "description": "New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "peggedReference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "New pegged reference for the order." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0." - } - }, - "description": "A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command." - }, - "v1OrderCancellation": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided." - }, - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - } - }, - "description": "A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command." - }, - "v1OrderSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID to submit the order to." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of units." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Which side of the order book the order is for, e.g. buy or sell." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "Time in force indicates how long an order will remain active before it is executed or expires.." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT." - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type of the order." - }, - "reference": { - "type": "string", - "description": "Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times." - }, - "postOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders." - }, - "reduceOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders." - }, - "icebergOpts": { - "$ref": "#/definitions/v1IcebergOpts", - "description": "Iceberg order details. If set, the order will exist on the order book in chunks." - } - }, - "description": "A command that submits an order to the Vega network for a given market." - }, - "v1PaidLiquidityFeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market the fees were paid in." - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalFeesPaid": { - "type": "string", - "description": "Total fees paid across all parties." - }, - "feesPaidPerParty": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Fees paid per party." - } - } - }, - "v1PartyActivityStreak": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "The party." - }, - "activeFor": { - "type": "string", - "format": "uint64", - "description": "How many epoch this party has been active for." - }, - "inactiveFor": { - "type": "string", - "format": "uint64", - "description": "how many epoch this party has been inactive for." - }, - "isActive": { - "type": "boolean", - "description": "Is this party considered active or not." - }, - "rewardDistributionActivityMultiplier": { - "type": "string", - "description": "The current rewards distribution multiplier for this party." - }, - "rewardVestingActivityMultiplier": { - "type": "string", - "description": "The vesting multiplier for this party." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "The epoch this information is relevant to." - }, - "tradedVolume": { - "type": "string", - "title": "Party's traded volume at the end of the given epoch" - }, - "openVolume": { - "type": "string", - "title": "Party's open interest volume at the end of the given epoch" - } - }, - "title": "The updated activity streak of a party at end of epoch" - }, - "v1PartyAmount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Receiving party ID." - }, - "amount": { - "type": "string", - "description": "Amount received." - }, - "quantumAmount": { - "type": "string", - "description": "Amount value in quantum." - } - }, - "title": "A pair of a party and amount" - }, - "v1PartyLockedBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "untilEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the balance will be released." - }, - "balance": { - "type": "string", - "description": "Locked balance." - } - }, - "description": "A party's locked balance for a given asset." - }, - "v1PartyMarginModeUpdated": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Unique ID of the market in which the update happened." - }, - "partyId": { - "type": "string", - "description": "Unique ID of the party that updated their margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Updated margin mode." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor for the market. Isolated mode only." - }, - "minTheoreticalMarginFactor": { - "type": "string", - "description": "Minimum theoretical margin factor for the market. Isolated mode only." - }, - "maxTheoreticalLeverage": { - "type": "string", - "description": "Maximum theoretical leverage for the market. Isolated mode only." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the update happened." - } - } - }, - "v1PartyProfileUpdated": { - "type": "object", - "properties": { - "updatedProfile": { - "$ref": "#/definitions/vegaPartyProfile", - "description": "Party's profile updated." - } - } - }, - "v1PartyVestingBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "balance": { - "type": "string", - "description": "Balance that is vested." - } - }, - "description": "Balance that is being vested for the party." - }, - "v1PartyVestingStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "The party." - }, - "rewardBonusMultiplier": { - "type": "string", - "description": "The bonus multiplier applied on the reward." - }, - "quantumBalance": { - "type": "string", - "description": "The balance of the party, in quantum." - } - }, - "description": "The vesting stats for a given party." - }, - "v1PartyVestingSummary": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party ID." - }, - "partyLockedBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyLockedBalance" - }, - "description": "List of locked balances." - }, - "partyVestingBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingBalance" - }, - "description": "List of vesting balances." - } - }, - "title": "Summary of a party's vesting balances" - }, - "v1PartyVolumeDiscountStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to fees." - }, - "runningVolume": { - "type": "string", - "description": "The party's running volume." - } - }, - "description": "Volume discount stats for a given party." - }, - "v1PoWBlockState": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height for the current Proof of Work state statistics" - }, - "blockHash": { - "type": "string", - "title": "Hash of the current block" - }, - "transactionsSeen": { - "type": "string", - "format": "uint64", - "title": "Total number of transactions seen in the block" - }, - "expectedDifficulty": { - "type": "string", - "format": "uint64", - "description": "This is the minimum required difficulty for the next transaction submitted on this block\nif it is possible to submit more transactions on this block, otherwise nil." - }, - "hashFunction": { - "type": "string", - "title": "Hashing function used to calculate the block hash" - }, - "difficulty": { - "type": "string", - "format": "uint64", - "title": "Base difficulty for this block for when transactions seen \u003c tx_per_block" - }, - "txPerBlock": { - "type": "string", - "format": "uint64", - "title": "Number of transactions that can have their proof-of-work calculated with this block hash before\neither the difficulty increases, or no more transactions can use this block hash" - }, - "increasingDifficulty": { - "type": "boolean", - "title": "Whether or not this block allows for increasing proof-of-work difficulty if the\ntx-per-block-hash limit has been reached" - } - }, - "title": "Proof of Work state for a given block" - }, - "v1PoWStatistic": { - "type": "object", - "properties": { - "blockStates": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PoWBlockState" - }, - "title": "Block state for each block in scope for PoW calculation" - }, - "bannedUntil": { - "type": "string", - "title": "PoW banned until timestamp as RFC3339Nano" - }, - "numberOfPastBlocks": { - "type": "string", - "format": "uint64", - "title": "Number of block behind the current block whose hash can be used for proof-of-work calculations" - } - }, - "title": "Proof of work statistics for a party" - }, - "v1PositionResolution": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressed": { - "type": "string", - "format": "int64", - "title": "Number of distressed traders" - }, - "closed": { - "type": "string", - "format": "int64", - "title": "Number of close outs" - }, - "markPrice": { - "type": "string", - "title": "Mark price as a string representing a scaled price" - } - }, - "title": "Position resolution event contains information on distressed trades" - }, - "v1PositionStateEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Party ID for this position update" - }, - "marketId": { - "type": "string", - "title": "Market ID for this position update" - }, - "size": { - "type": "string", - "format": "int64", - "title": "Current position" - }, - "potentialBuys": { - "type": "string", - "format": "int64", - "title": "Potential orders" - }, - "potentialSells": { - "type": "string", - "format": "int64" - }, - "vwBuyPrice": { - "type": "string", - "title": "Volume weighted prices" - }, - "vwSellPrice": { - "type": "string" - } - }, - "title": "Position state event contains the current position state for a single party in a single market" - }, - "v1ProofOfWork": { - "type": "object", - "properties": { - "tid": { - "type": "string", - "description": "Unique transaction identifier used to seed the proof-of-work hash." - }, - "nonce": { - "type": "string", - "format": "uint64", - "description": "Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network." - } - }, - "description": "Components needed for the network to verify proof-of-work." - }, - "v1PropagateChainEventResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "title": "Success will be true if the event was accepted by the node,\n**Important** - success does not mean that the event is confirmed by consensus" - } - }, - "title": "Response for a new event sent by the blockchain queue to be propagated on Vega" - }, - "v1Property": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "value": { - "type": "string", - "description": "Value of the property." - } - }, - "description": "Property describes one property of data spec with a key with its value." - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1ProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market." - }, - "v1ProtocolUpgradeDataNodeReady": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the data node is ready for protocol upgrade" - }, - "v1ProtocolUpgradeEvent": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which to perform the upgrade" - }, - "vegaReleaseTag": { - "type": "string", - "title": "Release tag for the vega binary" - }, - "approvers": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Tendermint validators that have agreed to the upgrade" - }, - "status": { - "$ref": "#/definitions/v1ProtocolUpgradeProposalStatus", - "title": "Status of the proposal" - } - } - }, - "v1ProtocolUpgradeProposal": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height at which to perform the upgrade." - }, - "vegaReleaseTag": { - "type": "string", - "description": "Release tag for the Vega binary." - } - }, - "description": "A validator command sent manually by a node operator to propose a protocol upgrade." - }, - "v1ProtocolUpgradeProposalStatus": { - "type": "string", - "enum": [ - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED" - ], - "default": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "title": "- PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected" - }, - "v1ProtocolUpgradeStarted": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the core is starting a protocol upgrade" - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1RecurringGovernanceTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "v1RefereeJoinedReferralSet": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the referral set the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the set." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the set." - } - } - }, - "v1RefereeJoinedTeam": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the team the referee joined." - }, - "referee": { - "type": "string", - "description": "The party that joined the team." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined a team." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - } - }, - "v1RefereeStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Unique ID of the party." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to the party." - }, - "epochNotionalTakerVolume": { - "type": "string", - "title": "Current referee notional taker volume" - } - } - }, - "v1RefereeSwitchedTeam": { - "type": "object", - "properties": { - "fromTeamId": { - "type": "string", - "description": "The unique identifier of the team the referee left." - }, - "toTeamId": { - "type": "string", - "description": "The unique identifier of the team joined." - }, - "referee": { - "type": "string", - "description": "The party that switched team." - }, - "switchedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party switched the team." - } - } - }, - "v1ReferralProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the referral program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1ReferralProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "Referral program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program started." - } - } - }, - "v1ReferralProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "The updated referral program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program was updated." - } - } - }, - "v1ReferralSetCreated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the created set." - }, - "referrer": { - "type": "string", - "description": "Party that created the set." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was updated." - } - } - }, - "v1ReferralSetStatsUpdated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the set's statistics are updated." - }, - "referralSetRunningNotionalTakerVolume": { - "type": "string", - "description": "Running volume for the set based on the window length of the current\nreferral program." - }, - "refereesStats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1RefereeStats" - }, - "description": "Referees' statistics for that epoch." - }, - "rewardFactor": { - "type": "string", - "description": "Reward factor applied to the trades." - }, - "rewardsMultiplier": { - "type": "string", - "description": "Rewards multiplier applied to the trades." - }, - "rewardsFactorMultiplier": { - "type": "string", - "description": "Rewards factor multiplier for the trades." - }, - "wasEligible": { - "type": "boolean", - "description": "Indicates if the referral set was eligible to be part of the referral program." - }, - "referrerTakerVolume": { - "type": "string", - "title": "Taker volume of the referrer" - } - } - }, - "v1ReferrerRewardsGenerated": { - "type": "object", - "properties": { - "referrer": { - "type": "string", - "description": "Referrer party." - }, - "generatedReward": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of rewards generated per party." - } - }, - "title": "Rewards generated for referrers by each of their referees" - }, - "v1RewardPayoutEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "percentOfTotalReward": { - "type": "string" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "rewardType": { - "type": "string" - }, - "lockedUntilEpoch": { - "type": "string" - }, - "quantumAmount": { - "type": "string" - }, - "gameId": { - "type": "string" - } - } - }, - "v1SettleDistressed": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID i.e. a party's public key for the event" - }, - "margin": { - "type": "string", - "title": "Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - }, - "price": { - "type": "string", - "title": "Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - } - }, - "title": "Settle distressed event contains information on distressed trading parties who are closed out" - }, - "v1SettleMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly" - }, - "v1SettlePosition": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "tradeSettlements": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TradeSettlement" - }, - "title": "A collection of 1 or more trade settlements" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle position event contains position settlement information for a party" - }, - "v1Signature": { - "type": "object", - "properties": { - "value": { - "type": "string", - "description": "Hex encoded bytes of the signature." - }, - "algo": { - "type": "string", - "description": "Algorithm used to create the signature." - }, - "version": { - "type": "integer", - "format": "int64", - "description": "Version of the algorithm used to create the signature." - } - }, - "description": "Signature definition that allows the network to authenticate external data." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1SpamStatistic": { - "type": "object", - "properties": { - "countForEpoch": { - "type": "string", - "format": "uint64", - "title": "Current transaction count received from the party during this epoch for this policy" - }, - "maxForEpoch": { - "type": "string", - "format": "uint64", - "title": "Maximum number of transactions allowed for this policy in an epoch" - }, - "bannedUntil": { - "type": "string", - "title": "If blocked the timestamp when the party will be unblocked as RFC3339Nano" - }, - "minTokensRequired": { - "type": "string", - "title": "Effective minimum number of tokens required to submit a transaction of this type" - } - }, - "title": "Statistics for a given spam policy" - }, - "v1SpamStatistics": { - "type": "object", - "properties": { - "proposals": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for proposal transactions made by the party." - }, - "delegations": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for delegation transactions made by the party." - }, - "transfers": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transfer transactions made by the party." - }, - "nodeAnnouncements": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for node announcement transactions made by the party." - }, - "votes": { - "$ref": "#/definitions/v1VoteSpamStatistics", - "description": "Statistics for proposal votes made by the party." - }, - "pow": { - "$ref": "#/definitions/v1PoWStatistic", - "description": "Statistics for proof of work difficulty observed per block for the party." - }, - "issueSignatures": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for multisig signatures issued for the party." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch in which these statistics apply to." - }, - "createReferralSet": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transactions made by the party to create referral sets." - }, - "updateReferralSet": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transactions made by the party to update referral sets." - }, - "applyReferralCode": { - "$ref": "#/definitions/v1SpamStatistic", - "description": "Statistics for transactions made by the party to apply referral codes." - } - }, - "title": "Complete spam statistics captured for a given party" - }, - "v1StakeLinking": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Internal ID for this staking event" - }, - "type": { - "$ref": "#/definitions/v1StakeLinkingType", - "description": "Stake linking event type." - }, - "ts": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the event was emitted by Ethereum." - }, - "party": { - "type": "string", - "description": "Party to whom the event is directed at." - }, - "amount": { - "type": "string", - "description": "Amount of stake deposited or removed." - }, - "status": { - "$ref": "#/definitions/v1StakeLinkingStatus", - "description": "Status of the event." - }, - "finalizedAt": { - "type": "string", - "format": "int64", - "description": "Time at which the Vega network finalised the state of the event." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction in which the event happened." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block when the event happened." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Block time." - }, - "logIndex": { - "type": "string", - "format": "uint64", - "description": "Log index." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum address from which the stake link was initiated." - } - }, - "title": "StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network" - }, - "v1StakeLinkingStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_ACCEPTED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network" - }, - "v1StakeLinkingType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LINK", - "TYPE_UNLINK" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction" - }, - "v1StateVar": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "eventId": { - "type": "string" - }, - "state": { - "type": "string" - } - }, - "title": "StateVar event updates on state changes in state variable consensus" - }, - "v1Statistics": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Current block height as reported by the Vega blockchain" - }, - "backlogLength": { - "type": "string", - "format": "uint64", - "title": "Current backlog length i.e., number of transactions, that are waiting to be included in a block" - }, - "totalPeers": { - "type": "string", - "format": "uint64", - "title": "Total number of connected peers to this node" - }, - "genesisTime": { - "type": "string", - "title": "Genesis block date and time formatted in ISO-8601 datetime format with nanosecond precision" - }, - "currentTime": { - "type": "string", - "title": "Current system date and time formatted in ISO-8601 datetime format with nanosecond precision" - }, - "vegaTime": { - "type": "string", - "title": "Current Vega date and time formatted in ISO-8601 datetime format with nanosecond precision" - }, - "status": { - "$ref": "#/definitions/vegaChainStatus", - "title": "Status of the connection to the Vega blockchain" - }, - "txPerBlock": { - "type": "string", - "format": "uint64", - "title": "Transactions per block" - }, - "averageTxBytes": { - "type": "string", - "format": "uint64", - "title": "Average transaction size in bytes" - }, - "averageOrdersPerBlock": { - "type": "string", - "format": "uint64", - "title": "Average orders per block" - }, - "tradesPerSecond": { - "type": "string", - "format": "uint64", - "title": "Trades emitted per second" - }, - "ordersPerSecond": { - "type": "string", - "format": "uint64", - "title": "Orders processed per second" - }, - "totalMarkets": { - "type": "string", - "format": "uint64", - "title": "Total markets on this Vega network" - }, - "totalAmendOrder": { - "type": "string", - "format": "uint64", - "title": "Total number of order amendments since genesis across all markets" - }, - "totalCancelOrder": { - "type": "string", - "format": "uint64", - "title": "Total number of order cancellations since genesis across all markets" - }, - "totalCreateOrder": { - "type": "string", - "format": "uint64", - "title": "Total number of order submissions since genesis across all markets" - }, - "totalOrders": { - "type": "string", - "format": "uint64", - "title": "Total number of orders processed since genesis across all markets" - }, - "totalTrades": { - "type": "string", - "format": "uint64", - "title": "Total number of trades emitted since genesis across all markets" - }, - "orderSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to order data" - }, - "tradeSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to trade data" - }, - "candleSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to candlestick data" - }, - "marketDepthSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to market depth data" - }, - "positionsSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to positions data" - }, - "accountSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to account data" - }, - "marketDataSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to market data" - }, - "appVersionHash": { - "type": "string", - "title": "Version hash of the Vega node software" - }, - "appVersion": { - "type": "string", - "title": "Version of the Vega node software" - }, - "chainVersion": { - "type": "string", - "title": "Version of the underlying Vega blockchain" - }, - "blockDuration": { - "type": "string", - "format": "uint64", - "title": "Current block duration, in nanoseconds" - }, - "uptime": { - "type": "string", - "title": "Total uptime for this node formatted in ISO-8601 datetime format with nanosecond precision" - }, - "chainId": { - "type": "string", - "title": "Unique ID for the underlying Vega blockchain" - }, - "marketDepthUpdatesSubscriptions": { - "type": "integer", - "format": "int64", - "title": "Current number of stream subscribers to market depth update data" - }, - "blockHash": { - "type": "string", - "title": "Current block hash" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Current epoch" - }, - "epochStartTime": { - "type": "string", - "title": "Epoch start time" - }, - "epochExpiryTime": { - "type": "string", - "title": "Epoch expected end time" - }, - "eventCount": { - "type": "string", - "format": "uint64", - "title": "Number of events in the last block" - }, - "eventsPerSecond": { - "type": "string", - "format": "uint64", - "title": "Rate of events per second in the last block" - } - }, - "title": "Vega domain specific statistics as reported by the node the caller is connected to" - }, - "v1StatisticsResponse": { - "type": "object", - "properties": { - "statistics": { - "$ref": "#/definitions/v1Statistics" - } - }, - "title": "Response containing statistics about the Vega network" - }, - "v1StopOrderEvent": { - "type": "object", - "properties": { - "submission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "stopOrder": { - "$ref": "#/definitions/vegaStopOrder" - } - } - }, - "v1StopOrderSetup": { - "type": "object", - "properties": { - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Order to be submitted once the trigger is breached." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Indicates if this order is linked to an order or position to derive the order size" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "If this order is linked to a position, provide an optional scaling factor" - }, - "price": { - "type": "string", - "description": "Order will be submitted if the last traded price on the market breaches the given price." - }, - "trailingPercentOffset": { - "type": "string", - "description": "Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted." - } - }, - "description": "Price and expiry configuration for a stop order." - }, - "v1StopOrdersCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - }, - "stopOrderId": { - "type": "string", - "description": "Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided." - } - }, - "description": "A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command." - }, - "v1StopOrdersSubmission": { - "type": "object", - "properties": { - "risesAbove": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price rises above a given trigger price." - }, - "fallsBelow": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price falls below a given trigger price." - } - }, - "description": "A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO)." - }, - "v1SubmitRawTransactionRequestType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ASYNC", - "TYPE_SYNC", - "TYPE_COMMIT" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_ASYNC: Transaction will be submitted without waiting for response\n - TYPE_SYNC: Transaction will be submitted, and blocking until the\ntendermint mempool returns a response\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the tendermint\nnetwork has committed it into a block. Used only for debugging,\nnot for submitting transactions", - "title": "Blockchain transaction type" - }, - "v1SubmitRawTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction was validated and submitted to the chain's mempool." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction, which can be used to identify the transaction in a node's event stream." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully submitted." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "height": { - "type": "string", - "format": "int64", - "description": "Unused." - } - }, - "title": "Response for submitting a version agnostic transaction on Vega" - }, - "v1SubmitTransactionRequestType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ASYNC", - "TYPE_SYNC", - "TYPE_COMMIT" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Blockchain transaction type.\n\n - TYPE_ASYNC: Transaction will be submitted without waiting for a response.\n - TYPE_SYNC: Transaction will be submitted, and blocking until the mempool returns a response.\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the network has committed it into a block.\nUsed only for debugging local network, not for submitting transactions." - }, - "v1SubmitTransactionResponse": { - "type": "object", - "properties": { - "success": { - "type": "boolean", - "description": "Whether or not the transaction was validated and submitted to the chain's mempool." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction, which can be used to identify the transaction in a node's event stream." - }, - "code": { - "type": "integer", - "format": "int64", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted." - }, - "data": { - "type": "string", - "description": "Further details for why the transaction was not successfully submitted." - }, - "log": { - "type": "string", - "description": "Further details for the underlying consensus layer of the result of the transaction." - }, - "height": { - "type": "string", - "format": "int64", - "description": "Unused." - } - }, - "description": "Response for submitting a transaction on the network." - }, - "v1TeamCreated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the created team." - }, - "referrer": { - "type": "string", - "description": "The party that created the team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the team is created." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the team was created." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TeamUpdated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier for the updated team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TimeUpdate": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Time update event contains the latest time update from Vega blockchain and indicates the start of a new block" - }, - "v1TradeSettlement": { - "type": "object", - "properties": { - "size": { - "type": "string", - "format": "int64", - "title": "Size of trade settlement" - }, - "price": { - "type": "string", - "title": "Price of settlement as string (in asset decimals)" - }, - "marketPrice": { - "type": "string", - "title": "Price of settlement as a string (in market decimals)" - } - }, - "title": "Trade settlement is part of the settle position event" - }, - "v1Transaction": { - "type": "object", - "properties": { - "inputData": { - "type": "string", - "format": "byte", - "description": "Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`." - }, - "signature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature of the input data field, signed by the sender of this transaction." - }, - "address": { - "type": "string", - "description": "Hex-encoded address of the sender. Not supported yet." - }, - "pubKey": { - "type": "string", - "description": "Hex-encoded public key of the sender." - }, - "version": { - "$ref": "#/definitions/v1TxVersion", - "description": "Version of the transaction." - }, - "pow": { - "$ref": "#/definitions/v1ProofOfWork", - "description": "Proof-of-work containing the random transaction ID used by the client and the nonce." - } - }, - "description": "Transaction containing a command that can be sent to instruct the network to execute an action.\nA transaction contains a byte string representation of the input data which must then be signed, with the signature added to the transaction." - }, - "v1TransactionResult": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "status": { - "type": "boolean", - "description": "Status of the transaction, did it succeed or an error was raised." - }, - "hash": { - "type": "string", - "title": "Hash of the transaction" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - }, - "keyRotateSubmission": { - "$ref": "#/definitions/v1KeyRotateSubmission" - }, - "ethereumKeyRotateSubmission": { - "$ref": "#/definitions/v1EthereumKeyRotateSubmission" - }, - "stopOrderSubmission": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "stopOrderCancellation": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "createReferralSet": { - "$ref": "#/definitions/v1CreateReferralSet" - }, - "updateReferralSet": { - "$ref": "#/definitions/v1UpdateReferralSet" - }, - "applyReferralCode": { - "$ref": "#/definitions/v1ApplyReferralCode" - }, - "updateMarginMode": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "joinTeam": { - "$ref": "#/definitions/v1JoinTeam" - }, - "batchProposal": { - "$ref": "#/definitions/v1BatchProposalSubmission" - }, - "updatePartyProfile": { - "$ref": "#/definitions/v1UpdatePartyProfile" - }, - "success": { - "$ref": "#/definitions/TransactionResultSuccessDetails" - }, - "failure": { - "$ref": "#/definitions/TransactionResultFailureDetails" - } - } - }, - "v1TransferFees": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer that triggered the collection of fees." - }, - "amount": { - "type": "string", - "description": "Amount of fees paid." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch when the transfer was dispatched, and fees were paid." - }, - "discountApplied": { - "type": "string", - "description": "Amount that was subtracted from the transfer fee based on available discounts." - } - } - }, - "v1TransferFeesDiscount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party that the transfer fee discount applies to." - }, - "asset": { - "type": "string", - "description": "Asset that the transfer fee discount is relevant to." - }, - "amount": { - "type": "string", - "description": "Amount that the transfer fee was discounted by." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the discount was first available." - } - } - }, - "v1TransferStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_DONE", - "STATUS_REJECTED", - "STATUS_STOPPED", - "STATUS_CANCELLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user" - }, - "v1TxErrorEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "errMsg": { - "type": "string", - "title": "Error message describing what went wrong" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - } - } - }, - "v1TxVersion": { - "type": "string", - "enum": [ - "TX_VERSION_UNSPECIFIED", - "TX_VERSION_V2", - "TX_VERSION_V3" - ], - "default": "TX_VERSION_UNSPECIFIED", - "description": "Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks." - }, - "v1UndelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to undelegate stake from." - }, - "amount": { - "type": "string", - "description": "Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed." - }, - "method": { - "$ref": "#/definitions/v1UndelegateSubmissionMethod", - "description": "Method of delegation." - } - }, - "description": "Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node." - }, - "v1UndelegateSubmissionMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_NOW", - "METHOD_AT_END_OF_EPOCH" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch." - }, - "v1UpdateMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market to change margin mode for." - }, - "mode": { - "$ref": "#/definitions/UpdateMarginModeMode", - "description": "Margin mode to use." - }, - "marginFactor": { - "type": "string", - "title": "Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside" - } - } - }, - "v1UpdatePartyProfile": { - "type": "object", - "properties": { - "alias": { - "type": "string", - "description": "Alias given to the party. It must be unique network-wide." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Freeform data to associate to the party.\nSupport a maximum of 10 entries." - } - }, - "description": "Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed." - }, - "v1UpdateReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the referral set to update." - }, - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1UpdateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged." - }, - "v1UpdateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "New name of the team." - }, - "teamUrl": { - "type": "string", - "description": "New link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "New link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1ValidatorRankingEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "stakeScore": { - "type": "string", - "title": "Stake based score - no anti-whaling" - }, - "performanceScore": { - "type": "string", - "title": "Performance base score" - }, - "rankingScore": { - "type": "string", - "title": "Final score" - }, - "previousStatus": { - "type": "string", - "title": "Status of the validator in the previous epoch" - }, - "nextStatus": { - "type": "string", - "title": "Status of the validator in the next epoch" - }, - "epochSeq": { - "type": "string", - "title": "Epoch seq for which the status is valid" - }, - "tmVotingPower": { - "type": "integer", - "format": "int64", - "title": "Tendermint voting power of the validator" - } - }, - "title": "Event that explains the status of the validator for the coming epoch" - }, - "v1ValidatorScoreEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "validatorScore": { - "type": "string" - }, - "normalisedScore": { - "type": "string" - }, - "validatorPerformance": { - "type": "string" - }, - "rawValidatorScore": { - "type": "string" - }, - "validatorStatus": { - "type": "string" - }, - "multisigScore": { - "type": "string" - } - }, - "title": "ValidatorScoreEvent is the score a validator gets for a given epoch" - }, - "v1ValidatorUpdate": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the validator node" - }, - "vegaPubKey": { - "type": "string", - "title": "Vega public key of validator node" - }, - "ethereumAddress": { - "type": "string", - "title": "Ethereum public key of validator node" - }, - "tmPubKey": { - "type": "string", - "title": "Public key of Tendermint" - }, - "infoUrl": { - "type": "string", - "title": "URL with more info on the node" - }, - "country": { - "type": "string", - "title": "Country code (ISO 3166-1 alpha-2) for the location of the node" - }, - "name": { - "type": "string", - "title": "Name of the validator" - }, - "avatarUrl": { - "type": "string", - "title": "AvatarURL of the validator" - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "title": "Vega public key derivation index" - }, - "added": { - "type": "boolean", - "title": "Flag indicating if the validator has been added to or removed from vega" - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the announced pending node will start participating in the network" - }, - "submitterAddress": { - "type": "string", - "title": "Ethereum public key being used as the submitter to allow automatic signature generation" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the node was announced or removed from the network" - } - }, - "title": "Validator update event contains information about validator node" - }, - "v1VestingBalancesSummary": { - "type": "object", - "properties": { - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these balances are valid." - }, - "partiesVestingSummary": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingSummary" - }, - "description": "Parties' summaries." - } - }, - "title": "Summary of the vesting and locked balances for an epoch" - }, - "v1VestingStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the vesting statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingStats" - }, - "description": "All parties stats." - } - }, - "description": "Stats of all parties invested in the vesting program." - }, - "v1VolumeDiscountProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the volume discount program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1VolumeDiscountProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "Volume discount program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program started." - } - } - }, - "v1VolumeDiscountProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "The updated volume discount program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program was updated." - } - } - }, - "v1VolumeDiscountStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVolumeDiscountStats" - }, - "description": "All parties' stats." - } - }, - "description": "Stats of all parties eligible for volume discount." - }, - "v1VoteSpamStatistic": { - "type": "object", - "properties": { - "proposal": { - "type": "string", - "description": "Unique ID of the proposal being voted on by the party." - }, - "countForEpoch": { - "type": "string", - "format": "uint64", - "title": "Current vote count received from the party for the given proposal during this epoch" - }, - "minTokensRequired": { - "type": "string", - "title": "Effective minimum number of tokens required to vote on the proposal" - } - }, - "description": "Vote statistics for the voting spam policies\nwhich are calculated as a ratio of the total votes\nthat have been rejected." - }, - "v1VoteSpamStatistics": { - "type": "object", - "properties": { - "statistics": { - "type": "array", - "items": { - "$ref": "#/definitions/v1VoteSpamStatistic" - }, - "title": "List of statistics for proposals voted on by the party" - }, - "maxForEpoch": { - "type": "string", - "format": "uint64", - "title": "Maximum number of votes per proposal allowed in an epoch" - }, - "bannedUntil": { - "type": "string", - "title": "If blocked the timestamp when the party will be unblocked as RFC3339Nano" - } - }, - "title": "Voting statistics by proposal for a given party for the current epoch" - }, - "v1VoteSubmission": { - "type": "object", - "properties": { - "proposalId": { - "type": "string", - "description": "Submit vote for the specified proposal ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Actual value of the vote." - } - }, - "description": "Command that allows a token holder to vote for or against an active governance proposal." - }, - "v1WithdrawSubmission": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "description": "Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to be withdrawn." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Details specific to the foreign chain, such as the receiver address." - } - }, - "description": "Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge." - }, - "vegaAccount": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique account ID, used internally by Vega." - }, - "owner": { - "type": "string", - "description": "Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions." - }, - "balance": { - "type": "string", - "description": "Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative." - }, - "asset": { - "type": "string", - "description": "Asset ID for the account." - }, - "marketId": { - "type": "string", - "description": "Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type related to this account." - } - }, - "title": "Represents an account for an asset on Vega for a particular owner or party" - }, - "vegaAccountDetails": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID of the asset for this account." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the account." - }, - "owner": { - "type": "string", - "description": "Not specified if network account." - }, - "marketId": { - "type": "string", - "description": "Not specified if account is not related to a market." - } - } - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAsset": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Internal identifier of the asset." - }, - "details": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Definition of the external source for this asset." - }, - "status": { - "$ref": "#/definitions/vegaAssetStatus", - "description": "Status of the asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaAssetStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PROPOSED", - "STATUS_REJECTED", - "STATUS_PENDING_LISTING", - "STATUS_ENABLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network" - }, - "vegaAuctionDuration": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "format": "int64", - "description": "Duration of the auction in seconds." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Target uncrossing trading volume." - } - }, - "title": "Auction duration is used to configure 3 auction periods:\n1. `duration \u003e 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume \u003e 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration \u003e 0`, `volume \u003e 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume" - }, - "vegaAuctionTrigger": { - "type": "string", - "enum": [ - "AUCTION_TRIGGER_UNSPECIFIED", - "AUCTION_TRIGGER_BATCH", - "AUCTION_TRIGGER_OPENING", - "AUCTION_TRIGGER_PRICE", - "AUCTION_TRIGGER_LIQUIDITY", - "AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET", - "AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS", - "AUCTION_TRIGGER_GOVERNANCE_SUSPENSION" - ], - "default": "AUCTION_TRIGGER_UNSPECIFIED", - "description": "- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance", - "title": "Auction triggers indicate what condition triggered an auction (if market is in auction mode)" - }, - "vegaBatchProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "proposalParams": { - "$ref": "#/definitions/vegaProposalParameters", - "description": "Specific parameters defining the proposal's characteristics used for validation." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal on Vega" - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaChainStatus": { - "type": "string", - "enum": [ - "CHAIN_STATUS_UNSPECIFIED", - "CHAIN_STATUS_DISCONNECTED", - "CHAIN_STATUS_REPLAYING", - "CHAIN_STATUS_CONNECTED" - ], - "default": "CHAIN_STATUS_UNSPECIFIED", - "description": "- CHAIN_STATUS_UNSPECIFIED: Default value, always invalid\n - CHAIN_STATUS_DISCONNECTED: Blockchain is disconnected\n - CHAIN_STATUS_REPLAYING: Blockchain is replaying historic transactions\n - CHAIN_STATUS_CONNECTED: Blockchain is connected and receiving transactions", - "title": "Vega blockchain status as reported by the node the caller is connected to" - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpec": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Hash generated from the DataSpec data." - }, - "createdAt": { - "type": "string", - "format": "int64", - "title": "Creation date and time" - }, - "updatedAt": { - "type": "string", - "format": "int64", - "title": "Last Updated timestamp" - }, - "data": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "status": { - "$ref": "#/definitions/vegaDataSourceSpecStatus", - "title": "Status describes the status of the data source spec" - } - }, - "description": "Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_DEACTIVATED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.", - "title": "Status describe the status of the data source spec" - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDeposit": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the deposit." - }, - "status": { - "$ref": "#/definitions/vegaDepositStatus", - "description": "Status of the deposit." - }, - "partyId": { - "type": "string", - "description": "Party ID of the user initiating the deposit." - }, - "asset": { - "type": "string", - "description": "Vega asset targeted by this deposit." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction from the foreign chain." - }, - "creditedTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the Vega account was updated with the deposit." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the deposit was created on the Vega network." - } - }, - "title": "Deposit on to the Vega network" - }, - "vegaDepositStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_CANCELLED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Deposit is being processed by the network\n - STATUS_CANCELLED: Deposit has been cancelled by the network\n - STATUS_FINALIZED: Deposit has been finalised and accounts have been updated", - "title": "Status of the deposit" - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaEpochAction": { - "type": "string", - "enum": [ - "EPOCH_ACTION_UNSPECIFIED", - "EPOCH_ACTION_START", - "EPOCH_ACTION_END" - ], - "default": "EPOCH_ACTION_UNSPECIFIED", - "description": "- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.", - "title": "What epoch action has occurred" - }, - "vegaErc20WithdrawExt": { - "type": "object", - "properties": { - "receiverAddress": { - "type": "string", - "description": "Address into which the bridge will release the funds." - } - }, - "title": "Extension of data required for the withdraw submissions" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaExternalDataSourceSpec": { - "type": "object", - "properties": { - "spec": { - "$ref": "#/definitions/vegaDataSourceSpec" - } - } - }, - "vegaFee": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places." - }, - "infrastructureFee": { - "type": "string", - "description": "Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places." - }, - "liquidityFee": { - "type": "string", - "description": "Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places." - }, - "makerFeeVolumeDiscount": { - "type": "string", - "description": "Volume discounts.\nDiscount on maker fee based on the taker volume." - }, - "infrastructureFeeVolumeDiscount": { - "type": "string", - "description": "Discount on infrastructure fee based on the taker volume." - }, - "liquidityFeeVolumeDiscount": { - "type": "string", - "description": "Discount on liquidity fee basedo on taker volume." - }, - "makerFeeReferrerDiscount": { - "type": "string", - "description": "Referrer discounts.\nDiscount on maker fee for eligible referrer." - }, - "infrastructureFeeReferrerDiscount": { - "type": "string", - "description": "Discount on infrastructure fee for eligible referrer." - }, - "liquidityFeeReferrerDiscount": { - "type": "string", - "description": "Discount on liquidity fee for eligible referrer." - } - }, - "title": "Represents any fees paid by a party, resulting from a trade" - }, - "vegaFeeFactors": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Market maker fee charged network wide." - }, - "infrastructureFee": { - "type": "string", - "description": "Infrastructure fee charged network wide for staking and governance." - }, - "liquidityFee": { - "type": "string", - "description": "Liquidity fee applied per market for market making." - } - }, - "title": "Fee factors definition" - }, - "vegaFees": { - "type": "object", - "properties": { - "factors": { - "$ref": "#/definitions/vegaFeeFactors", - "description": "Fee factors." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Liquidity fee settings for the market describing how the fee was calculated." - } - }, - "title": "Fees definition" - }, - "vegaFuture": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the future." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the settlement data source filter." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the trading termination data source filter." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data spec and the data source." - } - }, - "title": "Future product definition" - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIcebergOrder": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that will be made visible if the iceberg order is replenished after trading." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount." - }, - "reservedRemaining": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed." - } - }, - "title": "Details of an iceberg order" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique instrument ID." - }, - "code": { - "type": "string", - "description": "Code for the instrument." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - }, - "metadata": { - "$ref": "#/definitions/vegaInstrumentMetadata", - "description": "Collection of instrument meta-data." - }, - "future": { - "$ref": "#/definitions/vegaFuture", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpot", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetual", - "description": "Perpetual." - } - }, - "title": "Instrument definition" - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaInstrumentMetadata": { - "type": "object", - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of 0 or more tags." - } - }, - "title": "Instrument metadata definition" - }, - "vegaLedgerEntry": { - "type": "object", - "properties": { - "fromAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer from." - }, - "toAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer to." - }, - "amount": { - "type": "string", - "description": "Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "type": { - "$ref": "#/definitions/vegaTransferType", - "description": "Transfer type for this entry." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in nanoseconds of when the ledger entry was created." - }, - "fromAccountBalance": { - "type": "string", - "description": "Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "toAccountBalance": { - "type": "string", - "description": "Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "transferId": { - "type": "string", - "description": "Transfer ID the ledger entry relates to." - } - }, - "title": "Represents a ledger entry on Vega" - }, - "vegaLedgerMovement": { - "type": "object", - "properties": { - "entries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerEntry" - }, - "description": "All the entries for these ledger movements." - }, - "balances": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPostTransferBalance" - }, - "description": "Resulting balances once the ledger movement are applied." - } - } - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquidityOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Pegged reference point for the order." - }, - "proportion": { - "type": "integer", - "format": "int64", - "description": "Relative proportion of the commitment to be allocated at a price level." - }, - "offset": { - "type": "string", - "description": "Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places." - } - }, - "title": "Represents a liquidity order" - }, - "vegaLiquidityOrderReference": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Unique ID of the pegged order generated to fulfil this liquidity order." - }, - "liquidityOrder": { - "$ref": "#/definitions/vegaLiquidityOrder", - "description": "Liquidity order from the original submission." - } - }, - "title": "Pair of a liquidity order and the ID of the generated order" - }, - "vegaLiquidityProviderFeeShare": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "equityLikeShare": { - "type": "string", - "description": "Share own by this liquidity provider." - }, - "averageEntryValuation": { - "type": "string", - "description": "Average entry valuation of the liquidity provider for the market." - }, - "averageScore": { - "type": "string", - "description": "Average liquidity score." - }, - "virtualStake": { - "type": "string", - "description": "The virtual stake of this liquidity provider." - } - }, - "title": "Equity like share of liquidity fee for each liquidity provider" - }, - "vegaLiquidityProviderSLA": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "currentEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP meets the commitment during the current epoch." - }, - "lastEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP met the commitment in the previous epoch." - }, - "lastEpochFeePenalty": { - "type": "string", - "description": "Indicates the fee penalty amount applied in the previous epoch." - }, - "lastEpochBondPenalty": { - "type": "string", - "description": "Shows the bond penalties from past epochs." - }, - "hysteresisPeriodFeePenalties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Determines how the fee penalties from past epochs affect future fee revenue." - }, - "requiredLiquidity": { - "type": "string", - "description": "Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range." - }, - "notionalVolumeBuys": { - "type": "string", - "description": "Notional volume of orders within the range provided on the buy side of the book." - }, - "notionalVolumeSells": { - "type": "string", - "description": "Notional volume of orders within the range provided on the sell side of the book." - } - }, - "title": "SLA performance for each liquidity provider" - }, - "vegaLiquidityProvision": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the liquidity provision." - }, - "partyId": { - "type": "string", - "description": "Unique party ID for the creator of the provision." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was updated." - }, - "marketId": { - "type": "string", - "description": "Market ID for the liquidity provision." - }, - "commitmentAmount": { - "type": "string", - "description": "Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "sells": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity sell orders to meet the liquidity provision obligation." - }, - "buys": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity buy orders to meet the liquidity provision obligation." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version of this liquidity provision." - }, - "status": { - "$ref": "#/definitions/vegaLiquidityProvisionStatus", - "description": "Status of this liquidity provision." - }, - "reference": { - "type": "string", - "description": "Reference shared between this liquidity provision and all its orders." - } - }, - "title": "Liquidity provider commitment" - }, - "vegaLiquidityProvisionStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_STOPPED", - "STATUS_CANCELLED", - "STATUS_REJECTED", - "STATUS_UNDEPLOYED", - "STATUS_PENDING" - ], - "default": "STATUS_UNSPECIFIED", - "description": "Status of a liquidity provision.\n\n - STATUS_UNSPECIFIED: Always invalid\n - STATUS_ACTIVE: Liquidity provision is active\n - STATUS_STOPPED: Liquidity provision was stopped by the network\n - STATUS_CANCELLED: Liquidity provision was cancelled by the liquidity provider\n - STATUS_REJECTED: Liquidity provision was invalid and got rejected\n - STATUS_UNDEPLOYED: Liquidity provision is valid and accepted by network, but orders aren't deployed\n - STATUS_PENDING: Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties." - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarginCalculator": { - "type": "object", - "properties": { - "scalingFactors": { - "$ref": "#/definitions/vegaScalingFactors", - "description": "Scaling factors for margin calculation." - } - }, - "title": "Margin Calculator definition" - }, - "vegaMarginLevels": { - "type": "object", - "properties": { - "maintenanceMargin": { - "type": "string", - "description": "Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "searchLevel": { - "type": "string", - "description": "Margin search level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "initialMargin": { - "type": "string", - "description": "Initial margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "collateralReleaseLevel": { - "type": "string", - "description": "Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "partyId": { - "type": "string", - "description": "Party ID for whom the margin levels apply." - }, - "marketId": { - "type": "string", - "description": "Market ID for which the margin levels apply." - }, - "asset": { - "type": "string", - "description": "Asset ID for which the margin levels apply." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the ledger entry was created." - }, - "orderMargin": { - "type": "string", - "description": "Margin required to cover orders in isolated margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Margin mode for the party, cross margin or isolated margin." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor, relevant only for isolated margin, 0 otherwise." - } - }, - "title": "Represents the margin levels for a party on a market at a given time" - }, - "vegaMarginMode": { - "type": "string", - "enum": [ - "MARGIN_MODE_UNSPECIFIED", - "MARGIN_MODE_CROSS_MARGIN", - "MARGIN_MODE_ISOLATED_MARGIN" - ], - "default": "MARGIN_MODE_UNSPECIFIED", - "title": "- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "vegaMarket": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the market." - }, - "tradableInstrument": { - "$ref": "#/definitions/vegaTradableInstrument", - "description": "Tradable instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`." - }, - "fees": { - "$ref": "#/definitions/vegaFees", - "description": "Fees configuration that apply to the market." - }, - "openingAuction": { - "$ref": "#/definitions/vegaAuctionDuration", - "description": "Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)." - }, - "priceMonitoringSettings": { - "$ref": "#/definitions/vegaPriceMonitoringSettings", - "description": "PriceMonitoringSettings for the market." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "LiquidityMonitoringParameters for the market." - }, - "tradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current mode of execution of the market." - }, - "state": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "marketTimestamps": { - "$ref": "#/definitions/vegaMarketTimestamps", - "description": "Timestamps for when the market state changes." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "The number of decimal places for a position." - }, - "lpPriceRange": { - "type": "string", - "description": "Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "parentMarketId": { - "type": "string", - "title": "ID of the market this market succeeds" - }, - "insurancePoolFraction": { - "type": "string", - "description": "The fraction of the parent market's insurance pool that this market inherits; range 0 through 1." - }, - "successorMarketId": { - "type": "string", - "description": "ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled." - }, - "liquiditySlaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Liquidity SLA parameters for the market." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy used by this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price calculation configuration." - } - }, - "title": "Market definition" - }, - "vegaMarketData": { - "type": "object", - "properties": { - "markPrice": { - "type": "string", - "description": "Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidPrice": { - "type": "string", - "description": "Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestOfferPrice": { - "type": "string", - "description": "Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places." - }, - "bestOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestStaticBidPrice": { - "type": "string", - "description": "Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticBidVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static bid price excluding pegged orders." - }, - "bestStaticOfferPrice": { - "type": "string", - "description": "Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static offer price, excluding pegged orders." - }, - "midPrice": { - "type": "string", - "description": "Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "staticMidPrice": { - "type": "string", - "description": "Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "market": { - "type": "string", - "title": "Market ID for the data" - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which this mark price was relevant." - }, - "openInterest": { - "type": "string", - "format": "uint64", - "description": "Sum of the size of all positions greater than zero on the market." - }, - "auctionEnd": { - "type": "string", - "format": "int64", - "description": "Time in seconds until the end of the auction (zero if currently not in auction period)." - }, - "auctionStart": { - "type": "string", - "format": "int64", - "description": "Time until next auction, or start time of the current auction if market is in auction period." - }, - "indicativePrice": { - "type": "string", - "description": "Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places." - }, - "indicativeVolume": { - "type": "string", - "format": "uint64", - "description": "Indicative volume (zero if not in auction)." - }, - "marketTradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current trading mode for the market." - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market is in an auction trading mode, this field indicates what triggered the auction." - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market auction is extended, this field indicates what caused the extension." - }, - "targetStake": { - "type": "string", - "description": "Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "suppliedStake": { - "type": "string", - "description": "Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "priceMonitoringBounds": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringBounds" - }, - "description": "One or more price monitoring bounds for the current timestamp." - }, - "marketValueProxy": { - "type": "string", - "description": "Market value proxy." - }, - "liquidityProviderFeeShare": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare" - }, - "description": "Equity like share of liquidity fee for each liquidity provider." - }, - "marketState": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "nextMarkToMarket": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the next mark-to-market calculation will occur." - }, - "lastTradedPrice": { - "type": "string", - "description": "Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places." - }, - "marketGrowth": { - "type": "string", - "description": "Market growth at the last market time window." - }, - "productData": { - "$ref": "#/definitions/vegaProductData", - "description": "Data related to the particular product type of the market." - }, - "liquidityProviderSla": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderSLA" - }, - "description": "SLA performance for each liquidity provider." - }, - "nextNetworkCloseout": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the market will next submit a trade to reduce its position." - }, - "markPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the mark price." - } - }, - "title": "Represents data generated by a market when open" - }, - "vegaMarketState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_PROPOSED", - "STATE_REJECTED", - "STATE_PENDING", - "STATE_CANCELLED", - "STATE_ACTIVE", - "STATE_SUSPENDED", - "STATE_CLOSED", - "STATE_TRADING_TERMINATED", - "STATE_SETTLED", - "STATE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance", - "title": "Current state of the market" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMarketTimestamps": { - "type": "object", - "properties": { - "proposed": { - "type": "string", - "format": "int64", - "description": "Time when the market is first proposed." - }, - "pending": { - "type": "string", - "format": "int64", - "description": "Time when the market has been voted in and began its opening auction." - }, - "open": { - "type": "string", - "format": "int64", - "description": "Time when the market has left the opening auction and is ready to accept trades." - }, - "close": { - "type": "string", - "format": "int64", - "description": "Time when the market closed." - } - }, - "title": "Time stamps for important times about creating, enacting etc the market" - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkLimits": { - "type": "object", - "properties": { - "canProposeMarket": { - "type": "boolean", - "description": "Are market proposals allowed at this point in time." - }, - "canProposeAsset": { - "type": "boolean", - "description": "Are asset proposals allowed at this point in time." - }, - "proposeMarketEnabled": { - "type": "boolean", - "description": "Are market proposals enabled on this chain." - }, - "proposeAssetEnabled": { - "type": "boolean", - "description": "Are asset proposals enabled on this chain." - }, - "genesisLoaded": { - "type": "boolean", - "description": "True once the genesis file is loaded." - }, - "proposeMarketEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set)." - }, - "proposeAssetEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set)." - }, - "canProposeSpotMarket": { - "type": "boolean", - "description": "Are spot market proposals allowed at this point in time." - }, - "canProposePerpetualMarket": { - "type": "boolean", - "description": "Are perpetual market proposals allowed at this point in time." - } - }, - "title": "Network limits, defined in the genesis file" - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaOracleData": { - "type": "object", - "properties": { - "externalData": { - "$ref": "#/definitions/v1ExternalData" - } - } - }, - "vegaOracleSpec": { - "type": "object", - "properties": { - "externalDataSourceSpec": { - "$ref": "#/definitions/vegaExternalDataSourceSpec" - } - }, - "title": "Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*" - }, - "vegaOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID generated for the order." - }, - "marketId": { - "type": "string", - "description": "Market ID for the order." - }, - "partyId": { - "type": "string", - "description": "Party ID for the order." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Side for the order, e.g. SIDE_BUY or SIDE_SELL." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of contracts." - }, - "remaining": { - "type": "string", - "format": "uint64", - "description": "Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "title": "Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce" - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type for the order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the order was created at, in nanoseconds." - }, - "status": { - "$ref": "#/definitions/vegaOrderStatus", - "description": "Current status of the order." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order will expire." - }, - "reference": { - "type": "string", - "description": "Reference given for the order." - }, - "reason": { - "$ref": "#/definitions/vegaOrderError", - "description": "Futher details for why an order with status `STATUS_REJECTED` was rejected." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order was last updated." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version for the order, initial value is version 1 and is incremented after each successful amend." - }, - "batchId": { - "type": "string", - "format": "uint64", - "description": "Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details, used only if the order represents a pegged order." - }, - "liquidityProvisionId": { - "type": "string", - "description": "Set if the order was created as part of a liquidity provision, will be empty if not." - }, - "postOnly": { - "type": "boolean", - "description": "Only valid for Limit orders. Cannot be True at the same time as Reduce-Only." - }, - "reduceOnly": { - "type": "boolean", - "description": "Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0." - }, - "icebergOrder": { - "$ref": "#/definitions/vegaIcebergOrder", - "title": "Details of an iceberg order" - } - }, - "title": "Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties" - }, - "vegaOrderError": { - "type": "string", - "enum": [ - "ORDER_ERROR_UNSPECIFIED", - "ORDER_ERROR_INVALID_MARKET_ID", - "ORDER_ERROR_INVALID_ORDER_ID", - "ORDER_ERROR_OUT_OF_SEQUENCE", - "ORDER_ERROR_INVALID_REMAINING_SIZE", - "ORDER_ERROR_TIME_FAILURE", - "ORDER_ERROR_REMOVAL_FAILURE", - "ORDER_ERROR_INVALID_EXPIRATION_DATETIME", - "ORDER_ERROR_INVALID_ORDER_REFERENCE", - "ORDER_ERROR_EDIT_NOT_ALLOWED", - "ORDER_ERROR_AMEND_FAILURE", - "ORDER_ERROR_NOT_FOUND", - "ORDER_ERROR_INVALID_PARTY_ID", - "ORDER_ERROR_MARKET_CLOSED", - "ORDER_ERROR_MARGIN_CHECK_FAILED", - "ORDER_ERROR_MISSING_GENERAL_ACCOUNT", - "ORDER_ERROR_INTERNAL_ERROR", - "ORDER_ERROR_INVALID_SIZE", - "ORDER_ERROR_INVALID_PERSISTENCE", - "ORDER_ERROR_INVALID_TYPE", - "ORDER_ERROR_SELF_TRADING", - "ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES", - "ORDER_ERROR_INCORRECT_MARKET_TYPE", - "ORDER_ERROR_INVALID_TIME_IN_FORCE", - "ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION", - "ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING", - "ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT", - "ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT", - "ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT", - "ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC", - "ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION", - "ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION", - "ORDER_ERROR_MUST_BE_LIMIT_ORDER", - "ORDER_ERROR_MUST_BE_GTT_OR_GTC", - "ORDER_ERROR_WITHOUT_REFERENCE_PRICE", - "ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO", - "ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO", - "ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE", - "ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER", - "ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS", - "ORDER_ERROR_TOO_MANY_PEGGED_ORDERS", - "ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE", - "ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION", - "ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED", - "ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE" - ], - "default": "ORDER_ERROR_UNSPECIFIED", - "description": "- ORDER_ERROR_UNSPECIFIED: Default value, no error reported\n - ORDER_ERROR_INVALID_MARKET_ID: Order was submitted for a market that does not exist\n - ORDER_ERROR_INVALID_ORDER_ID: Order was submitted with an invalid ID\n - ORDER_ERROR_OUT_OF_SEQUENCE: Order was amended with a sequence number that was not previous version + 1\n - ORDER_ERROR_INVALID_REMAINING_SIZE: Order was amended with an invalid remaining size (e.g. remaining greater than total size)\n - ORDER_ERROR_TIME_FAILURE: Node was unable to get Vega (blockchain) time\n - ORDER_ERROR_REMOVAL_FAILURE: Failed to remove an order from the book\n - ORDER_ERROR_INVALID_EXPIRATION_DATETIME: Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid\n - ORDER_ERROR_INVALID_ORDER_REFERENCE: Order was submitted or amended with an invalid reference field\n - ORDER_ERROR_EDIT_NOT_ALLOWED: Order amend was submitted for an order field that cannot not be amended (e.g. order ID)\n - ORDER_ERROR_AMEND_FAILURE: Amend failure because amend details do not match original order\n - ORDER_ERROR_NOT_FOUND: Order not found in an order book or store\n - ORDER_ERROR_INVALID_PARTY_ID: Order was submitted with an invalid or missing party ID\n - ORDER_ERROR_MARKET_CLOSED: Order was submitted for a market that has closed\n - ORDER_ERROR_MARGIN_CHECK_FAILED: Order was submitted, but the party did not have enough collateral to cover the order\n - ORDER_ERROR_MISSING_GENERAL_ACCOUNT: Order was submitted, but the party did not have an account for this asset\n - ORDER_ERROR_INTERNAL_ERROR: Unspecified internal error\n - ORDER_ERROR_INVALID_SIZE: Order was submitted with an invalid or missing size (e.g. 0)\n - ORDER_ERROR_INVALID_PERSISTENCE: Order was submitted with an invalid persistence for its type\n - ORDER_ERROR_INVALID_TYPE: Order was submitted with an invalid type field\n - ORDER_ERROR_SELF_TRADING: Order was stopped as it would have traded with another order submitted from the same party\n - ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES: Order was submitted, but the party did not have enough collateral to cover the fees for the order\n - ORDER_ERROR_INCORRECT_MARKET_TYPE: Order was submitted with an incorrect or invalid market type\n - ORDER_ERROR_INVALID_TIME_IN_FORCE: Order was submitted with invalid time in force\n - ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION: Good For Normal order has reached the market when it is in auction mode\n - ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING: Good For Auction order has reached the market when it is in continuous trading mode\n - ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT: Attempt to amend order to GTT without ExpiryAt\n - ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT: Attempt to amend ExpiryAt to a value before CreatedAt\n - ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT: Attempt to amend to GTC without an ExpiryAt value\n - ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC: Amending to FOK or IOC is invalid\n - ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN: Amending to GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN: Amending from GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION: IOC orders are not allowed during auction\n - ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION: FOK orders are not allowed during auction\n - ORDER_ERROR_MUST_BE_LIMIT_ORDER: Pegged orders must be LIMIT orders\n - ORDER_ERROR_MUST_BE_GTT_OR_GTC: Pegged orders can only have TIF GTC or GTT\n - ORDER_ERROR_WITHOUT_REFERENCE_PRICE: Pegged order must have a reference price\n - ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE: Buy pegged order cannot reference best ask price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO: Pegged order offset must be \u003e= 0\n - ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE: Sell pegged order cannot reference best bid price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO: Pegged order offset must be \u003e zero\n - ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE: Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)\n - ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER: Cannot amend details of a non pegged details\n - ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER: Could not re-price a pegged order because a market price is unavailable\n - ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER: It is not possible to amend the price of an existing pegged order\n - ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS: FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds\n - ORDER_ERROR_TOO_MANY_PEGGED_ORDERS: Unable to submit pegged order, temporarily too many pegged orders across all markets\n - ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE: Post order would trade\n - ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION: Post order would trade\n - ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED: Isolated margin check failed\n - ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE: In isolated margin pegged orders are rejected", - "title": "OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`" - }, - "vegaOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_EXPIRED", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_FILLED", - "STATUS_REJECTED", - "STATUS_PARTIALLY_FILLED", - "STATUS_PARKED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)", - "title": "Status values for an order" - }, - "vegaOrderType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LIMIT", - "TYPE_MARKET", - "TYPE_NETWORK" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)", - "title": "Type values for an order" - }, - "vegaParty": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the party, typically represented by a public key." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "title": "Party represents an entity who wishes to trade on or query a Vega network" - }, - "vegaPartyProfile": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID associated to the profile." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "description": "Holds metadata associated to a party." - }, - "vegaPeggedOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Price point the order is linked to." - }, - "offset": { - "type": "string", - "description": "Offset from the price reference." - } - }, - "title": "Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading" - }, - "vegaPeggedReference": { - "type": "string", - "enum": [ - "PEGGED_REFERENCE_UNSPECIFIED", - "PEGGED_REFERENCE_MID", - "PEGGED_REFERENCE_BEST_BID", - "PEGGED_REFERENCE_BEST_ASK" - ], - "default": "PEGGED_REFERENCE_UNSPECIFIED", - "description": "- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference", - "title": "Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point" - }, - "vegaPerpetual": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the perpetual." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfig": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Optional configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product definition" - }, - "vegaPerpetualData": { - "type": "object", - "properties": { - "fundingPayment": { - "type": "string", - "description": "Current funding payment for the in-progress funding period." - }, - "fundingRate": { - "type": "string", - "description": "Current funding rate for the in-progress funding period." - }, - "internalTwap": { - "type": "string", - "description": "Time-weighted-average the internal data-points for the in-progress funding period." - }, - "externalTwap": { - "type": "string", - "description": "Time-weighted-average the external data points for the in-progress funding period." - }, - "seqNum": { - "type": "string", - "format": "uint64", - "title": "Funding period sequence number" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Funding period start time" - }, - "indexPrice": { - "type": "string", - "description": "The index price used for perps." - }, - "nextIndexPriceCalc": { - "type": "string", - "format": "int64", - "description": "The next time the index price is calculated for perps." - }, - "indexPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the index price (perps only)." - } - }, - "description": "Represents market data specific to a perpetual market." - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPostTransferBalance": { - "type": "object", - "properties": { - "account": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "Account relating to the transfer." - }, - "balance": { - "type": "string", - "description": "Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Represents the balance for an account during a transfer" - }, - "vegaPriceMonitoringBounds": { - "type": "object", - "properties": { - "minValidPrice": { - "type": "string", - "description": "Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "maxValidPrice": { - "type": "string", - "description": "Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "trigger": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger", - "description": "Price monitoring trigger associated with the bounds." - }, - "referencePrice": { - "type": "string", - "description": "Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places." - } - }, - "title": "Represents a list of valid (at the current timestamp) price ranges per associated trigger" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringSettings": { - "type": "object", - "properties": { - "parameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Specifies price monitoring parameters to be used for price monitoring purposes." - } - }, - "title": "PriceMonitoringSettings contains the settings for price monitoring" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProductData": { - "type": "object", - "properties": { - "perpetualData": { - "$ref": "#/definitions/vegaPerpetualData" - } - }, - "description": "Represents market data specific to a particular product type." - }, - "vegaProposal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique proposal ID." - }, - "reference": { - "type": "string", - "description": "Proposal reference." - }, - "partyId": { - "type": "string", - "description": "Party ID i.e. public key of the party submitting the proposal." - }, - "state": { - "$ref": "#/definitions/vegaProposalState", - "description": "Current state of the proposal, i.e. open, passed, failed etc." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term." - }, - "reason": { - "$ref": "#/definitions/vegaProposalError", - "description": "Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses." - }, - "errorDetails": { - "type": "string", - "description": "Detailed error associated to the reason." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - }, - "requiredParticipation": { - "type": "string", - "description": "Required vote participation for this proposal." - }, - "requiredMajority": { - "type": "string", - "description": "Required majority for this proposal." - }, - "requiredLiquidityProviderParticipation": { - "type": "string", - "description": "Required participation from liquidity providers, optional but is required for market update proposal." - }, - "requiredLiquidityProviderMajority": { - "type": "string", - "description": "Required majority from liquidity providers, optional but is required for market update proposal." - }, - "batchTerms": { - "$ref": "#/definitions/vegaBatchProposalTerms", - "description": "Batch proposal terms." - }, - "batchId": { - "type": "string", - "description": "ID of a batch proposal that this proposal is part of." - } - }, - "title": "Governance proposal" - }, - "vegaProposalError": { - "type": "string", - "enum": [ - "PROPOSAL_ERROR_UNSPECIFIED", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE", - "PROPOSAL_ERROR_ENACT_TIME_TOO_SOON", - "PROPOSAL_ERROR_ENACT_TIME_TOO_LATE", - "PROPOSAL_ERROR_INSUFFICIENT_TOKENS", - "PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY", - "PROPOSAL_ERROR_NO_PRODUCT", - "PROPOSAL_ERROR_UNSUPPORTED_PRODUCT", - "PROPOSAL_ERROR_NO_TRADING_MODE", - "PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE", - "PROPOSAL_ERROR_NODE_VALIDATION_FAILED", - "PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD", - "PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS", - "PROPOSAL_ERROR_INVALID_ASSET", - "PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS", - "PROPOSAL_ERROR_NO_RISK_PARAMETERS", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE", - "PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE", - "PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET", - "PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT", - "PROPOSAL_ERROR_INVALID_RISK_PARAMETER", - "PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_INVALID_ASSET_DETAILS", - "PROPOSAL_ERROR_UNKNOWN_TYPE", - "PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE", - "PROPOSAL_ERROR_INVALID_FREEFORM", - "PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE", - "PROPOSAL_ERROR_INVALID_MARKET", - "PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES", - "PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS", - "PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE", - "PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_INVALID_SPOT", - "PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED", - "PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE", - "PROPOSAL_ERROR_INVALID_SLA_PARAMS", - "PROPOSAL_ERROR_MISSING_SLA_PARAMS", - "PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT", - "PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM", - "PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED" - ], - "default": "PROPOSAL_ERROR_UNSPECIFIED", - "description": "- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation \u003c Closing \u003c Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined", - "title": "List of possible errors that can cause a proposal to be in state rejected or failed" - }, - "vegaProposalParameters": { - "type": "object", - "properties": { - "minClose": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before a proposal can be closed for voting." - }, - "maxClose": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time that a proposal can be open for voting." - }, - "minEnact": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before an enacted proposal takes effect." - }, - "maxEnact": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time before an enacted proposal must take effect." - }, - "requiredParticipation": { - "type": "string", - "description": "Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid." - }, - "requiredMajority": { - "type": "string", - "description": "Specifies the required percentage of votes a proposal needs to be approved." - }, - "minProposerBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a proposer must hold to initiate a proposal." - }, - "minVoterBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a voter must hold to participate in voting." - }, - "requiredParticipationLp": { - "type": "string", - "description": "Specifies the required percentage of participation from liquidity providers for the proposal to be valid." - }, - "requiredMajorityLp": { - "type": "string", - "description": "Specifies the required majority percentage from liquidity providers for a proposal to be approved." - }, - "minEquityLikeShare": { - "type": "string", - "description": "Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible." - } - } - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_FAILED", - "STATE_OPEN", - "STATE_PASSED", - "STATE_REJECTED", - "STATE_DECLINED", - "STATE_ENACTED", - "STATE_WAITING_FOR_NODE_VOTE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal", - "title": "Proposal state transition:\nOpen -\u003e\n - Passed -\u003e Enacted.\n - Passed -\u003e Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state" - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which the referral set's running volume is evaluated." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaRiskFactor": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market ID that relates to this risk factor." - }, - "short": { - "type": "string", - "description": "Short Risk factor value." - }, - "long": { - "type": "string", - "description": "Long Risk factor value." - } - }, - "title": "Risk factors are used to calculate the current risk associated with orders trading on a given market" - }, - "vegaScalingFactors": { - "type": "object", - "properties": { - "searchLevel": { - "type": "number", - "format": "double", - "description": "Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release." - }, - "initialMargin": { - "type": "number", - "format": "double", - "description": "Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin." - }, - "collateralRelease": { - "type": "number", - "format": "double", - "description": "Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset." - } - }, - "title": "Scaling Factors (for use in margin calculation)" - }, - "vegaSide": { - "type": "string", - "enum": [ - "SIDE_UNSPECIFIED", - "SIDE_BUY", - "SIDE_SELL" - ], - "default": "SIDE_UNSPECIFIED", - "description": "- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order", - "title": "Side relates to the direction of an order, to Buy, or Sell" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSimpleRiskModel": { - "type": "object", - "properties": { - "params": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Risk model params for simple modelling." - } - }, - "title": "Risk model for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpot": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Asset ID of the underlying base asset for the spot product." - }, - "quoteAsset": { - "type": "string", - "description": "Asset ID of the underlying quote asset for the spot product." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - } - }, - "title": "Spot product definition" - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaStopOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "ID of this stop order\nalso the ID of the associated order if it is ever triggered" - }, - "ocoLinkId": { - "type": "string", - "title": "The ID of the 'other' part of the OCO if 2 stop orders were submitted at once" - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Optional expiry timestamp." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "triggerDirection": { - "$ref": "#/definitions/StopOrderTriggerDirection", - "description": "Trigger direction for this stop order." - }, - "status": { - "$ref": "#/definitions/vegaStopOrderStatus", - "description": "Status of the stop order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Creation time of the stop order." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Last update of this stop order." - }, - "orderId": { - "type": "string", - "description": "ID of the order created once the trigger is hit." - }, - "partyId": { - "type": "string", - "description": "ID of the party that submitted this stop order." - }, - "marketId": { - "type": "string", - "description": "ID of the market the stop order is submitted to." - }, - "rejectionReason": { - "$ref": "#/definitions/StopOrderRejectionReason", - "title": "An optional reason for why a stop order was rejected" - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Size override setting" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "Size override value" - }, - "price": { - "type": "string", - "description": "Fixed price at which the order will be submitted." - }, - "trailingPercentOffset": { - "type": "string", - "title": "Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%" - } - } - }, - "vegaStopOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_TRIGGERED", - "STATUS_EXPIRED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission" - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaTradableInstrument": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrument", - "description": "Details for the underlying instrument." - }, - "marginCalculator": { - "$ref": "#/definitions/vegaMarginCalculator", - "description": "Margin calculator for the instrument." - }, - "logNormalRiskModel": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal." - }, - "simpleRiskModel": { - "$ref": "#/definitions/vegaSimpleRiskModel", - "description": "Simple." - } - }, - "title": "Tradable Instrument definition" - }, - "vegaTrade": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the trade." - }, - "marketId": { - "type": "string", - "description": "Market ID on which the trade occurred." - }, - "price": { - "type": "string", - "description": "Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size filled for the trade." - }, - "buyer": { - "type": "string", - "description": "Unique party ID for the buyer." - }, - "seller": { - "type": "string", - "description": "Unique party ID for the seller." - }, - "aggressor": { - "$ref": "#/definitions/vegaSide", - "description": "Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL." - }, - "buyOrder": { - "type": "string", - "description": "Identifier of the order from the buy side." - }, - "sellOrder": { - "type": "string", - "description": "Identifier of the order from the sell side." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the trade occurred." - }, - "type": { - "$ref": "#/definitions/vegaTradeType", - "description": "Type for the trade." - }, - "buyerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the buyer party for the trade." - }, - "sellerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the seller party for the trade." - }, - "buyerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the buy side order was placed in." - }, - "sellerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the sell side order was placed in." - }, - "assetPrice": { - "type": "string", - "description": "Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates." - } - }, - "title": "A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega" - }, - "vegaTradeType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_DEFAULT", - "TYPE_NETWORK_CLOSE_OUT_GOOD", - "TYPE_NETWORK_CLOSE_OUT_BAD" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_DEFAULT: Normal trading between two parties\n - TYPE_NETWORK_CLOSE_OUT_GOOD: Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties\n - TYPE_NETWORK_CLOSE_OUT_BAD: Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party", - "title": "Type values for a trade" - }, - "vegaTransferType": { - "type": "string", - "enum": [ - "TRANSFER_TYPE_UNSPECIFIED", - "TRANSFER_TYPE_LOSS", - "TRANSFER_TYPE_WIN", - "TRANSFER_TYPE_MTM_LOSS", - "TRANSFER_TYPE_MTM_WIN", - "TRANSFER_TYPE_MARGIN_LOW", - "TRANSFER_TYPE_MARGIN_HIGH", - "TRANSFER_TYPE_MARGIN_CONFISCATED", - "TRANSFER_TYPE_MAKER_FEE_PAY", - "TRANSFER_TYPE_MAKER_FEE_RECEIVE", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE", - "TRANSFER_TYPE_LIQUIDITY_FEE_PAY", - "TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE", - "TRANSFER_TYPE_BOND_LOW", - "TRANSFER_TYPE_BOND_HIGH", - "TRANSFER_TYPE_WITHDRAW", - "TRANSFER_TYPE_DEPOSIT", - "TRANSFER_TYPE_BOND_SLASHING", - "TRANSFER_TYPE_REWARD_PAYOUT", - "TRANSFER_TYPE_TRANSFER_FUNDS_SEND", - "TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE", - "TRANSFER_TYPE_CLEAR_ACCOUNT", - "TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE", - "TRANSFER_TYPE_SPOT", - "TRANSFER_TYPE_HOLDING_LOCK", - "TRANSFER_TYPE_HOLDING_RELEASE", - "TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION", - "TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE", - "TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE", - "TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY", - "TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY", - "TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT", - "TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE", - "TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS", - "TRANSFER_TYPE_PERPETUALS_FUNDING_WIN", - "TRANSFER_TYPE_REWARDS_VESTED", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE", - "TRANSFER_TYPE_ORDER_MARGIN_LOW", - "TRANSFER_TYPE_ORDER_MARGIN_HIGH", - "TRANSFER_TYPE_ISOLATED_MARGIN_LOW", - "TRANSFER_TYPE_ISOLATED_MARGIN_HIGH" - ], - "default": "TRANSFER_TYPE_UNSPECIFIED", - "description": "- TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.", - "title": "Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which a referral set's running volume is evaluated." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVote": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Voter's party ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Which way the party voted." - }, - "proposalId": { - "type": "string", - "description": "Proposal ID being voted on." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the vote was acknowledged by the network." - }, - "totalGovernanceTokenBalance": { - "type": "string", - "description": "Total number of governance token for the party that cast the vote." - }, - "totalGovernanceTokenWeight": { - "type": "string", - "description": "The weight of this vote based on the total number of governance tokens." - }, - "totalEquityLikeShareWeight": { - "type": "string", - "description": "The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal." - }, - "perMarketEquityLikeShareWeight": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal." - } - }, - "title": "Governance vote" - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - }, - "vegaWithdrawExt": { - "type": "object", - "properties": { - "erc20": { - "$ref": "#/definitions/vegaErc20WithdrawExt", - "description": "ERC20 withdrawal details." - } - }, - "title": "Withdrawal external details" - }, - "vegaWithdrawal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the withdrawal." - }, - "partyId": { - "type": "string", - "description": "Unique party ID of the user initiating the withdrawal." - }, - "amount": { - "type": "string", - "description": "Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to withdraw funds from." - }, - "status": { - "$ref": "#/definitions/vegaWithdrawalStatus", - "description": "Status of the withdrawal." - }, - "ref": { - "type": "string", - "description": "Reference which is used by the foreign chain\nto refer to this withdrawal." - }, - "txHash": { - "type": "string", - "description": "Hash of the foreign chain for this transaction." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the network started to process this withdrawal." - }, - "withdrawnTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the withdrawal was finalised by the network." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Foreign chain specifics." - } - }, - "title": "Withdrawal from the Vega network" - }, - "vegaWithdrawalStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_REJECTED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Withdrawal is open and being processed by the network\n - STATUS_REJECTED: Withdrawal have been cancelled\n - STATUS_FINALIZED: Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network", - "title": "Status of the withdrawal" - }, - "vegacommandsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account." - } - }, - "description": "Details for a one-off transfer." - }, - "vegacommandsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64", - "description": "First epoch from which this transfer shall be executed." - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be executed." - }, - "factor": { - "type": "string", - "description": "Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Details for a recurring transfer" - }, - "vegacommandsv1Transfer": { - "type": "object", - "properties": { - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type from which the funds of the party should be taken." - }, - "to": { - "type": "string", - "description": "Public key of the destination account." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the destination account." - }, - "asset": { - "type": "string", - "description": "Asset ID of the asset to be transferred." - }, - "amount": { - "type": "string", - "description": "Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places." - }, - "reference": { - "type": "string", - "description": "Reference to be attached to the transfer." - }, - "oneOff": { - "$ref": "#/definitions/vegacommandsv1OneOffTransfer", - "description": "Details of a one-off transfer that is executed once at a specified time." - }, - "recurring": { - "$ref": "#/definitions/vegacommandsv1RecurringTransfer", - "description": "Details of a transfer that is executed once every epoch until stopped." - } - }, - "title": "Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`" - }, - "vegaeventsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "vegaeventsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "factor": { - "type": "string" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "vegaeventsv1Transfer": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "from": { - "type": "string" - }, - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "to": { - "type": "string" - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "reference": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/v1TransferStatus" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "reason": { - "type": "string" - }, - "gameId": { - "type": "string", - "title": "ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation" - }, - "oneOff": { - "$ref": "#/definitions/vegaeventsv1OneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaeventsv1RecurringTransfer" - }, - "oneOffGovernance": { - "$ref": "#/definitions/v1OneOffGovernanceTransfer" - }, - "recurringGovernance": { - "$ref": "#/definitions/v1RecurringGovernanceTransfer" - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/corestate.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/corestate.swagger.json deleted file mode 100644 index 8bf44480c..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/api/v1/corestate.swagger.json +++ /dev/null @@ -1,3392 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega core state APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "CoreStateService" - } - ], - "host": "lb.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "MarketTradingMode": { - "type": "string", - "enum": [ - "TRADING_MODE_UNSPECIFIED", - "TRADING_MODE_CONTINUOUS", - "TRADING_MODE_BATCH_AUCTION", - "TRADING_MODE_OPENING_AUCTION", - "TRADING_MODE_MONITORING_AUCTION", - "TRADING_MODE_NO_TRADING", - "TRADING_MODE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "TRADING_MODE_UNSPECIFIED", - "description": "- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance", - "title": "Trading mode the market is currently running, also referred to as 'market state'" - }, - "apiv1Account": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "market": { - "type": "string" - }, - "balance": { - "type": "string" - }, - "asset": { - "type": "string" - }, - "type": { - "type": "string" - } - } - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1ListAccountsResponse": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/apiv1Account" - } - } - } - }, - "v1ListAssetsResponse": { - "type": "object", - "properties": { - "assets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAsset" - } - } - } - }, - "v1ListDelegationsResponse": { - "type": "object", - "properties": { - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - } - } - } - }, - "v1ListMarketsDataResponse": { - "type": "object", - "properties": { - "marketsData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketData" - } - } - } - }, - "v1ListMarketsResponse": { - "type": "object", - "properties": { - "markets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarket" - } - } - } - }, - "v1ListNetworkLimitsResponse": { - "type": "object", - "properties": { - "networkLimits": { - "$ref": "#/definitions/vegaNetworkLimits" - } - } - }, - "v1ListNetworkParametersResponse": { - "type": "object", - "properties": { - "networkParameters": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNetworkParameter" - } - } - } - }, - "v1ListPartiesResponse": { - "type": "object", - "properties": { - "parties": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaParty" - } - } - } - }, - "v1ListPartiesStakeResponse": { - "type": "object", - "properties": { - "partiesStake": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyStake" - } - } - } - }, - "v1ListProposalsResponse": { - "type": "object", - "properties": { - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaProposal" - } - } - } - }, - "v1ListValidatorsResponse": { - "type": "object", - "properties": { - "validators": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ValidatorUpdate" - } - } - } - }, - "v1ListVotesResponse": { - "type": "object", - "properties": { - "votes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - } - } - } - }, - "v1PartyStake": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "currentStakeAvailable": { - "type": "string" - }, - "stakeLinkings": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StakeLinking" - } - } - } - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1StakeLinking": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Internal ID for this staking event" - }, - "type": { - "$ref": "#/definitions/v1StakeLinkingType", - "description": "Stake linking event type." - }, - "ts": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the event was emitted by Ethereum." - }, - "party": { - "type": "string", - "description": "Party to whom the event is directed at." - }, - "amount": { - "type": "string", - "description": "Amount of stake deposited or removed." - }, - "status": { - "$ref": "#/definitions/v1StakeLinkingStatus", - "description": "Status of the event." - }, - "finalizedAt": { - "type": "string", - "format": "int64", - "description": "Time at which the Vega network finalised the state of the event." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction in which the event happened." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block when the event happened." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Block time." - }, - "logIndex": { - "type": "string", - "format": "uint64", - "description": "Log index." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum address from which the stake link was initiated." - } - }, - "title": "StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network" - }, - "v1StakeLinkingStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_ACCEPTED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network" - }, - "v1StakeLinkingType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LINK", - "TYPE_UNLINK" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction" - }, - "v1ValidatorUpdate": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the validator node" - }, - "vegaPubKey": { - "type": "string", - "title": "Vega public key of validator node" - }, - "ethereumAddress": { - "type": "string", - "title": "Ethereum public key of validator node" - }, - "tmPubKey": { - "type": "string", - "title": "Public key of Tendermint" - }, - "infoUrl": { - "type": "string", - "title": "URL with more info on the node" - }, - "country": { - "type": "string", - "title": "Country code (ISO 3166-1 alpha-2) for the location of the node" - }, - "name": { - "type": "string", - "title": "Name of the validator" - }, - "avatarUrl": { - "type": "string", - "title": "AvatarURL of the validator" - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "title": "Vega public key derivation index" - }, - "added": { - "type": "boolean", - "title": "Flag indicating if the validator has been added to or removed from vega" - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the announced pending node will start participating in the network" - }, - "submitterAddress": { - "type": "string", - "title": "Ethereum public key being used as the submitter to allow automatic signature generation" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the node was announced or removed from the network" - } - }, - "title": "Validator update event contains information about validator node" - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAsset": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Internal identifier of the asset." - }, - "details": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Definition of the external source for this asset." - }, - "status": { - "$ref": "#/definitions/vegaAssetStatus", - "description": "Status of the asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaAssetStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PROPOSED", - "STATUS_REJECTED", - "STATUS_PENDING_LISTING", - "STATUS_ENABLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network" - }, - "vegaAuctionDuration": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "format": "int64", - "description": "Duration of the auction in seconds." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Target uncrossing trading volume." - } - }, - "title": "Auction duration is used to configure 3 auction periods:\n1. `duration \u003e 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume \u003e 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration \u003e 0`, `volume \u003e 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume" - }, - "vegaAuctionTrigger": { - "type": "string", - "enum": [ - "AUCTION_TRIGGER_UNSPECIFIED", - "AUCTION_TRIGGER_BATCH", - "AUCTION_TRIGGER_OPENING", - "AUCTION_TRIGGER_PRICE", - "AUCTION_TRIGGER_LIQUIDITY", - "AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET", - "AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS", - "AUCTION_TRIGGER_GOVERNANCE_SUSPENSION" - ], - "default": "AUCTION_TRIGGER_UNSPECIFIED", - "description": "- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance", - "title": "Auction triggers indicate what condition triggered an auction (if market is in auction mode)" - }, - "vegaBatchProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "proposalParams": { - "$ref": "#/definitions/vegaProposalParameters", - "description": "Specific parameters defining the proposal's characteristics used for validation." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal on Vega" - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpec": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Hash generated from the DataSpec data." - }, - "createdAt": { - "type": "string", - "format": "int64", - "title": "Creation date and time" - }, - "updatedAt": { - "type": "string", - "format": "int64", - "title": "Last Updated timestamp" - }, - "data": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "status": { - "$ref": "#/definitions/vegaDataSourceSpecStatus", - "title": "Status describes the status of the data source spec" - } - }, - "description": "Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_DEACTIVATED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.", - "title": "Status describe the status of the data source spec" - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDelegation": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party which is delegating." - }, - "nodeId": { - "type": "string", - "description": "Node ID to delegate to." - }, - "amount": { - "type": "string", - "description": "Amount delegated. This field is an unsigned integer scaled to the asset's decimal places." - }, - "epochSeq": { - "type": "string", - "description": "Epoch of delegation." - } - } - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaFeeFactors": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Market maker fee charged network wide." - }, - "infrastructureFee": { - "type": "string", - "description": "Infrastructure fee charged network wide for staking and governance." - }, - "liquidityFee": { - "type": "string", - "description": "Liquidity fee applied per market for market making." - } - }, - "title": "Fee factors definition" - }, - "vegaFees": { - "type": "object", - "properties": { - "factors": { - "$ref": "#/definitions/vegaFeeFactors", - "description": "Fee factors." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Liquidity fee settings for the market describing how the fee was calculated." - } - }, - "title": "Fees definition" - }, - "vegaFuture": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the future." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the settlement data source filter." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the trading termination data source filter." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data spec and the data source." - } - }, - "title": "Future product definition" - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique instrument ID." - }, - "code": { - "type": "string", - "description": "Code for the instrument." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - }, - "metadata": { - "$ref": "#/definitions/vegaInstrumentMetadata", - "description": "Collection of instrument meta-data." - }, - "future": { - "$ref": "#/definitions/vegaFuture", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpot", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetual", - "description": "Perpetual." - } - }, - "title": "Instrument definition" - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaInstrumentMetadata": { - "type": "object", - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of 0 or more tags." - } - }, - "title": "Instrument metadata definition" - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquidityProviderFeeShare": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "equityLikeShare": { - "type": "string", - "description": "Share own by this liquidity provider." - }, - "averageEntryValuation": { - "type": "string", - "description": "Average entry valuation of the liquidity provider for the market." - }, - "averageScore": { - "type": "string", - "description": "Average liquidity score." - }, - "virtualStake": { - "type": "string", - "description": "The virtual stake of this liquidity provider." - } - }, - "title": "Equity like share of liquidity fee for each liquidity provider" - }, - "vegaLiquidityProviderSLA": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "currentEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP meets the commitment during the current epoch." - }, - "lastEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP met the commitment in the previous epoch." - }, - "lastEpochFeePenalty": { - "type": "string", - "description": "Indicates the fee penalty amount applied in the previous epoch." - }, - "lastEpochBondPenalty": { - "type": "string", - "description": "Shows the bond penalties from past epochs." - }, - "hysteresisPeriodFeePenalties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Determines how the fee penalties from past epochs affect future fee revenue." - }, - "requiredLiquidity": { - "type": "string", - "description": "Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range." - }, - "notionalVolumeBuys": { - "type": "string", - "description": "Notional volume of orders within the range provided on the buy side of the book." - }, - "notionalVolumeSells": { - "type": "string", - "description": "Notional volume of orders within the range provided on the sell side of the book." - } - }, - "title": "SLA performance for each liquidity provider" - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarginCalculator": { - "type": "object", - "properties": { - "scalingFactors": { - "$ref": "#/definitions/vegaScalingFactors", - "description": "Scaling factors for margin calculation." - } - }, - "title": "Margin Calculator definition" - }, - "vegaMarket": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the market." - }, - "tradableInstrument": { - "$ref": "#/definitions/vegaTradableInstrument", - "description": "Tradable instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`." - }, - "fees": { - "$ref": "#/definitions/vegaFees", - "description": "Fees configuration that apply to the market." - }, - "openingAuction": { - "$ref": "#/definitions/vegaAuctionDuration", - "description": "Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)." - }, - "priceMonitoringSettings": { - "$ref": "#/definitions/vegaPriceMonitoringSettings", - "description": "PriceMonitoringSettings for the market." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "LiquidityMonitoringParameters for the market." - }, - "tradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current mode of execution of the market." - }, - "state": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "marketTimestamps": { - "$ref": "#/definitions/vegaMarketTimestamps", - "description": "Timestamps for when the market state changes." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "The number of decimal places for a position." - }, - "lpPriceRange": { - "type": "string", - "description": "Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "parentMarketId": { - "type": "string", - "title": "ID of the market this market succeeds" - }, - "insurancePoolFraction": { - "type": "string", - "description": "The fraction of the parent market's insurance pool that this market inherits; range 0 through 1." - }, - "successorMarketId": { - "type": "string", - "description": "ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled." - }, - "liquiditySlaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Liquidity SLA parameters for the market." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy used by this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price calculation configuration." - } - }, - "title": "Market definition" - }, - "vegaMarketData": { - "type": "object", - "properties": { - "markPrice": { - "type": "string", - "description": "Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidPrice": { - "type": "string", - "description": "Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestOfferPrice": { - "type": "string", - "description": "Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places." - }, - "bestOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestStaticBidPrice": { - "type": "string", - "description": "Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticBidVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static bid price excluding pegged orders." - }, - "bestStaticOfferPrice": { - "type": "string", - "description": "Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static offer price, excluding pegged orders." - }, - "midPrice": { - "type": "string", - "description": "Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "staticMidPrice": { - "type": "string", - "description": "Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "market": { - "type": "string", - "title": "Market ID for the data" - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which this mark price was relevant." - }, - "openInterest": { - "type": "string", - "format": "uint64", - "description": "Sum of the size of all positions greater than zero on the market." - }, - "auctionEnd": { - "type": "string", - "format": "int64", - "description": "Time in seconds until the end of the auction (zero if currently not in auction period)." - }, - "auctionStart": { - "type": "string", - "format": "int64", - "description": "Time until next auction, or start time of the current auction if market is in auction period." - }, - "indicativePrice": { - "type": "string", - "description": "Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places." - }, - "indicativeVolume": { - "type": "string", - "format": "uint64", - "description": "Indicative volume (zero if not in auction)." - }, - "marketTradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current trading mode for the market." - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market is in an auction trading mode, this field indicates what triggered the auction." - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market auction is extended, this field indicates what caused the extension." - }, - "targetStake": { - "type": "string", - "description": "Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "suppliedStake": { - "type": "string", - "description": "Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "priceMonitoringBounds": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringBounds" - }, - "description": "One or more price monitoring bounds for the current timestamp." - }, - "marketValueProxy": { - "type": "string", - "description": "Market value proxy." - }, - "liquidityProviderFeeShare": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare" - }, - "description": "Equity like share of liquidity fee for each liquidity provider." - }, - "marketState": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "nextMarkToMarket": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the next mark-to-market calculation will occur." - }, - "lastTradedPrice": { - "type": "string", - "description": "Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places." - }, - "marketGrowth": { - "type": "string", - "description": "Market growth at the last market time window." - }, - "productData": { - "$ref": "#/definitions/vegaProductData", - "description": "Data related to the particular product type of the market." - }, - "liquidityProviderSla": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderSLA" - }, - "description": "SLA performance for each liquidity provider." - }, - "nextNetworkCloseout": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the market will next submit a trade to reduce its position." - }, - "markPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the mark price." - } - }, - "title": "Represents data generated by a market when open" - }, - "vegaMarketState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_PROPOSED", - "STATE_REJECTED", - "STATE_PENDING", - "STATE_CANCELLED", - "STATE_ACTIVE", - "STATE_SUSPENDED", - "STATE_CLOSED", - "STATE_TRADING_TERMINATED", - "STATE_SETTLED", - "STATE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance", - "title": "Current state of the market" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMarketTimestamps": { - "type": "object", - "properties": { - "proposed": { - "type": "string", - "format": "int64", - "description": "Time when the market is first proposed." - }, - "pending": { - "type": "string", - "format": "int64", - "description": "Time when the market has been voted in and began its opening auction." - }, - "open": { - "type": "string", - "format": "int64", - "description": "Time when the market has left the opening auction and is ready to accept trades." - }, - "close": { - "type": "string", - "format": "int64", - "description": "Time when the market closed." - } - }, - "title": "Time stamps for important times about creating, enacting etc the market" - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkLimits": { - "type": "object", - "properties": { - "canProposeMarket": { - "type": "boolean", - "description": "Are market proposals allowed at this point in time." - }, - "canProposeAsset": { - "type": "boolean", - "description": "Are asset proposals allowed at this point in time." - }, - "proposeMarketEnabled": { - "type": "boolean", - "description": "Are market proposals enabled on this chain." - }, - "proposeAssetEnabled": { - "type": "boolean", - "description": "Are asset proposals enabled on this chain." - }, - "genesisLoaded": { - "type": "boolean", - "description": "True once the genesis file is loaded." - }, - "proposeMarketEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set)." - }, - "proposeAssetEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set)." - }, - "canProposeSpotMarket": { - "type": "boolean", - "description": "Are spot market proposals allowed at this point in time." - }, - "canProposePerpetualMarket": { - "type": "boolean", - "description": "Are perpetual market proposals allowed at this point in time." - } - }, - "title": "Network limits, defined in the genesis file" - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaParty": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the party, typically represented by a public key." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "title": "Party represents an entity who wishes to trade on or query a Vega network" - }, - "vegaPerpetual": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the perpetual." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfig": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Optional configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product definition" - }, - "vegaPerpetualData": { - "type": "object", - "properties": { - "fundingPayment": { - "type": "string", - "description": "Current funding payment for the in-progress funding period." - }, - "fundingRate": { - "type": "string", - "description": "Current funding rate for the in-progress funding period." - }, - "internalTwap": { - "type": "string", - "description": "Time-weighted-average the internal data-points for the in-progress funding period." - }, - "externalTwap": { - "type": "string", - "description": "Time-weighted-average the external data points for the in-progress funding period." - }, - "seqNum": { - "type": "string", - "format": "uint64", - "title": "Funding period sequence number" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Funding period start time" - }, - "indexPrice": { - "type": "string", - "description": "The index price used for perps." - }, - "nextIndexPriceCalc": { - "type": "string", - "format": "int64", - "description": "The next time the index price is calculated for perps." - }, - "indexPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the index price (perps only)." - } - }, - "description": "Represents market data specific to a perpetual market." - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPriceMonitoringBounds": { - "type": "object", - "properties": { - "minValidPrice": { - "type": "string", - "description": "Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "maxValidPrice": { - "type": "string", - "description": "Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "trigger": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger", - "description": "Price monitoring trigger associated with the bounds." - }, - "referencePrice": { - "type": "string", - "description": "Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places." - } - }, - "title": "Represents a list of valid (at the current timestamp) price ranges per associated trigger" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringSettings": { - "type": "object", - "properties": { - "parameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Specifies price monitoring parameters to be used for price monitoring purposes." - } - }, - "title": "PriceMonitoringSettings contains the settings for price monitoring" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProductData": { - "type": "object", - "properties": { - "perpetualData": { - "$ref": "#/definitions/vegaPerpetualData" - } - }, - "description": "Represents market data specific to a particular product type." - }, - "vegaProposal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique proposal ID." - }, - "reference": { - "type": "string", - "description": "Proposal reference." - }, - "partyId": { - "type": "string", - "description": "Party ID i.e. public key of the party submitting the proposal." - }, - "state": { - "$ref": "#/definitions/vegaProposalState", - "description": "Current state of the proposal, i.e. open, passed, failed etc." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term." - }, - "reason": { - "$ref": "#/definitions/vegaProposalError", - "description": "Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses." - }, - "errorDetails": { - "type": "string", - "description": "Detailed error associated to the reason." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - }, - "requiredParticipation": { - "type": "string", - "description": "Required vote participation for this proposal." - }, - "requiredMajority": { - "type": "string", - "description": "Required majority for this proposal." - }, - "requiredLiquidityProviderParticipation": { - "type": "string", - "description": "Required participation from liquidity providers, optional but is required for market update proposal." - }, - "requiredLiquidityProviderMajority": { - "type": "string", - "description": "Required majority from liquidity providers, optional but is required for market update proposal." - }, - "batchTerms": { - "$ref": "#/definitions/vegaBatchProposalTerms", - "description": "Batch proposal terms." - }, - "batchId": { - "type": "string", - "description": "ID of a batch proposal that this proposal is part of." - } - }, - "title": "Governance proposal" - }, - "vegaProposalError": { - "type": "string", - "enum": [ - "PROPOSAL_ERROR_UNSPECIFIED", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE", - "PROPOSAL_ERROR_ENACT_TIME_TOO_SOON", - "PROPOSAL_ERROR_ENACT_TIME_TOO_LATE", - "PROPOSAL_ERROR_INSUFFICIENT_TOKENS", - "PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY", - "PROPOSAL_ERROR_NO_PRODUCT", - "PROPOSAL_ERROR_UNSUPPORTED_PRODUCT", - "PROPOSAL_ERROR_NO_TRADING_MODE", - "PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE", - "PROPOSAL_ERROR_NODE_VALIDATION_FAILED", - "PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD", - "PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS", - "PROPOSAL_ERROR_INVALID_ASSET", - "PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS", - "PROPOSAL_ERROR_NO_RISK_PARAMETERS", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE", - "PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE", - "PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET", - "PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT", - "PROPOSAL_ERROR_INVALID_RISK_PARAMETER", - "PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_INVALID_ASSET_DETAILS", - "PROPOSAL_ERROR_UNKNOWN_TYPE", - "PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE", - "PROPOSAL_ERROR_INVALID_FREEFORM", - "PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE", - "PROPOSAL_ERROR_INVALID_MARKET", - "PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES", - "PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS", - "PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE", - "PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_INVALID_SPOT", - "PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED", - "PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE", - "PROPOSAL_ERROR_INVALID_SLA_PARAMS", - "PROPOSAL_ERROR_MISSING_SLA_PARAMS", - "PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT", - "PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM", - "PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED" - ], - "default": "PROPOSAL_ERROR_UNSPECIFIED", - "description": "- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation \u003c Closing \u003c Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined", - "title": "List of possible errors that can cause a proposal to be in state rejected or failed" - }, - "vegaProposalParameters": { - "type": "object", - "properties": { - "minClose": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before a proposal can be closed for voting." - }, - "maxClose": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time that a proposal can be open for voting." - }, - "minEnact": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before an enacted proposal takes effect." - }, - "maxEnact": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time before an enacted proposal must take effect." - }, - "requiredParticipation": { - "type": "string", - "description": "Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid." - }, - "requiredMajority": { - "type": "string", - "description": "Specifies the required percentage of votes a proposal needs to be approved." - }, - "minProposerBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a proposer must hold to initiate a proposal." - }, - "minVoterBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a voter must hold to participate in voting." - }, - "requiredParticipationLp": { - "type": "string", - "description": "Specifies the required percentage of participation from liquidity providers for the proposal to be valid." - }, - "requiredMajorityLp": { - "type": "string", - "description": "Specifies the required majority percentage from liquidity providers for a proposal to be approved." - }, - "minEquityLikeShare": { - "type": "string", - "description": "Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible." - } - } - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_FAILED", - "STATE_OPEN", - "STATE_PASSED", - "STATE_REJECTED", - "STATE_DECLINED", - "STATE_ENACTED", - "STATE_WAITING_FOR_NODE_VOTE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal", - "title": "Proposal state transition:\nOpen -\u003e\n - Passed -\u003e Enacted.\n - Passed -\u003e Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state" - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaScalingFactors": { - "type": "object", - "properties": { - "searchLevel": { - "type": "number", - "format": "double", - "description": "Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release." - }, - "initialMargin": { - "type": "number", - "format": "double", - "description": "Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin." - }, - "collateralRelease": { - "type": "number", - "format": "double", - "description": "Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset." - } - }, - "title": "Scaling Factors (for use in margin calculation)" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSimpleRiskModel": { - "type": "object", - "properties": { - "params": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Risk model params for simple modelling." - } - }, - "title": "Risk model for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpot": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Asset ID of the underlying base asset for the spot product." - }, - "quoteAsset": { - "type": "string", - "description": "Asset ID of the underlying quote asset for the spot product." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - } - }, - "title": "Spot product definition" - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaTradableInstrument": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrument", - "description": "Details for the underlying instrument." - }, - "marginCalculator": { - "$ref": "#/definitions/vegaMarginCalculator", - "description": "Margin calculator for the instrument." - }, - "logNormalRiskModel": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal." - }, - "simpleRiskModel": { - "$ref": "#/definitions/vegaSimpleRiskModel", - "description": "Simple." - } - }, - "title": "Tradable Instrument definition" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVote": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Voter's party ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Which way the party voted." - }, - "proposalId": { - "type": "string", - "description": "Proposal ID being voted on." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the vote was acknowledged by the network." - }, - "totalGovernanceTokenBalance": { - "type": "string", - "description": "Total number of governance token for the party that cast the vote." - }, - "totalGovernanceTokenWeight": { - "type": "string", - "description": "The weight of this vote based on the total number of governance tokens." - }, - "totalEquityLikeShareWeight": { - "type": "string", - "description": "The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal." - }, - "perMarketEquityLikeShareWeight": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal." - } - }, - "title": "Governance vote" - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/assets.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/assets.swagger.json deleted file mode 100644 index 9d097dbb9..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/assets.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/assets.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/chain_events.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/chain_events.swagger.json deleted file mode 100644 index 7e122e440..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/chain_events.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/chain_events.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/checkpoint/v1/checkpoint.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/checkpoint/v1/checkpoint.swagger.json deleted file mode 100644 index cdccfb99c..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/checkpoint/v1/checkpoint.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/checkpoint/v1/checkpoint.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/commands.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/commands.swagger.json deleted file mode 100644 index 26814accb..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/commands.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/commands.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/data.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/data.swagger.json deleted file mode 100644 index 72e1066f9..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/data.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/data.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/signature.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/signature.swagger.json deleted file mode 100644 index bca419264..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/signature.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/signature.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/transaction.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/transaction.swagger.json deleted file mode 100644 index 80565817c..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/transaction.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/transaction.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/validator_commands.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/validator_commands.swagger.json deleted file mode 100644 index 11a4f0aac..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/commands/v1/validator_commands.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/validator_commands.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/data.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/data.swagger.json deleted file mode 100644 index dac21342e..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/data.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data/v1/data.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "rpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/spec.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/spec.swagger.json deleted file mode 100644 index 77fbc8b87..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/data/v1/spec.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data/v1/spec.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "rpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/data_source.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/data_source.swagger.json deleted file mode 100644 index fc4472949..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/data_source.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data_source.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/events/v1/events.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/events/v1/events.swagger.json deleted file mode 100644 index 2b32a0c55..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/events/v1/events.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/events/v1/events.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/governance.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/governance.swagger.json deleted file mode 100644 index 45c945a56..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/governance.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/governance.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/markets.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/markets.swagger.json deleted file mode 100644 index 8fbf8badc..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/markets.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/markets.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/oracle.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/oracle.swagger.json deleted file mode 100644 index ef6f33a5a..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/oracle.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/oracle.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/snapshot/v1/snapshot.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/snapshot/v1/snapshot.swagger.json deleted file mode 100644 index fbdb3af1d..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/snapshot/v1/snapshot.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/snapshot/v1/snapshot.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/vega.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/vega.swagger.json deleted file mode 100644 index 53809884b..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/vega.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/vega.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/data-node/swagger/vega/wallet/v1/wallet.swagger.json b/specs/v0.74.0-preview.6/data-node/swagger/vega/wallet/v1/wallet.swagger.json deleted file mode 100644 index f14317268..000000000 --- a/specs/v0.74.0-preview.6/data-node/swagger/vega/wallet/v1/wallet.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/wallet/v1/wallet.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/grpc/proto.json b/specs/v0.74.0-preview.6/grpc/proto.json deleted file mode 100644 index e6f5c6206..000000000 --- a/specs/v0.74.0-preview.6/grpc/proto.json +++ /dev/null @@ -1,61213 +0,0 @@ -{ - "files": [ - { - "name": "vega/commands/v1/signature.proto", - "description": "", - "package": "vega.commands.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "Signature", - "longName": "Signature", - "fullName": "vega.commands.v1.Signature", - "description": "Signature definition that allows the network to authenticate external data.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "value", - "description": "Hex encoded bytes of the signature.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "algo", - "description": "Algorithm used to create the signature.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "version", - "description": "Version of the algorithm used to create the signature.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/chain_events.proto", - "description": "", - "package": "vega", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "BuiltinAssetDeposit", - "longName": "BuiltinAssetDeposit", - "fullName": "vega.BuiltinAssetDeposit", - "description": "Deposit for a Vega built-in asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_asset_id", - "description": "Vega network internal asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Vega party ID i.e. public key.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BuiltinAssetEvent", - "longName": "BuiltinAssetEvent", - "fullName": "vega.BuiltinAssetEvent", - "description": "Event related to a Vega built-in asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "deposit", - "description": "Built-in asset deposit.", - "label": "", - "type": "BuiltinAssetDeposit", - "longType": "BuiltinAssetDeposit", - "fullType": "vega.BuiltinAssetDeposit", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "withdrawal", - "description": "Built-in asset withdrawal.", - "label": "", - "type": "BuiltinAssetWithdrawal", - "longType": "BuiltinAssetWithdrawal", - "fullType": "vega.BuiltinAssetWithdrawal", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - } - ] - }, - { - "name": "BuiltinAssetWithdrawal", - "longName": "BuiltinAssetWithdrawal", - "fullName": "vega.BuiltinAssetWithdrawal", - "description": "Withdrawal for a Vega built-in asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_asset_id", - "description": "Vega network internal asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Vega network party ID i.e. public key.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20AssetDelist", - "longName": "ERC20AssetDelist", - "fullName": "vega.ERC20AssetDelist", - "description": "Asset deny-listing for an ERC20 token", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_asset_id", - "description": "Vega network internal asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20AssetLimitsUpdated", - "longName": "ERC20AssetLimitsUpdated", - "fullName": "vega.ERC20AssetLimitsUpdated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_asset_id", - "description": "Vega network internal asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "source_ethereum_address", - "description": "Ethereum wallet that initiated the deposit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lifetime_limits", - "description": "Updated lifetime limits.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "withdraw_threshold", - "description": "Updated withdrawal threshold.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20AssetList", - "longName": "ERC20AssetList", - "fullName": "vega.ERC20AssetList", - "description": "Asset allow-listing for an ERC20 token", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_asset_id", - "description": "Vega network internal asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_source", - "description": "Ethereum address of the asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20Deposit", - "longName": "ERC20Deposit", - "fullName": "vega.ERC20Deposit", - "description": "Asset deposit for an ERC20 token", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_asset_id", - "description": "Vega network internal asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "source_ethereum_address", - "description": "Ethereum wallet that initiated the deposit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "target_party_id", - "description": "Vega party ID i.e. public key that is the target of the deposit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to be deposited.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20Event", - "longName": "ERC20Event", - "fullName": "vega.ERC20Event", - "description": "Event related to an ERC20 token", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "index", - "description": "Index of the log in the transaction.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block", - "description": "Block in which the transaction was added.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_list", - "description": "List an ERC20 asset.", - "label": "", - "type": "ERC20AssetList", - "longType": "ERC20AssetList", - "fullType": "vega.ERC20AssetList", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "asset_delist", - "description": "De-list an ERC20 asset.", - "label": "", - "type": "ERC20AssetDelist", - "longType": "ERC20AssetDelist", - "fullType": "vega.ERC20AssetDelist", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "deposit", - "description": "Deposit ERC20 asset.", - "label": "", - "type": "ERC20Deposit", - "longType": "ERC20Deposit", - "fullType": "vega.ERC20Deposit", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "withdrawal", - "description": "Withdraw ERC20 asset.", - "label": "", - "type": "ERC20Withdrawal", - "longType": "ERC20Withdrawal", - "fullType": "vega.ERC20Withdrawal", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "asset_limits_updated", - "description": "Update an ERC20 asset.", - "label": "", - "type": "ERC20AssetLimitsUpdated", - "longType": "ERC20AssetLimitsUpdated", - "fullType": "vega.ERC20AssetLimitsUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "bridge_stopped", - "description": "Bridge operations has been stopped.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "bridge_resumed", - "description": "Bridge operations has been resumed.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigEvent", - "longName": "ERC20MultiSigEvent", - "fullName": "vega.ERC20MultiSigEvent", - "description": "Event related to the ERC20 MultiSig", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "index", - "description": "Index of the log in the transaction", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block", - "description": "Block in which the transaction was added", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signer_added", - "description": "Add a signer to the erc20 bridge", - "label": "", - "type": "ERC20SignerAdded", - "longType": "ERC20SignerAdded", - "fullType": "vega.ERC20SignerAdded", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "signer_removed", - "description": "Remove a signer from the erc20 bridge", - "label": "", - "type": "ERC20SignerRemoved", - "longType": "ERC20SignerRemoved", - "fullType": "vega.ERC20SignerRemoved", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "threshold_set", - "description": "Threshold set", - "label": "", - "type": "ERC20ThresholdSet", - "longType": "ERC20ThresholdSet", - "fullType": "vega.ERC20ThresholdSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20SignerAdded", - "longName": "ERC20SignerAdded", - "fullName": "vega.ERC20SignerAdded", - "description": "New signer added to the ERC20 bridge", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "new_signer", - "description": "Ethereum address of the new signer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce created by the Vega network used for this new signer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20SignerRemoved", - "longName": "ERC20SignerRemoved", - "fullName": "vega.ERC20SignerRemoved", - "description": "Signer removed from the ERC20 bridge", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "old_signer", - "description": "Ethereum address of the old signer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce created by the Vega network used for this old signer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20ThresholdSet", - "longName": "ERC20ThresholdSet", - "fullName": "vega.ERC20ThresholdSet", - "description": "Threshold has been updated on the multisig control", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "new_threshold", - "description": "New threshold value to set", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce created by the Vega network", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20Withdrawal", - "longName": "ERC20Withdrawal", - "fullName": "vega.ERC20Withdrawal", - "description": "Asset withdrawal for an ERC20 token", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_asset_id", - "description": "Vega network internal asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "target_ethereum_address", - "description": "Target Ethereum wallet address.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference_nonce", - "description": "Reference nonce used for the transaction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthContractCallEvent", - "longName": "EthContractCallEvent", - "fullName": "vega.EthContractCallEvent", - "description": "Result of calling an arbitrary Ethereum contract method", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "spec_id", - "description": "ID of the data source spec that triggered this contract call.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_height", - "description": "Ethereum block height.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "Ethereum block time in Unix seconds.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "result", - "description": "Result of contract call, packed according to the ABI stored in the associated data source spec.", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "error", - "description": "Error message if the call failed.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_error", - "defaultValue": "" - }, - { - "name": "source_chain_id", - "description": "Source chain for this chain event.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_source_chain_id", - "defaultValue": "" - } - ] - }, - { - "name": "StakeDeposited", - "longName": "StakeDeposited", - "fullName": "vega.StakeDeposited", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ethereum_address", - "description": "Ethereum Address of the user depositing stake (hex encode with 0x prefix)", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_public_key", - "description": "Hex encoded public key of the party receiving the stake deposit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakeRemoved", - "longName": "StakeRemoved", - "fullName": "vega.StakeRemoved", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ethereum_address", - "description": "Ethereum address of the user removing stake. This should be hex encoded with 0x prefix.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_public_key", - "description": "Hex encoded public key of the party from which to remove stake.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount removed as a base 10 unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakeTotalSupply", - "longName": "StakeTotalSupply", - "fullName": "vega.StakeTotalSupply", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "token_address", - "description": "Address of the staking asset", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_supply", - "description": "Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakingEvent", - "longName": "StakingEvent", - "fullName": "vega.StakingEvent", - "description": "Event related to staking on the Vega network.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "index", - "description": "Index of the log in the transaction.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block", - "description": "Block in which the transaction was added.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake_deposited", - "description": "", - "label": "", - "type": "StakeDeposited", - "longType": "StakeDeposited", - "fullType": "vega.StakeDeposited", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "stake_removed", - "description": "", - "label": "", - "type": "StakeRemoved", - "longType": "StakeRemoved", - "fullType": "vega.StakeRemoved", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - }, - { - "name": "total_supply", - "description": "", - "label": "", - "type": "StakeTotalSupply", - "longType": "StakeTotalSupply", - "fullType": "vega.StakeTotalSupply", - "ismap": false, - "isoneof": true, - "oneofdecl": "action", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/data/v1/data.proto", - "description": "", - "package": "vega.data.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "Data", - "longName": "Data", - "fullName": "vega.data.v1.Data", - "description": "Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "signers", - "description": "", - "label": "repeated", - "type": "Signer", - "longType": "Signer", - "fullType": "vega.data.v1.Signer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data", - "description": "Data holds all the properties of the data", - "label": "repeated", - "type": "Property", - "longType": "Property", - "fullType": "vega.data.v1.Property", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "matched_spec_ids", - "description": "`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "broadcast_at", - "description": "Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "meta_data", - "description": "Holds all metadata properties", - "label": "repeated", - "type": "Property", - "longType": "Property", - "fullType": "vega.data.v1.Property", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "error", - "description": "Error message if the data could not be sourced.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_error", - "defaultValue": "" - } - ] - }, - { - "name": "ETHAddress", - "longName": "ETHAddress", - "fullName": "vega.data.v1.ETHAddress", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ExternalData", - "longName": "ExternalData", - "fullName": "vega.data.v1.ExternalData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "data", - "description": "", - "label": "", - "type": "Data", - "longType": "Data", - "fullType": "vega.data.v1.Data", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Property", - "longName": "Property", - "fullName": "vega.data.v1.Property", - "description": "Property describes one property of data spec with a key with its value.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "name", - "description": "Name of the property.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "Value of the property.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PubKey", - "longName": "PubKey", - "fullName": "vega.data.v1.PubKey", - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Signer", - "longName": "Signer", - "fullName": "vega.data.v1.Signer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pub_key", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.", - "label": "", - "type": "PubKey", - "longType": "PubKey", - "fullType": "vega.data.v1.PubKey", - "ismap": false, - "isoneof": true, - "oneofdecl": "signer", - "defaultValue": "" - }, - { - "name": "eth_address", - "description": "In case of an open oracle - Ethereum address will be submitted.", - "label": "", - "type": "ETHAddress", - "longType": "ETHAddress", - "fullType": "vega.data.v1.ETHAddress", - "ismap": false, - "isoneof": true, - "oneofdecl": "signer", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/data/v1/spec.proto", - "description": "", - "package": "vega.data.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "Operator", - "longName": "Condition.Operator", - "fullName": "vega.data.v1.Condition.Operator", - "description": "Operator describes the type of comparison.", - "values": [ - { - "name": "OPERATOR_UNSPECIFIED", - "number": "0", - "description": "The default value" - }, - { - "name": "OPERATOR_EQUALS", - "number": "1", - "description": "Verify if the property values are strictly equal or not." - }, - { - "name": "OPERATOR_GREATER_THAN", - "number": "2", - "description": "Verify if the data source data value is greater than the Condition value." - }, - { - "name": "OPERATOR_GREATER_THAN_OR_EQUAL", - "number": "3", - "description": "Verify if the data source data value is greater than or equal to the Condition\nvalue." - }, - { - "name": "OPERATOR_LESS_THAN", - "number": "4", - "description": "Verify if the data source data value is less than the Condition value." - }, - { - "name": "OPERATOR_LESS_THAN_OR_EQUAL", - "number": "5", - "description": "Verify if the data source data value is less or equal to than the Condition\nvalue." - } - ] - }, - { - "name": "Type", - "longName": "PropertyKey.Type", - "fullName": "vega.data.v1.PropertyKey.Type", - "description": "Type describes the data type of properties that are supported by the data source\nengine.", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "The default value." - }, - { - "name": "TYPE_EMPTY", - "number": "1", - "description": "Any type." - }, - { - "name": "TYPE_INTEGER", - "number": "2", - "description": "Integer type." - }, - { - "name": "TYPE_STRING", - "number": "3", - "description": "String type." - }, - { - "name": "TYPE_BOOLEAN", - "number": "4", - "description": "Boolean type." - }, - { - "name": "TYPE_DECIMAL", - "number": "5", - "description": "Any floating point decimal type." - }, - { - "name": "TYPE_TIMESTAMP", - "number": "6", - "description": "Timestamp date type." - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "Condition", - "longName": "Condition", - "fullName": "vega.data.v1.Condition", - "description": "Condition describes the condition that must be validated by the network", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "operator", - "description": "Type of comparison to make on the value.", - "label": "", - "type": "Operator", - "longType": "Condition.Operator", - "fullType": "vega.data.v1.Condition.Operator", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "Value to be compared with by the operator.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Filter", - "longName": "Filter", - "fullName": "vega.data.v1.Filter", - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "Data source's data property key targeted by the filter.", - "label": "", - "type": "PropertyKey", - "longType": "PropertyKey", - "fullType": "vega.data.v1.PropertyKey", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "conditions", - "description": "Conditions that should be matched by the data to be\nconsidered of interest.", - "label": "repeated", - "type": "Condition", - "longType": "Condition", - "fullType": "vega.data.v1.Condition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "InternalTimeTrigger", - "longName": "InternalTimeTrigger", - "fullName": "vega.data.v1.InternalTimeTrigger", - "description": "Trigger for an internal time data source.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "initial", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_initial", - "defaultValue": "" - }, - { - "name": "every", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PropertyKey", - "longName": "PropertyKey", - "fullName": "vega.data.v1.PropertyKey", - "description": "PropertyKey describes the property key contained in data source data.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "name", - "description": "Name of the property.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Data type of the property.", - "label": "", - "type": "Type", - "longType": "PropertyKey.Type", - "fullType": "vega.data.v1.PropertyKey.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "number_decimal_places", - "description": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_number_decimal_places", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/data_source.proto", - "description": "", - "package": "vega", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "Status", - "longName": "DataSourceSpec.Status", - "fullName": "vega.DataSourceSpec.Status", - "description": "Status describe the status of the data source spec", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value." - }, - { - "name": "STATUS_ACTIVE", - "number": "1", - "description": "STATUS_ACTIVE describes an active data source spec." - }, - { - "name": "STATUS_DEACTIVATED", - "number": "2", - "description": "STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore." - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "DataSourceDefinition", - "longName": "DataSourceDefinition", - "fullName": "vega.DataSourceDefinition", - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "internal", - "description": "", - "label": "", - "type": "DataSourceDefinitionInternal", - "longType": "DataSourceDefinitionInternal", - "fullType": "vega.DataSourceDefinitionInternal", - "ismap": false, - "isoneof": true, - "oneofdecl": "source_type", - "defaultValue": "" - }, - { - "name": "external", - "description": "", - "label": "", - "type": "DataSourceDefinitionExternal", - "longType": "DataSourceDefinitionExternal", - "fullType": "vega.DataSourceDefinitionExternal", - "ismap": false, - "isoneof": true, - "oneofdecl": "source_type", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceDefinitionExternal", - "longName": "DataSourceDefinitionExternal", - "fullName": "vega.DataSourceDefinitionExternal", - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "oracle", - "description": "", - "label": "", - "type": "DataSourceSpecConfiguration", - "longType": "DataSourceSpecConfiguration", - "fullType": "vega.DataSourceSpecConfiguration", - "ismap": false, - "isoneof": true, - "oneofdecl": "source_type", - "defaultValue": "" - }, - { - "name": "eth_oracle", - "description": "Contains the data specification that is received from Ethereum sources.", - "label": "", - "type": "EthCallSpec", - "longType": "EthCallSpec", - "fullType": "vega.EthCallSpec", - "ismap": false, - "isoneof": true, - "oneofdecl": "source_type", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceDefinitionInternal", - "longName": "DataSourceDefinitionInternal", - "fullName": "vega.DataSourceDefinitionInternal", - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "time", - "description": "", - "label": "", - "type": "DataSourceSpecConfigurationTime", - "longType": "DataSourceSpecConfigurationTime", - "fullType": "vega.DataSourceSpecConfigurationTime", - "ismap": false, - "isoneof": true, - "oneofdecl": "source_type", - "defaultValue": "" - }, - { - "name": "time_trigger", - "description": "", - "label": "", - "type": "DataSourceSpecConfigurationTimeTrigger", - "longType": "DataSourceSpecConfigurationTimeTrigger", - "fullType": "vega.DataSourceSpecConfigurationTimeTrigger", - "ismap": false, - "isoneof": true, - "oneofdecl": "source_type", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceSpec", - "longName": "DataSourceSpec", - "fullName": "vega.DataSourceSpec", - "description": "Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Hash generated from the DataSpec data.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Creation date and time", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Last Updated timestamp", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data", - "description": "", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status describes the status of the data source spec", - "label": "", - "type": "Status", - "longType": "DataSourceSpec.Status", - "fullType": "vega.DataSourceSpec.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceSpecConfiguration", - "longName": "DataSourceSpecConfiguration", - "fullName": "vega.DataSourceSpecConfiguration", - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signers", - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.", - "label": "repeated", - "type": "Signer", - "longType": "data.v1.Signer", - "fullType": "vega.data.v1.Signer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "filters", - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model).", - "label": "repeated", - "type": "Filter", - "longType": "data.v1.Filter", - "fullType": "vega.data.v1.Filter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceSpecConfigurationTime", - "longName": "DataSourceSpecConfigurationTime", - "fullName": "vega.DataSourceSpecConfigurationTime", - "description": "Internal data source used for emitting timestamps.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "conditions", - "description": "Conditions that the timestamps should meet in order to be considered.", - "label": "repeated", - "type": "Condition", - "longType": "data.v1.Condition", - "fullType": "vega.data.v1.Condition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceSpecConfigurationTimeTrigger", - "longName": "DataSourceSpecConfigurationTimeTrigger", - "fullName": "vega.DataSourceSpecConfigurationTimeTrigger", - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "conditions", - "description": "Conditions that the timestamps need to meet in order to be considered.", - "label": "repeated", - "type": "Condition", - "longType": "data.v1.Condition", - "fullType": "vega.data.v1.Condition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "triggers", - "description": "An internal time trigger", - "label": "repeated", - "type": "InternalTimeTrigger", - "longType": "data.v1.InternalTimeTrigger", - "fullType": "vega.data.v1.InternalTimeTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthCallSpec", - "longName": "EthCallSpec", - "fullName": "vega.EthCallSpec", - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "address", - "description": "Ethereum address of the contract to call.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "abi", - "description": "The ABI of that contract.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "method", - "description": "Name of the method on the contract to call.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "args", - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.", - "label": "repeated", - "type": "Value", - "longType": "google.protobuf.Value", - "fullType": "google.protobuf.Value", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trigger", - "description": "Conditions for determining when to call the contract method.", - "label": "", - "type": "EthCallTrigger", - "longType": "EthCallTrigger", - "fullType": "vega.EthCallTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_confirmations", - "description": "Number of confirmations required before the query is considered verified", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "filters", - "description": "Filters the data returned from the contract method", - "label": "repeated", - "type": "Filter", - "longType": "data.v1.Filter", - "fullType": "vega.data.v1.Filter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "normalisers", - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.", - "label": "repeated", - "type": "Normaliser", - "longType": "Normaliser", - "fullType": "vega.Normaliser", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "source_chain_id", - "description": "The ID of the EVM based chain which is to be used to source the oracle data.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthCallTrigger", - "longName": "EthCallTrigger", - "fullName": "vega.EthCallTrigger", - "description": "Determines when the contract method should be called.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "time_trigger", - "description": "", - "label": "", - "type": "EthTimeTrigger", - "longType": "EthTimeTrigger", - "fullType": "vega.EthTimeTrigger", - "ismap": false, - "isoneof": true, - "oneofdecl": "trigger", - "defaultValue": "" - } - ] - }, - { - "name": "EthTimeTrigger", - "longName": "EthTimeTrigger", - "fullName": "vega.EthTimeTrigger", - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "initial", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_initial", - "defaultValue": "" - }, - { - "name": "every", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_every", - "defaultValue": "" - }, - { - "name": "until", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_until", - "defaultValue": "" - } - ] - }, - { - "name": "ExternalDataSourceSpec", - "longName": "ExternalDataSourceSpec", - "fullName": "vega.ExternalDataSourceSpec", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "spec", - "description": "", - "label": "", - "type": "DataSourceSpec", - "longType": "DataSourceSpec", - "fullType": "vega.DataSourceSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Normaliser", - "longName": "Normaliser", - "fullName": "vega.Normaliser", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "name", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expression", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SpecBindingForCompositePrice", - "longName": "SpecBindingForCompositePrice", - "fullName": "vega.SpecBindingForCompositePrice", - "description": "Describes which property of the data source data is to be\nused for price source.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price_source_property", - "description": "The property name of price.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/markets.proto", - "description": "", - "package": "vega", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "CompositePriceType", - "longName": "CompositePriceType", - "fullName": "vega.CompositePriceType", - "description": "", - "values": [ - { - "name": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "COMPOSITE_PRICE_TYPE_WEIGHTED", - "number": "1", - "description": "Composite price is calculated as a weighted average of the underlying mark prices." - }, - { - "name": "COMPOSITE_PRICE_TYPE_MEDIAN", - "number": "2", - "description": "Composite price is calculated as a median of the underlying mark prices." - }, - { - "name": "COMPOSITE_PRICE_TYPE_LAST_TRADE", - "number": "3", - "description": "Composite price is calculated as the last trade price." - } - ] - }, - { - "name": "Method", - "longName": "LiquidityFeeSettings.Method", - "fullName": "vega.LiquidityFeeSettings.Method", - "description": "", - "values": [ - { - "name": "METHOD_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "METHOD_MARGINAL_COST", - "number": "1", - "description": "Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake." - }, - { - "name": "METHOD_WEIGHTED_AVERAGE", - "number": "2", - "description": "Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment." - }, - { - "name": "METHOD_CONSTANT", - "number": "3", - "description": "Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - } - ] - }, - { - "name": "State", - "longName": "Market.State", - "fullName": "vega.Market.State", - "description": "Current state of the market", - "values": [ - { - "name": "STATE_UNSPECIFIED", - "number": "0", - "description": "Default value, invalid" - }, - { - "name": "STATE_PROPOSED", - "number": "1", - "description": "Governance proposal valid and accepted" - }, - { - "name": "STATE_REJECTED", - "number": "2", - "description": "Outcome of governance votes is to reject the market" - }, - { - "name": "STATE_PENDING", - "number": "3", - "description": "Governance vote passes/wins" - }, - { - "name": "STATE_CANCELLED", - "number": "4", - "description": "Market triggers cancellation condition or governance\nvotes to close before market becomes Active" - }, - { - "name": "STATE_ACTIVE", - "number": "5", - "description": "Enactment date reached and usual auction exit checks pass" - }, - { - "name": "STATE_SUSPENDED", - "number": "6", - "description": "Price monitoring or liquidity monitoring trigger" - }, - { - "name": "STATE_CLOSED", - "number": "7", - "description": "Governance vote to close (Not currently implemented)" - }, - { - "name": "STATE_TRADING_TERMINATED", - "number": "8", - "description": "Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)" - }, - { - "name": "STATE_SETTLED", - "number": "9", - "description": "Settlement triggered and completed as defined by product" - }, - { - "name": "STATE_SUSPENDED_VIA_GOVERNANCE", - "number": "10", - "description": "Market has been suspended via governance" - } - ] - }, - { - "name": "TradingMode", - "longName": "Market.TradingMode", - "fullName": "vega.Market.TradingMode", - "description": "Trading mode the market is currently running, also referred to as 'market state'", - "values": [ - { - "name": "TRADING_MODE_UNSPECIFIED", - "number": "0", - "description": "Default value, this is invalid" - }, - { - "name": "TRADING_MODE_CONTINUOUS", - "number": "1", - "description": "Normal trading" - }, - { - "name": "TRADING_MODE_BATCH_AUCTION", - "number": "2", - "description": "Auction trading (FBA)" - }, - { - "name": "TRADING_MODE_OPENING_AUCTION", - "number": "3", - "description": "Opening auction" - }, - { - "name": "TRADING_MODE_MONITORING_AUCTION", - "number": "4", - "description": "Auction triggered by monitoring" - }, - { - "name": "TRADING_MODE_NO_TRADING", - "number": "5", - "description": "No trading is allowed" - }, - { - "name": "TRADING_MODE_SUSPENDED_VIA_GOVERNANCE", - "number": "6", - "description": "Special auction mode triggered via governance" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "AuctionDuration", - "longName": "AuctionDuration", - "fullName": "vega.AuctionDuration", - "description": "Auction duration is used to configure 3 auction periods:\n1. `duration \u003e 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume \u003e 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration \u003e 0`, `volume \u003e 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "duration", - "description": "Duration of the auction in seconds.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "Target uncrossing trading volume.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CompositePriceConfiguration", - "longName": "CompositePriceConfiguration", - "fullName": "vega.CompositePriceConfiguration", - "description": "Mark price configuration parameters.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "decay_weight", - "description": "Decay weight used for calculation of mark price.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "decay_power", - "description": "Decay power used for the calculation of mark price.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cash_amount", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "source_weights", - "description": "Weights for each composite price data source.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "source_staleness_tolerance", - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "composite_price_type", - "description": "Which method is used for the calculation of the composite price for the market.", - "label": "", - "type": "CompositePriceType", - "longType": "CompositePriceType", - "fullType": "vega.CompositePriceType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_sources_spec", - "description": "Additional price sources to be used for index price calculation.", - "label": "repeated", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_sources_spec_binding", - "description": "List of each price source and its corresponding binding", - "label": "repeated", - "type": "SpecBindingForCompositePrice", - "longType": "SpecBindingForCompositePrice", - "fullType": "vega.SpecBindingForCompositePrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceSpecToFutureBinding", - "longName": "DataSourceSpecToFutureBinding", - "fullName": "vega.DataSourceSpecToFutureBinding", - "description": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "settlement_data_property", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trading_termination_property", - "description": "Name of the property in the data source data that signals termination of trading.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DataSourceSpecToPerpetualBinding", - "longName": "DataSourceSpecToPerpetualBinding", - "fullName": "vega.DataSourceSpecToPerpetualBinding", - "description": "Describes which properties of the data source data is to be\nused for settlement.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "settlement_data_property", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "settlement_schedule_property", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FeeFactors", - "longName": "FeeFactors", - "fullName": "vega.FeeFactors", - "description": "Fee factors definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "maker_fee", - "description": "Market maker fee charged network wide.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "infrastructure_fee", - "description": "Infrastructure fee charged network wide for staking and governance.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee", - "description": "Liquidity fee applied per market for market making.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Fees", - "longName": "Fees", - "fullName": "vega.Fees", - "description": "Fees definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "factors", - "description": "Fee factors.", - "label": "", - "type": "FeeFactors", - "longType": "FeeFactors", - "fullType": "vega.FeeFactors", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee_settings", - "description": "Liquidity fee settings for the market describing how the fee was calculated.", - "label": "", - "type": "LiquidityFeeSettings", - "longType": "LiquidityFeeSettings", - "fullType": "vega.LiquidityFeeSettings", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Future", - "longName": "Future", - "fullName": "vega.Future", - "description": "Future product definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "settlement_asset", - "description": "Underlying asset for the future.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quote_name", - "description": "Quote name of the instrument.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_data", - "description": "Data source specification that describes the settlement data source filter.", - "label": "", - "type": "DataSourceSpec", - "longType": "DataSourceSpec", - "fullType": "vega.DataSourceSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_trading_termination", - "description": "Data source specification that describes the trading termination data source filter.", - "label": "", - "type": "DataSourceSpec", - "longType": "DataSourceSpec", - "fullType": "vega.DataSourceSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_binding", - "description": "Binding between the data spec and the data source.", - "label": "", - "type": "DataSourceSpecToFutureBinding", - "longType": "DataSourceSpecToFutureBinding", - "fullType": "vega.DataSourceSpecToFutureBinding", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Instrument", - "longName": "Instrument", - "fullName": "vega.Instrument", - "description": "Instrument definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique instrument ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "code", - "description": "Code for the instrument.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Name of the instrument.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "Collection of instrument meta-data.", - "label": "", - "type": "InstrumentMetadata", - "longType": "InstrumentMetadata", - "fullType": "vega.InstrumentMetadata", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "future", - "description": "Future.", - "label": "", - "type": "Future", - "longType": "Future", - "fullType": "vega.Future", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - }, - { - "name": "spot", - "description": "Spot.", - "label": "", - "type": "Spot", - "longType": "Spot", - "fullType": "vega.Spot", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - }, - { - "name": "perpetual", - "description": "Perpetual.", - "label": "", - "type": "Perpetual", - "longType": "Perpetual", - "fullType": "vega.Perpetual", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - } - ] - }, - { - "name": "InstrumentMetadata", - "longName": "InstrumentMetadata", - "fullName": "vega.InstrumentMetadata", - "description": "Instrument metadata definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tags", - "description": "List of 0 or more tags.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidationStrategy", - "longName": "LiquidationStrategy", - "fullName": "vega.LiquidationStrategy", - "description": "Liquidation strategy used when the network holds a position resulting from position resolution.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "disposal_time_step", - "description": "Interval, in seconds, at which the network will attempt to close its position.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "disposal_fraction", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "full_disposal_size", - "description": "Size of the position that the network will try to close in a single attempt.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_fraction_consumed", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityFeeSettings", - "longName": "LiquidityFeeSettings", - "fullName": "vega.LiquidityFeeSettings", - "description": "Market settings that describe how the liquidity fee is calculated.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "method", - "description": "Method used to calculate the market's liquidity fee.", - "label": "", - "type": "Method", - "longType": "LiquidityFeeSettings.Method", - "fullType": "vega.LiquidityFeeSettings.Method", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee_constant", - "description": "Constant liquidity fee used when using the constant fee method.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_fee_constant", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityMonitoringParameters", - "longName": "LiquidityMonitoringParameters", - "fullName": "vega.LiquidityMonitoringParameters", - "description": "LiquidityMonitoringParameters contains settings used for liquidity monitoring", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "target_stake_parameters", - "description": "Specifies parameters related to target stake calculation.", - "label": "", - "type": "TargetStakeParameters", - "longType": "TargetStakeParameters", - "fullType": "vega.TargetStakeParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "triggering_ratio", - "description": "Specifies the triggering ratio for entering liquidity auction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_extension", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquiditySLAParameters", - "longName": "LiquiditySLAParameters", - "fullName": "vega.LiquiditySLAParameters", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price_range", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "commitment_min_time_fraction", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "performance_hysteresis_epochs", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sla_competition_factor", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LogNormalModelParams", - "longName": "LogNormalModelParams", - "fullName": "vega.LogNormalModelParams", - "description": "Risk model parameters for log normal", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "mu", - "description": "Mu parameter, annualised growth rate of the underlying asset.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "r", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sigma", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LogNormalRiskModel", - "longName": "LogNormalRiskModel", - "fullName": "vega.LogNormalRiskModel", - "description": "Risk model for log normal", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "risk_aversion_parameter", - "description": "Risk Aversion Parameter.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tau", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "params", - "description": "Risk model parameters for log normal.", - "label": "", - "type": "LogNormalModelParams", - "longType": "LogNormalModelParams", - "fullType": "vega.LogNormalModelParams", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarginCalculator", - "longName": "MarginCalculator", - "fullName": "vega.MarginCalculator", - "description": "Margin Calculator definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "scaling_factors", - "description": "Scaling factors for margin calculation.", - "label": "", - "type": "ScalingFactors", - "longType": "ScalingFactors", - "fullType": "vega.ScalingFactors", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Market", - "longName": "Market", - "fullName": "vega.Market", - "description": "Market definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID for the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tradable_instrument", - "description": "Tradable instrument configuration.", - "label": "", - "type": "TradableInstrument", - "longType": "TradableInstrument", - "fullType": "vega.TradableInstrument", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "decimal_places", - "description": "Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fees", - "description": "Fees configuration that apply to the market.", - "label": "", - "type": "Fees", - "longType": "Fees", - "fullType": "vega.Fees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "opening_auction", - "description": "Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).", - "label": "", - "type": "AuctionDuration", - "longType": "AuctionDuration", - "fullType": "vega.AuctionDuration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitoring_settings", - "description": "PriceMonitoringSettings for the market.", - "label": "", - "type": "PriceMonitoringSettings", - "longType": "PriceMonitoringSettings", - "fullType": "vega.PriceMonitoringSettings", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_monitoring_parameters", - "description": "LiquidityMonitoringParameters for the market.", - "label": "", - "type": "LiquidityMonitoringParameters", - "longType": "LiquidityMonitoringParameters", - "fullType": "vega.LiquidityMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trading_mode", - "description": "Current mode of execution of the market.", - "label": "", - "type": "TradingMode", - "longType": "Market.TradingMode", - "fullType": "vega.Market.TradingMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state", - "description": "Current state of the market.", - "label": "", - "type": "State", - "longType": "Market.State", - "fullType": "vega.Market.State", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_timestamps", - "description": "Timestamps for when the market state changes.", - "label": "", - "type": "MarketTimestamps", - "longType": "MarketTimestamps", - "fullType": "vega.MarketTimestamps", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "position_decimal_places", - "description": "The number of decimal places for a position.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lp_price_range", - "description": "Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "linear_slippage_factor", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quadratic_slippage_factor", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parent_market_id", - "description": "ID of the market this market succeeds", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_parent_market_id", - "defaultValue": "" - }, - { - "name": "insurance_pool_fraction", - "description": "The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_insurance_pool_fraction", - "defaultValue": "" - }, - { - "name": "successor_market_id", - "description": "ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_successor_market_id", - "defaultValue": "" - }, - { - "name": "liquidity_sla_params", - "description": "Liquidity SLA parameters for the market.", - "label": "optional", - "type": "LiquiditySLAParameters", - "longType": "LiquiditySLAParameters", - "fullType": "vega.LiquiditySLAParameters", - "ismap": false, - "isoneof": true, - "oneofdecl": "_liquidity_sla_params", - "defaultValue": "" - }, - { - "name": "liquidation_strategy", - "description": "Liquidation strategy used by this market.", - "label": "", - "type": "LiquidationStrategy", - "longType": "LiquidationStrategy", - "fullType": "vega.LiquidationStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mark_price_configuration", - "description": "Mark price calculation configuration.", - "label": "", - "type": "CompositePriceConfiguration", - "longType": "CompositePriceConfiguration", - "fullType": "vega.CompositePriceConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketTimestamps", - "longName": "MarketTimestamps", - "fullName": "vega.MarketTimestamps", - "description": "Time stamps for important times about creating, enacting etc the market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposed", - "description": "Time when the market is first proposed.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending", - "description": "Time when the market has been voted in and began its opening auction.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "open", - "description": "Time when the market has left the opening auction and is ready to accept trades.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "close", - "description": "Time when the market closed.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Perpetual", - "longName": "Perpetual", - "fullName": "vega.Perpetual", - "description": "Perpetual product definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "settlement_asset", - "description": "Underlying asset for the perpetual.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quote_name", - "description": "Quote name of the instrument.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_funding_factor", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "interest_rate", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "clamp_lower_bound", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "clamp_upper_bound", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_schedule", - "description": "Data source spec describing the data source for settlement schedule.", - "label": "", - "type": "DataSourceSpec", - "longType": "DataSourceSpec", - "fullType": "vega.DataSourceSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_data", - "description": "Data source spec describing the data source for settlement.", - "label": "", - "type": "DataSourceSpec", - "longType": "DataSourceSpec", - "fullType": "vega.DataSourceSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_binding", - "description": "Binding between the data source spec and the settlement data.", - "label": "", - "type": "DataSourceSpecToPerpetualBinding", - "longType": "DataSourceSpecToPerpetualBinding", - "fullType": "vega.DataSourceSpecToPerpetualBinding", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "funding_rate_scaling_factor", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_scaling_factor", - "defaultValue": "" - }, - { - "name": "funding_rate_lower_bound", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_lower_bound", - "defaultValue": "" - }, - { - "name": "funding_rate_upper_bound", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_upper_bound", - "defaultValue": "" - }, - { - "name": "index_price_config", - "description": "Optional configuration for the index price used in funding payment calculation.", - "label": "optional", - "type": "CompositePriceConfiguration", - "longType": "CompositePriceConfiguration", - "fullType": "vega.CompositePriceConfiguration", - "ismap": false, - "isoneof": true, - "oneofdecl": "_index_price_config", - "defaultValue": "" - } - ] - }, - { - "name": "PriceMonitoringParameters", - "longName": "PriceMonitoringParameters", - "fullName": "vega.PriceMonitoringParameters", - "description": "PriceMonitoringParameters contains a collection of triggers to be used for a given market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "triggers", - "description": "", - "label": "repeated", - "type": "PriceMonitoringTrigger", - "longType": "PriceMonitoringTrigger", - "fullType": "vega.PriceMonitoringTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceMonitoringSettings", - "longName": "PriceMonitoringSettings", - "fullName": "vega.PriceMonitoringSettings", - "description": "PriceMonitoringSettings contains the settings for price monitoring", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parameters", - "description": "Specifies price monitoring parameters to be used for price monitoring purposes.", - "label": "", - "type": "PriceMonitoringParameters", - "longType": "PriceMonitoringParameters", - "fullType": "vega.PriceMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceMonitoringTrigger", - "longName": "PriceMonitoringTrigger", - "fullName": "vega.PriceMonitoringTrigger", - "description": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "horizon", - "description": "Price monitoring projection horizon τ in seconds.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "probability", - "description": "Price monitoring probability level p.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_extension", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ScalingFactors", - "longName": "ScalingFactors", - "fullName": "vega.ScalingFactors", - "description": "Scaling Factors (for use in margin calculation)", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "search_level", - "description": "Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "initial_margin", - "description": "Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "collateral_release", - "description": "Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SimpleModelParams", - "longName": "SimpleModelParams", - "fullName": "vega.SimpleModelParams", - "description": "Risk model parameters for simple modelling", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "factor_long", - "description": "Pre-defined risk factor value for long.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "factor_short", - "description": "Pre-defined risk factor value for short.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_move_up", - "description": "Pre-defined maximum price move up that the model considers as valid.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_move_down", - "description": "Pre-defined minimum price move down that the model considers as valid.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "probability_of_trading", - "description": "Pre-defined constant probability of trading.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SimpleRiskModel", - "longName": "SimpleRiskModel", - "fullName": "vega.SimpleRiskModel", - "description": "Risk model for simple modelling", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "params", - "description": "Risk model params for simple modelling.", - "label": "", - "type": "SimpleModelParams", - "longType": "SimpleModelParams", - "fullType": "vega.SimpleModelParams", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Spot", - "longName": "Spot", - "fullName": "vega.Spot", - "description": "Spot product definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "base_asset", - "description": "Asset ID of the underlying base asset for the spot product.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quote_asset", - "description": "Asset ID of the underlying quote asset for the spot product.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Name of the instrument.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TargetStakeParameters", - "longName": "TargetStakeParameters", - "fullName": "vega.TargetStakeParameters", - "description": "TargetStakeParameters contains parameters used in target stake calculation", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "time_window", - "description": "Specifies length of time window expressed in seconds for target stake calculation.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "scaling_factor", - "description": "Specifies scaling factors used in target stake calculation.", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TradableInstrument", - "longName": "TradableInstrument", - "fullName": "vega.TradableInstrument", - "description": "Tradable Instrument definition", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "instrument", - "description": "Details for the underlying instrument.", - "label": "", - "type": "Instrument", - "longType": "Instrument", - "fullType": "vega.Instrument", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_calculator", - "description": "Margin calculator for the instrument.", - "label": "", - "type": "MarginCalculator", - "longType": "MarginCalculator", - "fullType": "vega.MarginCalculator", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log_normal_risk_model", - "description": "Log normal.", - "label": "", - "type": "LogNormalRiskModel", - "longType": "LogNormalRiskModel", - "fullType": "vega.LogNormalRiskModel", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_model", - "defaultValue": "" - }, - { - "name": "simple_risk_model", - "description": "Simple.", - "label": "", - "type": "SimpleRiskModel", - "longType": "SimpleRiskModel", - "fullType": "vega.SimpleRiskModel", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_model", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/vega.proto", - "description": "", - "package": "vega", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "AccountType", - "longName": "AccountType", - "fullName": "vega.AccountType", - "description": "Various collateral/account types as used by Vega", - "values": [ - { - "name": "ACCOUNT_TYPE_UNSPECIFIED", - "number": "0", - "description": "Default value" - }, - { - "name": "ACCOUNT_TYPE_INSURANCE", - "number": "1", - "description": "Insurance pool accounts contain insurance pool funds for a market" - }, - { - "name": "ACCOUNT_TYPE_SETTLEMENT", - "number": "2", - "description": "Settlement accounts exist only during settlement or mark-to-market" - }, - { - "name": "ACCOUNT_TYPE_MARGIN", - "number": "3", - "description": "Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change" - }, - { - "name": "ACCOUNT_TYPE_GENERAL", - "number": "4", - "description": "General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements" - }, - { - "name": "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "number": "5", - "description": "Infrastructure accounts contain fees earned by providing infrastructure on Vega" - }, - { - "name": "ACCOUNT_TYPE_FEES_LIQUIDITY", - "number": "6", - "description": "Liquidity accounts contain fees earned by providing liquidity on Vega markets" - }, - { - "name": "ACCOUNT_TYPE_FEES_MAKER", - "number": "7", - "description": "This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place" - }, - { - "name": "ACCOUNT_TYPE_BOND", - "number": "9", - "description": "This account is created to maintain liquidity providers funds commitments" - }, - { - "name": "ACCOUNT_TYPE_EXTERNAL", - "number": "10", - "description": "External account represents an external source (deposit/withdrawal)" - }, - { - "name": "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "number": "11", - "description": "Global insurance account for the asset" - }, - { - "name": "ACCOUNT_TYPE_GLOBAL_REWARD", - "number": "12", - "description": "Global reward account for the asset" - }, - { - "name": "ACCOUNT_TYPE_PENDING_TRANSFERS", - "number": "13", - "description": "Per asset account used to store pending transfers (if any)" - }, - { - "name": "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "number": "14", - "description": "Per asset reward account for fees paid to makers" - }, - { - "name": "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "number": "15", - "description": "Per asset reward account for fees received by makers" - }, - { - "name": "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "number": "16", - "description": "Per asset reward account for fees received by liquidity providers" - }, - { - "name": "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "number": "17", - "description": "Per asset reward account for market proposers when the market goes above some trading threshold" - }, - { - "name": "ACCOUNT_TYPE_HOLDING", - "number": "18", - "description": "Per asset account for holding in-flight unfilled orders' funds" - }, - { - "name": "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "number": "19", - "description": "Network controlled liquidity provider's account, per market, to hold accrued liquidity fees." - }, - { - "name": "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "number": "20", - "description": "Network controlled liquidity fees bonus distribution account, per market." - }, - { - "name": "ACCOUNT_TYPE_NETWORK_TREASURY", - "number": "21", - "description": "Network controlled treasury" - }, - { - "name": "ACCOUNT_TYPE_VESTING_REWARDS", - "number": "22", - "description": "Account holding user's rewards for the vesting period" - }, - { - "name": "ACCOUNT_TYPE_VESTED_REWARDS", - "number": "23", - "description": "Account holding user's rewards after the vesting period" - }, - { - "name": "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "number": "24", - "description": "Per asset market reward account given for average position" - }, - { - "name": "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "number": "25", - "description": "Per asset market reward account given for relative return" - }, - { - "name": "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "number": "26", - "description": "Per asset market reward account given for return volatility" - }, - { - "name": "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "number": "27", - "description": "Per asset market reward account given to validators by their ranking" - }, - { - "name": "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "number": "28", - "description": "Per asset account for pending fee referral reward payouts" - }, - { - "name": "ACCOUNT_TYPE_ORDER_MARGIN", - "number": "29", - "description": "Per asset market account for party in isolated margin mode" - } - ] - }, - { - "name": "AuctionTrigger", - "longName": "AuctionTrigger", - "fullName": "vega.AuctionTrigger", - "description": "Auction triggers indicate what condition triggered an auction (if market is in auction mode)", - "values": [ - { - "name": "AUCTION_TRIGGER_UNSPECIFIED", - "number": "0", - "description": "Default value for AuctionTrigger, no auction triggered" - }, - { - "name": "AUCTION_TRIGGER_BATCH", - "number": "1", - "description": "Batch auction" - }, - { - "name": "AUCTION_TRIGGER_OPENING", - "number": "2", - "description": "Opening auction" - }, - { - "name": "AUCTION_TRIGGER_PRICE", - "number": "3", - "description": "Price monitoring trigger" - }, - { - "name": "AUCTION_TRIGGER_LIQUIDITY", - "number": "4", - "description": "Deprecated" - }, - { - "name": "AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET", - "number": "5", - "description": "Liquidity auction due to not enough committed liquidity" - }, - { - "name": "AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS", - "number": "6", - "description": "Deprecated", - "options": { - "deprecated": true - } - }, - { - "name": "AUCTION_TRIGGER_GOVERNANCE_SUSPENSION", - "number": "7", - "description": "Market is suspended and put into auction via governance" - } - ] - }, - { - "name": "ChainStatus", - "longName": "ChainStatus", - "fullName": "vega.ChainStatus", - "description": "Vega blockchain status as reported by the node the caller is connected to", - "values": [ - { - "name": "CHAIN_STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "CHAIN_STATUS_DISCONNECTED", - "number": "1", - "description": "Blockchain is disconnected" - }, - { - "name": "CHAIN_STATUS_REPLAYING", - "number": "2", - "description": "Blockchain is replaying historic transactions" - }, - { - "name": "CHAIN_STATUS_CONNECTED", - "number": "3", - "description": "Blockchain is connected and receiving transactions" - } - ] - }, - { - "name": "Status", - "longName": "Deposit.Status", - "fullName": "vega.Deposit.Status", - "description": "Status of the deposit", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "STATUS_OPEN", - "number": "1", - "description": "Deposit is being processed by the network" - }, - { - "name": "STATUS_CANCELLED", - "number": "2", - "description": "Deposit has been cancelled by the network" - }, - { - "name": "STATUS_FINALIZED", - "number": "3", - "description": "Deposit has been finalised and accounts have been updated" - } - ] - }, - { - "name": "DispatchMetric", - "longName": "DispatchMetric", - "fullName": "vega.DispatchMetric", - "description": "", - "values": [ - { - "name": "DISPATCH_METRIC_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "DISPATCH_METRIC_MAKER_FEES_PAID", - "number": "1", - "description": "Dispatch metric that uses the total maker fees paid in the market" - }, - { - "name": "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "number": "2", - "description": "Dispatch metric that uses the total maker fees received in the market" - }, - { - "name": "DISPATCH_METRIC_LP_FEES_RECEIVED", - "number": "3", - "description": "Dispatch metric that uses the total LP fees received in the market" - }, - { - "name": "DISPATCH_METRIC_MARKET_VALUE", - "number": "4", - "description": "Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet" - }, - { - "name": "DISPATCH_METRIC_AVERAGE_POSITION", - "number": "5", - "description": "Dispatch metric that uses the time weighted average position" - }, - { - "name": "DISPATCH_METRIC_RELATIVE_RETURN", - "number": "6", - "description": "Dispatch metric that uses the relative PNL of the party in the market" - }, - { - "name": "DISPATCH_METRIC_RETURN_VOLATILITY", - "number": "7", - "description": "Dispatch metric that uses return volatility of the party in the market" - }, - { - "name": "DISPATCH_METRIC_VALIDATOR_RANKING", - "number": "8", - "description": "Dispatch metric that uses the validator ranking of the validator as metric" - } - ] - }, - { - "name": "DistributionStrategy", - "longName": "DistributionStrategy", - "fullName": "vega.DistributionStrategy", - "description": "", - "values": [ - { - "name": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "DISTRIBUTION_STRATEGY_PRO_RATA", - "number": "1", - "description": "Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has." - }, - { - "name": "DISTRIBUTION_STRATEGY_RANK", - "number": "2", - "description": "Rewards funded using the party rank." - } - ] - }, - { - "name": "EntityScope", - "longName": "EntityScope", - "fullName": "vega.EntityScope", - "description": "", - "values": [ - { - "name": "ENTITY_SCOPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "ENTITY_SCOPE_INDIVIDUALS", - "number": "1", - "description": "Rewards must be distributed directly to eligible parties." - }, - { - "name": "ENTITY_SCOPE_TEAMS", - "number": "2", - "description": "Rewards must be distributed to directly eligible teams, and then amongst team members" - } - ] - }, - { - "name": "EpochAction", - "longName": "EpochAction", - "fullName": "vega.EpochAction", - "description": "What epoch action has occurred", - "values": [ - { - "name": "EPOCH_ACTION_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "EPOCH_ACTION_START", - "number": "1", - "description": "Epoch update is for a new epoch." - }, - { - "name": "EPOCH_ACTION_END", - "number": "2", - "description": "Epoch update is for the end of an epoch." - } - ] - }, - { - "name": "IndividualScope", - "longName": "IndividualScope", - "fullName": "vega.IndividualScope", - "description": "", - "values": [ - { - "name": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "INDIVIDUAL_SCOPE_ALL", - "number": "1", - "description": "All parties on the network are within the scope of this reward." - }, - { - "name": "INDIVIDUAL_SCOPE_IN_TEAM", - "number": "2", - "description": "All parties that are part of a team are within the scope of this reward." - }, - { - "name": "INDIVIDUAL_SCOPE_NOT_IN_TEAM", - "number": "3", - "description": "All parties that are not part of a team are within the scope of this reward." - } - ] - }, - { - "name": "Interval", - "longName": "Interval", - "fullName": "vega.Interval", - "description": "Represents a set of time intervals that are used when querying for candle-stick data", - "values": [ - { - "name": "INTERVAL_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "INTERVAL_BLOCK", - "number": "-1", - "description": "Block interval is not a fixed amount of time, rather it is used to indicate grouping of events that occur in a single block. It is usually about a second." - }, - { - "name": "INTERVAL_I1M", - "number": "60", - "description": "1 minute." - }, - { - "name": "INTERVAL_I5M", - "number": "300", - "description": "5 minutes." - }, - { - "name": "INTERVAL_I15M", - "number": "900", - "description": "15 minutes." - }, - { - "name": "INTERVAL_I30M", - "number": "1800", - "description": "30 minutes." - }, - { - "name": "INTERVAL_I1H", - "number": "3600", - "description": "1 hour." - }, - { - "name": "INTERVAL_I4H", - "number": "14400", - "description": "4 hours." - }, - { - "name": "INTERVAL_I6H", - "number": "21600", - "description": "6 hours." - }, - { - "name": "INTERVAL_I8H", - "number": "28800", - "description": "8 hours." - }, - { - "name": "INTERVAL_I12H", - "number": "43200", - "description": "12 hours." - }, - { - "name": "INTERVAL_I1D", - "number": "86400", - "description": "1 day." - }, - { - "name": "INTERVAL_I7D", - "number": "604800", - "description": "7 days." - } - ] - }, - { - "name": "Status", - "longName": "LiquidityProvision.Status", - "fullName": "vega.LiquidityProvision.Status", - "description": "Status of a liquidity provision.", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Always invalid" - }, - { - "name": "STATUS_ACTIVE", - "number": "1", - "description": "Liquidity provision is active" - }, - { - "name": "STATUS_STOPPED", - "number": "2", - "description": "Liquidity provision was stopped by the network" - }, - { - "name": "STATUS_CANCELLED", - "number": "3", - "description": "Liquidity provision was cancelled by the liquidity provider" - }, - { - "name": "STATUS_REJECTED", - "number": "4", - "description": "Liquidity provision was invalid and got rejected" - }, - { - "name": "STATUS_UNDEPLOYED", - "number": "5", - "description": "Liquidity provision is valid and accepted by network, but orders aren't deployed" - }, - { - "name": "STATUS_PENDING", - "number": "6", - "description": "Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties." - } - ] - }, - { - "name": "MarginMode", - "longName": "MarginMode", - "fullName": "vega.MarginMode", - "description": "", - "values": [ - { - "name": "MARGIN_MODE_UNSPECIFIED", - "number": "0", - "description": "Never valid." - }, - { - "name": "MARGIN_MODE_CROSS_MARGIN", - "number": "1", - "description": "Cross margin mode - margin is dynamically acquired and released as a position is marked to market" - }, - { - "name": "MARGIN_MODE_ISOLATED_MARGIN", - "number": "2", - "description": "Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - } - ] - }, - { - "name": "NodeStatus", - "longName": "NodeStatus", - "fullName": "vega.NodeStatus", - "description": "Node status type", - "values": [ - { - "name": "NODE_STATUS_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "NODE_STATUS_VALIDATOR", - "number": "1", - "description": "Node is a validating node" - }, - { - "name": "NODE_STATUS_NON_VALIDATOR", - "number": "2", - "description": "Node is a non-validating node" - } - ] - }, - { - "name": "Status", - "longName": "Order.Status", - "fullName": "vega.Order.Status", - "description": "Status values for an order", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "STATUS_ACTIVE", - "number": "1", - "description": "Used for active unfilled or partially filled orders" - }, - { - "name": "STATUS_EXPIRED", - "number": "2", - "description": "Used for expired GTT orders" - }, - { - "name": "STATUS_CANCELLED", - "number": "3", - "description": "Used for orders cancelled by the party that created the order" - }, - { - "name": "STATUS_STOPPED", - "number": "4", - "description": "Used for unfilled FOK or IOC orders, and for orders that were stopped by the network" - }, - { - "name": "STATUS_FILLED", - "number": "5", - "description": "Used for closed fully filled orders" - }, - { - "name": "STATUS_REJECTED", - "number": "6", - "description": "Used for orders when not enough collateral was available to fill the margin requirements" - }, - { - "name": "STATUS_PARTIALLY_FILLED", - "number": "7", - "description": "Used for closed partially filled IOC orders" - }, - { - "name": "STATUS_PARKED", - "number": "8", - "description": "Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)" - } - ] - }, - { - "name": "TimeInForce", - "longName": "Order.TimeInForce", - "fullName": "vega.Order.TimeInForce", - "description": "Time In Force for an order", - "values": [ - { - "name": "TIME_IN_FORCE_UNSPECIFIED", - "number": "0", - "description": "Default value for TimeInForce, can be valid for an amend" - }, - { - "name": "TIME_IN_FORCE_GTC", - "number": "1", - "description": "Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled" - }, - { - "name": "TIME_IN_FORCE_GTT", - "number": "2", - "description": "Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry" - }, - { - "name": "TIME_IN_FORCE_IOC", - "number": "3", - "description": "Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)" - }, - { - "name": "TIME_IN_FORCE_FOK", - "number": "4", - "description": "Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade" - }, - { - "name": "TIME_IN_FORCE_GFA", - "number": "5", - "description": "Good for auction, this order is only accepted during an auction period" - }, - { - "name": "TIME_IN_FORCE_GFN", - "number": "6", - "description": "Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)" - } - ] - }, - { - "name": "Type", - "longName": "Order.Type", - "fullName": "vega.Order.Type", - "description": "Type values for an order", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "TYPE_LIMIT", - "number": "1", - "description": "Used for Limit orders" - }, - { - "name": "TYPE_MARKET", - "number": "2", - "description": "Used for Market orders" - }, - { - "name": "TYPE_NETWORK", - "number": "3", - "description": "Used for orders where the initiating party is the network (with distressed parties)" - } - ] - }, - { - "name": "OrderError", - "longName": "OrderError", - "fullName": "vega.OrderError", - "description": "OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`", - "values": [ - { - "name": "ORDER_ERROR_UNSPECIFIED", - "number": "0", - "description": "Default value, no error reported" - }, - { - "name": "ORDER_ERROR_INVALID_MARKET_ID", - "number": "1", - "description": "Order was submitted for a market that does not exist" - }, - { - "name": "ORDER_ERROR_INVALID_ORDER_ID", - "number": "2", - "description": "Order was submitted with an invalid ID" - }, - { - "name": "ORDER_ERROR_OUT_OF_SEQUENCE", - "number": "3", - "description": "Order was amended with a sequence number that was not previous version + 1" - }, - { - "name": "ORDER_ERROR_INVALID_REMAINING_SIZE", - "number": "4", - "description": "Order was amended with an invalid remaining size (e.g. remaining greater than total size)" - }, - { - "name": "ORDER_ERROR_TIME_FAILURE", - "number": "5", - "description": "Node was unable to get Vega (blockchain) time" - }, - { - "name": "ORDER_ERROR_REMOVAL_FAILURE", - "number": "6", - "description": "Failed to remove an order from the book" - }, - { - "name": "ORDER_ERROR_INVALID_EXPIRATION_DATETIME", - "number": "7", - "description": "Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid" - }, - { - "name": "ORDER_ERROR_INVALID_ORDER_REFERENCE", - "number": "8", - "description": "Order was submitted or amended with an invalid reference field" - }, - { - "name": "ORDER_ERROR_EDIT_NOT_ALLOWED", - "number": "9", - "description": "Order amend was submitted for an order field that cannot not be amended (e.g. order ID)" - }, - { - "name": "ORDER_ERROR_AMEND_FAILURE", - "number": "10", - "description": "Amend failure because amend details do not match original order" - }, - { - "name": "ORDER_ERROR_NOT_FOUND", - "number": "11", - "description": "Order not found in an order book or store" - }, - { - "name": "ORDER_ERROR_INVALID_PARTY_ID", - "number": "12", - "description": "Order was submitted with an invalid or missing party ID" - }, - { - "name": "ORDER_ERROR_MARKET_CLOSED", - "number": "13", - "description": "Order was submitted for a market that has closed" - }, - { - "name": "ORDER_ERROR_MARGIN_CHECK_FAILED", - "number": "14", - "description": "Order was submitted, but the party did not have enough collateral to cover the order" - }, - { - "name": "ORDER_ERROR_MISSING_GENERAL_ACCOUNT", - "number": "15", - "description": "Order was submitted, but the party did not have an account for this asset" - }, - { - "name": "ORDER_ERROR_INTERNAL_ERROR", - "number": "16", - "description": "Unspecified internal error" - }, - { - "name": "ORDER_ERROR_INVALID_SIZE", - "number": "17", - "description": "Order was submitted with an invalid or missing size (e.g. 0)" - }, - { - "name": "ORDER_ERROR_INVALID_PERSISTENCE", - "number": "18", - "description": "Order was submitted with an invalid persistence for its type" - }, - { - "name": "ORDER_ERROR_INVALID_TYPE", - "number": "19", - "description": "Order was submitted with an invalid type field" - }, - { - "name": "ORDER_ERROR_SELF_TRADING", - "number": "20", - "description": "Order was stopped as it would have traded with another order submitted from the same party" - }, - { - "name": "ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES", - "number": "21", - "description": "Order was submitted, but the party did not have enough collateral to cover the fees for the order" - }, - { - "name": "ORDER_ERROR_INCORRECT_MARKET_TYPE", - "number": "22", - "description": "Order was submitted with an incorrect or invalid market type" - }, - { - "name": "ORDER_ERROR_INVALID_TIME_IN_FORCE", - "number": "23", - "description": "Order was submitted with invalid time in force" - }, - { - "name": "ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION", - "number": "24", - "description": "Good For Normal order has reached the market when it is in auction mode" - }, - { - "name": "ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING", - "number": "25", - "description": "Good For Auction order has reached the market when it is in continuous trading mode" - }, - { - "name": "ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT", - "number": "26", - "description": "Attempt to amend order to GTT without ExpiryAt" - }, - { - "name": "ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT", - "number": "27", - "description": "Attempt to amend ExpiryAt to a value before CreatedAt" - }, - { - "name": "ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT", - "number": "28", - "description": "Attempt to amend to GTC without an ExpiryAt value" - }, - { - "name": "ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC", - "number": "29", - "description": "Amending to FOK or IOC is invalid" - }, - { - "name": "ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN", - "number": "30", - "description": "Amending to GFA or GFN is invalid" - }, - { - "name": "ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN", - "number": "31", - "description": "Amending from GFA or GFN is invalid" - }, - { - "name": "ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION", - "number": "32", - "description": "IOC orders are not allowed during auction" - }, - { - "name": "ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION", - "number": "33", - "description": "FOK orders are not allowed during auction" - }, - { - "name": "ORDER_ERROR_MUST_BE_LIMIT_ORDER", - "number": "34", - "description": "Pegged orders must be LIMIT orders" - }, - { - "name": "ORDER_ERROR_MUST_BE_GTT_OR_GTC", - "number": "35", - "description": "Pegged orders can only have TIF GTC or GTT" - }, - { - "name": "ORDER_ERROR_WITHOUT_REFERENCE_PRICE", - "number": "36", - "description": "Pegged order must have a reference price" - }, - { - "name": "ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE", - "number": "37", - "description": "Buy pegged order cannot reference best ask price" - }, - { - "name": "ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO", - "number": "40", - "description": "Pegged order offset must be \u003e= 0" - }, - { - "name": "ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE", - "number": "41", - "description": "Sell pegged order cannot reference best bid price" - }, - { - "name": "ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO", - "number": "42", - "description": "Pegged order offset must be \u003e zero" - }, - { - "name": "ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE", - "number": "43", - "description": "Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)" - }, - { - "name": "ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER", - "number": "44", - "description": "Cannot amend details of a non pegged details" - }, - { - "name": "ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER", - "number": "45", - "description": "Could not re-price a pegged order because a market price is unavailable" - }, - { - "name": "ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER", - "number": "46", - "description": "It is not possible to amend the price of an existing pegged order" - }, - { - "name": "ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS", - "number": "47", - "description": "FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds" - }, - { - "name": "ORDER_ERROR_TOO_MANY_PEGGED_ORDERS", - "number": "48", - "description": "Unable to submit pegged order, temporarily too many pegged orders across all markets" - }, - { - "name": "ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE", - "number": "49", - "description": "Post order would trade" - }, - { - "name": "ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION", - "number": "50", - "description": "Post order would trade" - }, - { - "name": "ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED", - "number": "51", - "description": "Isolated margin check failed" - }, - { - "name": "ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE", - "number": "52", - "description": "In isolated margin pegged orders are rejected" - } - ] - }, - { - "name": "PeggedReference", - "longName": "PeggedReference", - "fullName": "vega.PeggedReference", - "description": "Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point", - "values": [ - { - "name": "PEGGED_REFERENCE_UNSPECIFIED", - "number": "0", - "description": "Default value for PeggedReference, no reference given" - }, - { - "name": "PEGGED_REFERENCE_MID", - "number": "1", - "description": "Mid price reference" - }, - { - "name": "PEGGED_REFERENCE_BEST_BID", - "number": "2", - "description": "Best bid price reference" - }, - { - "name": "PEGGED_REFERENCE_BEST_ASK", - "number": "3", - "description": "Best ask price reference" - } - ] - }, - { - "name": "PositionStatus", - "longName": "PositionStatus", - "fullName": "vega.PositionStatus", - "description": "Represents the status of a position", - "values": [ - { - "name": "POSITION_STATUS_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "POSITION_STATUS_ORDERS_CLOSED", - "number": "1", - "description": "" - }, - { - "name": "POSITION_STATUS_CLOSED_OUT", - "number": "2", - "description": "" - }, - { - "name": "POSITION_STATUS_DISTRESSED", - "number": "4", - "description": "" - } - ] - }, - { - "name": "Side", - "longName": "Side", - "fullName": "vega.Side", - "description": "Side relates to the direction of an order, to Buy, or Sell", - "values": [ - { - "name": "SIDE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "SIDE_BUY", - "number": "1", - "description": "Buy order" - }, - { - "name": "SIDE_SELL", - "number": "2", - "description": "Sell order" - } - ] - }, - { - "name": "ExpiryStrategy", - "longName": "StopOrder.ExpiryStrategy", - "fullName": "vega.StopOrder.ExpiryStrategy", - "description": "", - "values": [ - { - "name": "EXPIRY_STRATEGY_UNSPECIFIED", - "number": "0", - "description": "Never valid" - }, - { - "name": "EXPIRY_STRATEGY_CANCELS", - "number": "1", - "description": "Stop order should be cancelled if the expiry time is reached." - }, - { - "name": "EXPIRY_STRATEGY_SUBMIT", - "number": "2", - "description": "Order should be submitted if the expiry time is reached." - } - ] - }, - { - "name": "RejectionReason", - "longName": "StopOrder.RejectionReason", - "fullName": "vega.StopOrder.RejectionReason", - "description": "", - "values": [ - { - "name": "REJECTION_REASON_UNSPECIFIED", - "number": "0", - "description": "Never valid" - }, - { - "name": "REJECTION_REASON_TRADING_NOT_ALLOWED", - "number": "1", - "description": "Trading is not allowed yet" - }, - { - "name": "REJECTION_REASON_EXPIRY_IN_THE_PAST", - "number": "2", - "description": "Expiry of the stop order is in the past" - }, - { - "name": "REJECTION_REASON_MUST_BE_REDUCE_ONLY", - "number": "3", - "description": "Stop orders submission must be reduce only" - }, - { - "name": "REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED", - "number": "4", - "description": "Party has reached the maximum stop orders allowed for this market" - }, - { - "name": "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION", - "number": "5", - "description": "Stop orders are not allowed if there is no open position" - }, - { - "name": "REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION", - "number": "6", - "description": "This stop order does not close the position" - }, - { - "name": "REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID", - "number": "7", - "description": "The percentage value for the linked stop order is invalid" - }, - { - "name": "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION", - "number": "8", - "description": "Stop orders are not allowed during the opening auction" - }, - { - "name": "REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES", - "number": "9", - "description": "Stop OCO orders cannot have the same expiry timestamp" - } - ] - }, - { - "name": "SizeOverrideSetting", - "longName": "StopOrder.SizeOverrideSetting", - "fullName": "vega.StopOrder.SizeOverrideSetting", - "description": "", - "values": [ - { - "name": "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "number": "0", - "description": "Never valid" - }, - { - "name": "SIZE_OVERRIDE_SETTING_NONE", - "number": "1", - "description": "No override, the size within the contained normal order submission will be used" - }, - { - "name": "SIZE_OVERRIDE_SETTING_POSITION", - "number": "2", - "description": "Use the total position of the trader" - } - ] - }, - { - "name": "Status", - "longName": "StopOrder.Status", - "fullName": "vega.StopOrder.Status", - "description": "", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Never valid" - }, - { - "name": "STATUS_PENDING", - "number": "1", - "description": "Pending to be executed once the trigger is breached" - }, - { - "name": "STATUS_CANCELLED", - "number": "2", - "description": "Cancelled by the user" - }, - { - "name": "STATUS_STOPPED", - "number": "3", - "description": "Stopped by the network, e.g: OCO on the other side has been triggered" - }, - { - "name": "STATUS_TRIGGERED", - "number": "4", - "description": "Stop order has been triggered and generated an order" - }, - { - "name": "STATUS_EXPIRED", - "number": "5", - "description": "Stop order has expired" - }, - { - "name": "STATUS_REJECTED", - "number": "6", - "description": "Stop order was rejected at submission" - } - ] - }, - { - "name": "TriggerDirection", - "longName": "StopOrder.TriggerDirection", - "fullName": "vega.StopOrder.TriggerDirection", - "description": "", - "values": [ - { - "name": "TRIGGER_DIRECTION_UNSPECIFIED", - "number": "0", - "description": "Never valid" - }, - { - "name": "TRIGGER_DIRECTION_RISES_ABOVE", - "number": "1", - "description": "Stop order is triggered once the price rises above a certain level" - }, - { - "name": "TRIGGER_DIRECTION_FALLS_BELOW", - "number": "2", - "description": "Stop order is triggered once the price falls below a certain level" - } - ] - }, - { - "name": "Type", - "longName": "Trade.Type", - "fullName": "vega.Trade.Type", - "description": "Type values for a trade", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "TYPE_DEFAULT", - "number": "1", - "description": "Normal trading between two parties" - }, - { - "name": "TYPE_NETWORK_CLOSE_OUT_GOOD", - "number": "2", - "description": "Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties" - }, - { - "name": "TYPE_NETWORK_CLOSE_OUT_BAD", - "number": "3", - "description": "Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party" - } - ] - }, - { - "name": "TransferType", - "longName": "TransferType", - "fullName": "vega.TransferType", - "description": "Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place", - "values": [ - { - "name": "TRANSFER_TYPE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "TRANSFER_TYPE_LOSS", - "number": "1", - "description": "Funds deducted after final settlement loss" - }, - { - "name": "TRANSFER_TYPE_WIN", - "number": "2", - "description": "Funds added to general account after final settlement gain" - }, - { - "name": "TRANSFER_TYPE_MTM_LOSS", - "number": "4", - "description": "Funds deducted from margin account after mark to market loss" - }, - { - "name": "TRANSFER_TYPE_MTM_WIN", - "number": "5", - "description": "Funds added to margin account after mark to market gain" - }, - { - "name": "TRANSFER_TYPE_MARGIN_LOW", - "number": "6", - "description": "Funds transferred from general account to meet margin requirement" - }, - { - "name": "TRANSFER_TYPE_MARGIN_HIGH", - "number": "7", - "description": "Excess margin amount returned to general account" - }, - { - "name": "TRANSFER_TYPE_MARGIN_CONFISCATED", - "number": "8", - "description": "Margin confiscated from margin account to fulfil closeout" - }, - { - "name": "TRANSFER_TYPE_MAKER_FEE_PAY", - "number": "9", - "description": "Maker fee paid from general account" - }, - { - "name": "TRANSFER_TYPE_MAKER_FEE_RECEIVE", - "number": "10", - "description": "Maker fee received into general account" - }, - { - "name": "TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY", - "number": "11", - "description": "Infrastructure fee paid from general account" - }, - { - "name": "TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE", - "number": "12", - "description": "Infrastructure fee received into general account" - }, - { - "name": "TRANSFER_TYPE_LIQUIDITY_FEE_PAY", - "number": "13", - "description": "Liquidity fee paid from general account" - }, - { - "name": "TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE", - "number": "14", - "description": "Liquidity fee received into general account" - }, - { - "name": "TRANSFER_TYPE_BOND_LOW", - "number": "15", - "description": "Bond account funded from general account to meet required bond amount" - }, - { - "name": "TRANSFER_TYPE_BOND_HIGH", - "number": "16", - "description": "Bond returned to general account after liquidity commitment was reduced" - }, - { - "name": "TRANSFER_TYPE_WITHDRAW", - "number": "18", - "description": "Funds withdrawn from general account" - }, - { - "name": "TRANSFER_TYPE_DEPOSIT", - "number": "19", - "description": "Funds deposited to general account" - }, - { - "name": "TRANSFER_TYPE_BOND_SLASHING", - "number": "20", - "description": "Bond account penalised when liquidity commitment not met" - }, - { - "name": "TRANSFER_TYPE_REWARD_PAYOUT", - "number": "21", - "description": "Reward payout received" - }, - { - "name": "TRANSFER_TYPE_TRANSFER_FUNDS_SEND", - "number": "22", - "description": "Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool" - }, - { - "name": "TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE", - "number": "23", - "description": "Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account" - }, - { - "name": "TRANSFER_TYPE_CLEAR_ACCOUNT", - "number": "24", - "description": "Market-related accounts emptied because market has closed" - }, - { - "name": "TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE", - "number": "25", - "description": "Balances restored after network restart" - }, - { - "name": "TRANSFER_TYPE_SPOT", - "number": "26", - "description": "Spot trade delivery" - }, - { - "name": "TRANSFER_TYPE_HOLDING_LOCK", - "number": "27", - "description": "An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account." - }, - { - "name": "TRANSFER_TYPE_HOLDING_RELEASE", - "number": "28", - "description": "An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account." - }, - { - "name": "TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION", - "number": "29", - "description": "Insurance pool fraction transfer from parent to successor market." - }, - { - "name": "TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE", - "number": "30", - "description": "Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account." - }, - { - "name": "TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE", - "number": "31", - "description": "Distributes net fee earnings from liquidity provider's fee account to their general account." - }, - { - "name": "TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY", - "number": "32", - "description": "Applies SLA penalty by moving funds from party's bond account to market's insurance pool." - }, - { - "name": "TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY", - "number": "33", - "description": "Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool." - }, - { - "name": "TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT", - "number": "34", - "description": "Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account." - }, - { - "name": "TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE", - "number": "35", - "description": "Distributes performance bonus from market bonus to liquidity provider's general account." - }, - { - "name": "TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS", - "number": "36", - "description": "Funds deducted from margin account after a perpetuals funding loss." - }, - { - "name": "TRANSFER_TYPE_PERPETUALS_FUNDING_WIN", - "number": "37", - "description": "Funds added to margin account after a perpetuals funding gain." - }, - { - "name": "TRANSFER_TYPE_REWARDS_VESTED", - "number": "38", - "description": "Funds moved from the vesting account to the vested account once the vesting period is reached." - }, - { - "name": "TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY", - "number": "39", - "description": "Fee referrer reward paid from general account." - }, - { - "name": "TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE", - "number": "44", - "description": "Fee referrer reward received into general account of the referrer." - }, - { - "name": "TRANSFER_TYPE_ORDER_MARGIN_LOW", - "number": "45", - "description": "Funds transferred from general account to meet order margin requirement in isolated margin mode." - }, - { - "name": "TRANSFER_TYPE_ORDER_MARGIN_HIGH", - "number": "46", - "description": "Excess order margin amount returned to general account." - }, - { - "name": "TRANSFER_TYPE_ISOLATED_MARGIN_LOW", - "number": "47", - "description": "Transfer from order margin account to margin account due to increase of position." - }, - { - "name": "TRANSFER_TYPE_ISOLATED_MARGIN_HIGH", - "number": "48", - "description": "Transfer from excess order margin account to general account." - } - ] - }, - { - "name": "ValidatorNodeStatus", - "longName": "ValidatorNodeStatus", - "fullName": "vega.ValidatorNodeStatus", - "description": "Validation status of the node", - "values": [ - { - "name": "VALIDATOR_NODE_STATUS_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "VALIDATOR_NODE_STATUS_TENDERMINT", - "number": "1", - "description": "Node is a tendermint validator" - }, - { - "name": "VALIDATOR_NODE_STATUS_ERSATZ", - "number": "2", - "description": "Node is an ersatz validator" - }, - { - "name": "VALIDATOR_NODE_STATUS_PENDING", - "number": "3", - "description": "Node is a pending validator" - } - ] - }, - { - "name": "Status", - "longName": "Withdrawal.Status", - "fullName": "vega.Withdrawal.Status", - "description": "Status of the withdrawal", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "STATUS_OPEN", - "number": "1", - "description": "Withdrawal is open and being processed by the network" - }, - { - "name": "STATUS_REJECTED", - "number": "2", - "description": "Withdrawal have been cancelled" - }, - { - "name": "STATUS_FINALIZED", - "number": "3", - "description": "Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "Account", - "longName": "Account", - "fullName": "vega.Account", - "description": "Represents an account for an asset on Vega for a particular owner or party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique account ID, used internally by Vega.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "owner", - "description": "Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset ID for the account.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Account type related to this account.", - "label": "", - "type": "AccountType", - "longType": "AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AccountDetails", - "longName": "AccountDetails", - "fullName": "vega.AccountDetails", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Asset ID of the asset for this account.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of the account.", - "label": "", - "type": "AccountType", - "longType": "AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "owner", - "description": "Not specified if network account.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_owner", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Not specified if account is not related to a market.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - } - ] - }, - { - "name": "ActivityStreakBenefitTier", - "longName": "ActivityStreakBenefitTier", - "fullName": "vega.ActivityStreakBenefitTier", - "description": "An activity streak benefit tier", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "minimum_activity_streak", - "description": "Number of epochs a party must be active to receive the multiplier.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_multiplier", - "description": "Reward multiplier applicable to this tier.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vesting_multiplier", - "description": "Vesting bonus applicable to this tier.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ActivityStreakBenefitTiers", - "longName": "ActivityStreakBenefitTiers", - "fullName": "vega.ActivityStreakBenefitTiers", - "description": "A list of activity streak benefit tiers", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tiers", - "description": "Defined benefit tiers ordered by increasing reward multipliers.", - "label": "repeated", - "type": "ActivityStreakBenefitTier", - "longType": "ActivityStreakBenefitTier", - "fullType": "vega.ActivityStreakBenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AuctionIndicativeState", - "longName": "AuctionIndicativeState", - "fullName": "vega.AuctionIndicativeState", - "description": "AuctionIndicativeState is used to emit an event with the indicative price/volume per market during an auction", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for which this state relates to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "indicative_price", - "description": "Indicative uncrossing price is the price at which all trades would occur if the auction uncrossed now.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "indicative_volume", - "description": "Indicative uncrossing volume is the volume available at the indicative crossing price if the auction uncrossed now.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_start", - "description": "Timestamp at which the auction started.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_end", - "description": "Timestamp at which the auction is meant to stop.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BenefitTier", - "longName": "BenefitTier", - "fullName": "vega.BenefitTier", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "minimum_running_notional_taker_volume", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "minimum_epochs", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referral_reward_factor", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referral_discount_factor", - "description": "Proportion of the referee's taker fees to be discounted.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Candle", - "longName": "Candle", - "fullName": "vega.Candle", - "description": "Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "datetime", - "description": "ISO-8601 datetime with nanosecond precision for when the candle was last updated.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "high", - "description": "Highest price for trading during the candle interval. This field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "low", - "description": "Lowest price for trading during the candle interval. This field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "open", - "description": "Open trade price. This field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "close", - "description": "Closing trade price. This field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "Total trading volume during the candle interval.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "interval", - "description": "Time interval for the candle.", - "label": "", - "type": "Interval", - "longType": "Interval", - "fullType": "vega.Interval", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional", - "description": "Total notional value traded during the candle interval.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Delegation", - "longName": "Delegation", - "fullName": "vega.Delegation", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "Party which is delegating.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "Node ID to delegate to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch of delegation.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Deposit", - "longName": "Deposit", - "fullName": "vega.Deposit", - "description": "Deposit on to the Vega network", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID for the deposit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the deposit.", - "label": "", - "type": "Status", - "longType": "Deposit.Status", - "fullType": "vega.Deposit.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID of the user initiating the deposit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Vega asset targeted by this deposit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "Hash of the transaction from the foreign chain.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "credited_timestamp", - "description": "Timestamp for when the Vega account was updated with the deposit.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_timestamp", - "description": "Timestamp for when the deposit was created on the Vega network.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DispatchStrategy", - "longName": "DispatchStrategy", - "fullName": "vega.DispatchStrategy", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_for_metric", - "description": "Asset to use for metric.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metric", - "description": "Metric to apply.", - "label": "", - "type": "DispatchMetric", - "longType": "DispatchMetric", - "fullType": "vega.DispatchMetric", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "markets", - "description": "Optional markets in scope.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "entity_scope", - "description": "Mandatory enum that defines the entities within scope.", - "label": "", - "type": "EntityScope", - "longType": "EntityScope", - "fullType": "vega.EntityScope", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "individual_scope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.", - "label": "", - "type": "IndividualScope", - "longType": "IndividualScope", - "fullType": "vega.IndividualScope", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team_scope", - "description": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "n_top_performers", - "description": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staking_requirement", - "description": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional_time_weighted_average_position_requirement", - "description": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window_length", - "description": "Number of epochs to evaluate the metric on", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lock_period", - "description": "Number of epochs after distribution to delay vesting of rewards by", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "distribution_strategy", - "description": "Controls how the reward is distributed between qualifying parties", - "label": "", - "type": "DistributionStrategy", - "longType": "DistributionStrategy", - "fullType": "vega.DistributionStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rank_table", - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.", - "label": "repeated", - "type": "Rank", - "longType": "Rank", - "fullType": "vega.Rank", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Epoch", - "longName": "Epoch", - "fullName": "vega.Epoch", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "seq", - "description": "Sequence is used as epoch ID.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamps", - "description": "Timestamps for start/end etc.", - "label": "", - "type": "EpochTimestamps", - "longType": "EpochTimestamps", - "fullType": "vega.EpochTimestamps", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validators", - "description": "Validators that participated in this epoch.", - "label": "repeated", - "type": "Node", - "longType": "Node", - "fullType": "vega.Node", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "delegations", - "description": "List of all delegations in epoch.", - "label": "repeated", - "type": "Delegation", - "longType": "Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochData", - "longName": "EpochData", - "fullName": "vega.EpochData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "total", - "description": "Total number of epochs since node was created.", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "offline", - "description": "Total number of offline epochs since node was created.", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "online", - "description": "Total number of online epochs since node was created.", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochParticipation", - "longName": "EpochParticipation", - "fullName": "vega.EpochParticipation", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "epoch", - "description": "", - "label": "", - "type": "Epoch", - "longType": "Epoch", - "fullType": "vega.Epoch", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "offline", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "online", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_rewards", - "description": "", - "label": "", - "type": "double", - "longType": "double", - "fullType": "double", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochRewardSummary", - "longName": "EpochRewardSummary", - "fullName": "vega.EpochRewardSummary", - "description": "Details for rewards for a combination of asset, market, and reward type in a given epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "epoch", - "description": "Epoch in which the reward is being paid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Asset ID in which the reward is being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID in which the reward is being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_type", - "description": "Type of reward being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount distributed. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochTimestamps", - "longName": "EpochTimestamps", - "fullName": "vega.EpochTimestamps", - "description": "Describes in both human readable and block time when an epoch spans", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "start_time", - "description": "Timestamp in Unix nanoseconds for when epoch started.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expiry_time", - "description": "Timestamp in Unix nanoseconds for the epoch's expiry.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_time", - "description": "Timestamp in Unix nanoseconds for when the epoch ended, empty if not ended.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "first_block", - "description": "Height of first block in the epoch.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_block", - "description": "Height of last block in the epoch, empty if not ended.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Erc20WithdrawExt", - "longName": "Erc20WithdrawExt", - "fullName": "vega.Erc20WithdrawExt", - "description": "Extension of data required for the withdraw submissions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "receiver_address", - "description": "Address into which the bridge will release the funds.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ErrorDetail", - "longName": "ErrorDetail", - "fullName": "vega.ErrorDetail", - "description": "Represents Vega domain specific error information over gRPC/Protobuf", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "code", - "description": "Vega API domain specific unique error code, useful for client side mappings, e.g. 10004.", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "message", - "description": "Message that describes the error in more detail, should describe the problem encountered.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "inner", - "description": "Any inner error information that could add more context, or be helpful for error reporting.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumConfig", - "longName": "EthereumConfig", - "fullName": "vega.EthereumConfig", - "description": "Ethereum configuration details.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "network_id", - "description": "Network ID of this Ethereum network.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_id", - "description": "Chain ID of this Ethereum network.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "collateral_bridge_contract", - "description": "Contract configuration of the collateral bridge contract for this Ethereum network.", - "label": "", - "type": "EthereumContractConfig", - "longType": "EthereumContractConfig", - "fullType": "vega.EthereumContractConfig", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "confirmations", - "description": "Number of block confirmations to wait to consider an Ethereum transaction trusted.\nAn Ethereum block is trusted when there are at least \"n\" blocks confirmed by the\nnetwork, \"n\" being the number of `confirmations` required. If `confirmations` was set to `3`,\nand the current block to be forged (or mined) on Ethereum is block 14, block\n10 would be considered as trusted, but not block 11.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staking_bridge_contract", - "description": "Contract configuration of the stacking bridge contract for this Ethereum network.", - "label": "", - "type": "EthereumContractConfig", - "longType": "EthereumContractConfig", - "fullType": "vega.EthereumContractConfig", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "token_vesting_contract", - "description": "Contract configuration of the token vesting contract for this Ethereum network.", - "label": "", - "type": "EthereumContractConfig", - "longType": "EthereumContractConfig", - "fullType": "vega.EthereumContractConfig", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "multisig_control_contract", - "description": "Contract configuration of the multisig control contract for this Ethereum network.", - "label": "", - "type": "EthereumContractConfig", - "longType": "EthereumContractConfig", - "fullType": "vega.EthereumContractConfig", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumContractConfig", - "longName": "EthereumContractConfig", - "fullName": "vega.EthereumContractConfig", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "address", - "description": "Address of the contract for this Ethereum network. The address should start with \"0x\".", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "deployment_block_height", - "description": "Block height at which the stacking contract has been deployed for this Ethereum network.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumL2Config", - "longName": "EthereumL2Config", - "fullName": "vega.EthereumL2Config", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "network_id", - "description": "Network ID of this Ethereum layer 2 network.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_id", - "description": "Chain ID of this Ethereum layer 2 network.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "confirmations", - "description": "Number of block confirmations to wait to consider an Ethereum transaction trusted.\nAn Ethereum block is trusted when there are at least \"n\" blocks confirmed by the\nnetwork, \"n\" being the number of `confirmations` required. If `confirmations` was set to `3`,\nand the current block to be forged, or mined, on the L2 is block 14, block\n10 would be considered as trusted, but not block 11.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Display name of this network", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumL2Configs", - "longName": "EthereumL2Configs", - "fullName": "vega.EthereumL2Configs", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "configs", - "description": "", - "label": "repeated", - "type": "EthereumL2Config", - "longType": "EthereumL2Config", - "fullType": "vega.EthereumL2Config", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Fee", - "longName": "Fee", - "fullName": "vega.Fee", - "description": "Represents any fees paid by a party, resulting from a trade", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "maker_fee", - "description": "Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "infrastructure_fee", - "description": "Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee", - "description": "Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fee_volume_discount", - "description": "Volume discounts.\nDiscount on maker fee based on the taker volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "infrastructure_fee_volume_discount", - "description": "Discount on infrastructure fee based on the taker volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee_volume_discount", - "description": "Discount on liquidity fee basedo on taker volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fee_referrer_discount", - "description": "Referrer discounts.\nDiscount on maker fee for eligible referrer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "infrastructure_fee_referrer_discount", - "description": "Discount on infrastructure fee for eligible referrer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee_referrer_discount", - "description": "Discount on liquidity fee for eligible referrer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FinancialAmount", - "longName": "FinancialAmount", - "fullName": "vega.FinancialAmount", - "description": "Asset value information used within a transfer", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "amount", - "description": "Unsigned integer amount of asset scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset ID the amount applies to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "IcebergOrder", - "longName": "IcebergOrder", - "fullName": "vega.IcebergOrder", - "description": "Details of an iceberg order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "peak_size", - "description": "Size of the order that will be made visible if the iceberg order is replenished after trading.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "minimum_visible_size", - "description": "If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reserved_remaining", - "description": "Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "KeyValueBundle", - "longName": "KeyValueBundle", - "fullName": "vega.KeyValueBundle", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tolerance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "", - "label": "", - "type": "StateVarValue", - "longType": "StateVarValue", - "fullType": "vega.StateVarValue", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LedgerEntry", - "longName": "LedgerEntry", - "fullName": "vega.LedgerEntry", - "description": "Represents a ledger entry on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "from_account", - "description": "One or more accounts to transfer from.", - "label": "", - "type": "AccountDetails", - "longType": "AccountDetails", - "fullType": "vega.AccountDetails", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account", - "description": "One or more accounts to transfer to.", - "label": "", - "type": "AccountDetails", - "longType": "AccountDetails", - "fullType": "vega.AccountDetails", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Transfer type for this entry.", - "label": "", - "type": "TransferType", - "longType": "TransferType", - "fullType": "vega.TransferType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Timestamp in nanoseconds of when the ledger entry was created.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_account_balance", - "description": "Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account_balance", - "description": "Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfer_id", - "description": "Transfer ID the ledger entry relates to.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_transfer_id", - "defaultValue": "" - } - ] - }, - { - "name": "LedgerMovement", - "longName": "LedgerMovement", - "fullName": "vega.LedgerMovement", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "entries", - "description": "All the entries for these ledger movements.", - "label": "repeated", - "type": "LedgerEntry", - "longType": "LedgerEntry", - "fullType": "vega.LedgerEntry", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balances", - "description": "Resulting balances once the ledger movement are applied.", - "label": "repeated", - "type": "PostTransferBalance", - "longType": "PostTransferBalance", - "fullType": "vega.PostTransferBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityOrder", - "longName": "LiquidityOrder", - "fullName": "vega.LiquidityOrder", - "description": "Represents a liquidity order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "reference", - "description": "Pegged reference point for the order.", - "label": "", - "type": "PeggedReference", - "longType": "PeggedReference", - "fullType": "vega.PeggedReference", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proportion", - "description": "Relative proportion of the commitment to be allocated at a price level.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "offset", - "description": "Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityOrderReference", - "longName": "LiquidityOrderReference", - "fullName": "vega.LiquidityOrderReference", - "description": "Pair of a liquidity order and the ID of the generated order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "order_id", - "description": "Unique ID of the pegged order generated to fulfil this liquidity order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_order", - "description": "Liquidity order from the original submission.", - "label": "", - "type": "LiquidityOrder", - "longType": "LiquidityOrder", - "fullType": "vega.LiquidityOrder", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProviderFeeShare", - "longName": "LiquidityProviderFeeShare", - "fullName": "vega.LiquidityProviderFeeShare", - "description": "Equity like share of liquidity fee for each liquidity provider", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "Liquidity provider party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "equity_like_share", - "description": "Share own by this liquidity provider.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_entry_valuation", - "description": "Average entry valuation of the liquidity provider for the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_score", - "description": "Average liquidity score.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "virtual_stake", - "description": "The virtual stake of this liquidity provider.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProviderSLA", - "longName": "LiquidityProviderSLA", - "fullName": "vega.LiquidityProviderSLA", - "description": "SLA performance for each liquidity provider", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "Liquidity provider party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_epoch_fraction_of_time_on_book", - "description": "Indicates how often LP meets the commitment during the current epoch.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_epoch_fraction_of_time_on_book", - "description": "Indicates how often LP met the commitment in the previous epoch.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_epoch_fee_penalty", - "description": "Indicates the fee penalty amount applied in the previous epoch.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_epoch_bond_penalty", - "description": "Shows the bond penalties from past epochs.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hysteresis_period_fee_penalties", - "description": "Determines how the fee penalties from past epochs affect future fee revenue.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_liquidity", - "description": "Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional_volume_buys", - "description": "Notional volume of orders within the range provided on the buy side of the book.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional_volume_sells", - "description": "Notional volume of orders within the range provided on the sell side of the book.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvision", - "longName": "LiquidityProvision", - "fullName": "vega.LiquidityProvision", - "description": "Liquidity provider commitment", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID for the liquidity provision.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Unique party ID for the creator of the provision.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was created.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID for the liquidity provision.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "commitment_amount", - "description": "Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sells", - "description": "Set of liquidity sell orders to meet the liquidity provision obligation.", - "label": "repeated", - "type": "LiquidityOrderReference", - "longType": "LiquidityOrderReference", - "fullType": "vega.LiquidityOrderReference", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buys", - "description": "Set of liquidity buy orders to meet the liquidity provision obligation.", - "label": "repeated", - "type": "LiquidityOrderReference", - "longType": "LiquidityOrderReference", - "fullType": "vega.LiquidityOrderReference", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "version", - "description": "Version of this liquidity provision.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of this liquidity provision.", - "label": "", - "type": "Status", - "longType": "LiquidityProvision.Status", - "fullType": "vega.LiquidityProvision.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Reference shared between this liquidity provision and all its orders.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarginLevels", - "longName": "MarginLevels", - "fullName": "vega.MarginLevels", - "description": "Represents the margin levels for a party on a market at a given time", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "maintenance_margin", - "description": "Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "search_level", - "description": "Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "initial_margin", - "description": "Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "collateral_release_level", - "description": "Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID for whom the margin levels apply.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID for which the margin levels apply.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset ID for which the margin levels apply.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds for when the ledger entry was created.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_margin", - "description": "Margin required to cover orders in isolated margin mode.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_mode", - "description": "Margin mode for the party, cross margin or isolated margin.", - "label": "", - "type": "MarginMode", - "longType": "MarginMode", - "fullType": "vega.MarginMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_factor", - "description": "Margin factor, relevant only for isolated margin, 0 otherwise.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketData", - "longName": "MarketData", - "fullName": "vega.MarketData", - "description": "Represents data generated by a market when open", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "mark_price", - "description": "Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_bid_price", - "description": "Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_bid_volume", - "description": "Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_offer_price", - "description": "Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_offer_volume", - "description": "Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_static_bid_price", - "description": "Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_static_bid_volume", - "description": "Total volume at the best static bid price excluding pegged orders.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_static_offer_price", - "description": "Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_static_offer_volume", - "description": "Total volume at the best static offer price, excluding pegged orders.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mid_price", - "description": "Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "static_mid_price", - "description": "Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market", - "description": "Market ID for the data", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds at which this mark price was relevant.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "open_interest", - "description": "Sum of the size of all positions greater than zero on the market.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_end", - "description": "Time in seconds until the end of the auction (zero if currently not in auction period).", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_start", - "description": "Time until next auction, or start time of the current auction if market is in auction period.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "indicative_price", - "description": "Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "indicative_volume", - "description": "Indicative volume (zero if not in auction).", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_trading_mode", - "description": "Current trading mode for the market.", - "label": "", - "type": "TradingMode", - "longType": "Market.TradingMode", - "fullType": "vega.Market.TradingMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trigger", - "description": "When a market is in an auction trading mode, this field indicates what triggered the auction.", - "label": "", - "type": "AuctionTrigger", - "longType": "AuctionTrigger", - "fullType": "vega.AuctionTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "extension_trigger", - "description": "When a market auction is extended, this field indicates what caused the extension.", - "label": "", - "type": "AuctionTrigger", - "longType": "AuctionTrigger", - "fullType": "vega.AuctionTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "target_stake", - "description": "Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "supplied_stake", - "description": "Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitoring_bounds", - "description": "One or more price monitoring bounds for the current timestamp.", - "label": "repeated", - "type": "PriceMonitoringBounds", - "longType": "PriceMonitoringBounds", - "fullType": "vega.PriceMonitoringBounds", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_value_proxy", - "description": "Market value proxy.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_provider_fee_share", - "description": "Equity like share of liquidity fee for each liquidity provider.", - "label": "repeated", - "type": "LiquidityProviderFeeShare", - "longType": "LiquidityProviderFeeShare", - "fullType": "vega.LiquidityProviderFeeShare", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_state", - "description": "Current state of the market.", - "label": "", - "type": "State", - "longType": "Market.State", - "fullType": "vega.Market.State", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_mark_to_market", - "description": "Time in Unix nanoseconds when the next mark-to-market calculation will occur.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_traded_price", - "description": "Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_growth", - "description": "Market growth at the last market time window.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "product_data", - "description": "Data related to the particular product type of the market.", - "label": "optional", - "type": "ProductData", - "longType": "ProductData", - "fullType": "vega.ProductData", - "ismap": false, - "isoneof": true, - "oneofdecl": "_product_data", - "defaultValue": "" - }, - { - "name": "liquidity_provider_sla", - "description": "SLA performance for each liquidity provider.", - "label": "repeated", - "type": "LiquidityProviderSLA", - "longType": "LiquidityProviderSLA", - "fullType": "vega.LiquidityProviderSLA", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_network_closeout", - "description": "Time in Unix nanoseconds when the market will next submit a trade to reduce its position.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mark_price_type", - "description": "The method used for calculating the mark price.", - "label": "", - "type": "CompositePriceType", - "longType": "CompositePriceType", - "fullType": "vega.CompositePriceType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketDepth", - "longName": "MarketDepth", - "fullName": "vega.MarketDepth", - "description": "Represents market depth or order book data for the specified market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for which the depth levels apply.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buy", - "description": "Collection of price levels for the buy side of the book.", - "label": "repeated", - "type": "PriceLevel", - "longType": "PriceLevel", - "fullType": "vega.PriceLevel", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sell", - "description": "Collection of price levels for the sell side of the book.", - "label": "repeated", - "type": "PriceLevel", - "longType": "PriceLevel", - "fullType": "vega.PriceLevel", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sequence_number", - "description": "Sequence number for the market depth data returned.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketDepthUpdate", - "longName": "MarketDepthUpdate", - "fullName": "vega.MarketDepthUpdate", - "description": "Represents the changed market depth since the last update", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for which the market depth updates are for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buy", - "description": "Collection of updated price levels for the buy side of the book.", - "label": "repeated", - "type": "PriceLevel", - "longType": "PriceLevel", - "fullType": "vega.PriceLevel", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sell", - "description": "Collection of updated price levels for the sell side of the book.", - "label": "repeated", - "type": "PriceLevel", - "longType": "PriceLevel", - "fullType": "vega.PriceLevel", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sequence_number", - "description": "Sequence number for the market depth update data returned. It is increasing but not monotonic.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "previous_sequence_number", - "description": "Sequence number of the previous market depth update, for checking there are no gaps.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MatrixValue", - "longName": "MatrixValue", - "fullName": "vega.MatrixValue", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "value", - "description": "", - "label": "repeated", - "type": "VectorValue", - "longType": "VectorValue", - "fullType": "vega.VectorValue", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Metadata", - "longName": "Metadata", - "fullName": "vega.Metadata", - "description": "Generic structure holding a key/value pair.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "Key of the metadata.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "Value of the metadata.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NetworkLimits", - "longName": "NetworkLimits", - "fullName": "vega.NetworkLimits", - "description": "Network limits, defined in the genesis file", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "can_propose_market", - "description": "Are market proposals allowed at this point in time.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "can_propose_asset", - "description": "Are asset proposals allowed at this point in time.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_market_enabled", - "description": "Are market proposals enabled on this chain.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_asset_enabled", - "description": "Are asset proposals enabled on this chain.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "genesis_loaded", - "description": "True once the genesis file is loaded.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_market_enabled_from", - "description": "Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_asset_enabled_from", - "description": "Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "can_propose_spot_market", - "description": "Are spot market proposals allowed at this point in time.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "can_propose_perpetual_market", - "description": "Are perpetual market proposals allowed at this point in time.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NetworkParameter", - "longName": "NetworkParameter", - "fullName": "vega.NetworkParameter", - "description": "Represents a network parameter on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "Unique key of the network parameter.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "Value for the network parameter.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Node", - "longName": "Node", - "fullName": "vega.Node", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Node ID i.e. the node's wallet ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pub_key", - "description": "Public key of the node operator.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tm_pub_key", - "description": "Public key of Tendermint.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_address", - "description": "Ethereum public key of the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "info_url", - "description": "URL where users can find out more information on the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "location", - "description": "Country code for the location of the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staked_by_operator", - "description": "Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staked_by_delegates", - "description": "Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staked_total", - "description": "Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_intended_stake", - "description": "Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_stake", - "description": "Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_data", - "description": "Information about epoch.", - "label": "", - "type": "EpochData", - "longType": "EpochData", - "fullType": "vega.EpochData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Node status.", - "label": "", - "type": "NodeStatus", - "longType": "NodeStatus", - "fullType": "vega.NodeStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "delegations", - "description": "Node's delegations.", - "label": "repeated", - "type": "Delegation", - "longType": "Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_score", - "description": "Node reward score.", - "label": "", - "type": "RewardScore", - "longType": "RewardScore", - "fullType": "vega.RewardScore", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ranking_score", - "description": "Node ranking information.", - "label": "", - "type": "RankingScore", - "longType": "RankingScore", - "fullType": "vega.RankingScore", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Node name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "Avatar url.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeData", - "longName": "NodeData", - "fullName": "vega.NodeData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "staked_total", - "description": "Total staked amount across all nodes. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_nodes", - "description": "Total number of nodes across all node sets.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "inactive_nodes", - "description": "Total number of nodes that had a performance score of 0 at the end of the last epoch.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tendermint_nodes", - "description": "Details on the set of consensus nodes in the network.", - "label": "", - "type": "NodeSet", - "longType": "NodeSet", - "fullType": "vega.NodeSet", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ersatz_nodes", - "description": "Details on the set of ersatz (standby) nodes in the network.", - "label": "", - "type": "NodeSet", - "longType": "NodeSet", - "fullType": "vega.NodeSet", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_nodes", - "description": "Details on the set of pending nodes in the network.", - "label": "", - "type": "NodeSet", - "longType": "NodeSet", - "fullType": "vega.NodeSet", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "uptime", - "description": "Total uptime for all epochs across all nodes.", - "label": "", - "type": "float", - "longType": "float", - "fullType": "float", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeSet", - "longName": "NodeSet", - "fullName": "vega.NodeSet", - "description": "Details on the collection of nodes for a particular validator status", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "total", - "description": "Total number of nodes in the node set.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "inactive", - "description": "Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "promoted", - "description": "IDs of nodes that were promoted into this node set at the start of the epoch.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "demoted", - "description": "IDs of nodes that were demoted into this node set at the start of the epoch.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maximum", - "description": "Total number of nodes allowed in the node set.", - "label": "optional", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": true, - "oneofdecl": "_maximum", - "defaultValue": "" - } - ] - }, - { - "name": "Order", - "longName": "Order", - "fullName": "vega.Order", - "description": "Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID generated for the order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID for the order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID for the order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "side", - "description": "Side for the order, e.g. SIDE_BUY or SIDE_SELL.", - "label": "", - "type": "Side", - "longType": "Side", - "fullType": "vega.Side", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "Size for the order, for example, in a futures market the size equals the number of contracts.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "remaining", - "description": "Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_in_force", - "description": "Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce", - "label": "", - "type": "TimeInForce", - "longType": "Order.TimeInForce", - "fullType": "vega.Order.TimeInForce", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type for the order.", - "label": "", - "type": "Type", - "longType": "Order.Type", - "fullType": "vega.Order.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Timestamp for when the order was created at, in nanoseconds.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Current status of the order.", - "label": "", - "type": "Status", - "longType": "Order.Status", - "fullType": "vega.Order.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expires_at", - "description": "Timestamp in Unix nanoseconds for when the order will expire.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Reference given for the order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reason", - "description": "Futher details for why an order with status `STATUS_REJECTED` was rejected.", - "label": "optional", - "type": "OrderError", - "longType": "OrderError", - "fullType": "vega.OrderError", - "ismap": false, - "isoneof": true, - "oneofdecl": "_reason", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Timestamp in Unix nanoseconds for when the order was last updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "version", - "description": "Version for the order, initial value is version 1 and is incremented after each successful amend.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "batch_id", - "description": "Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pegged_order", - "description": "Pegged order details, used only if the order represents a pegged order.", - "label": "", - "type": "PeggedOrder", - "longType": "PeggedOrder", - "fullType": "vega.PeggedOrder", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_provision_id", - "description": "Set if the order was created as part of a liquidity provision, will be empty if not.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "post_only", - "description": "Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reduce_only", - "description": "Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "iceberg_order", - "description": "Details of an iceberg order", - "label": "optional", - "type": "IcebergOrder", - "longType": "IcebergOrder", - "fullType": "vega.IcebergOrder", - "ismap": false, - "isoneof": true, - "oneofdecl": "_iceberg_order", - "defaultValue": "" - } - ] - }, - { - "name": "OrderCancellationConfirmation", - "longName": "OrderCancellationConfirmation", - "fullName": "vega.OrderCancellationConfirmation", - "description": "Used when cancelling an order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "order", - "description": "Order that was cancelled.", - "label": "", - "type": "Order", - "longType": "Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderConfirmation", - "longName": "OrderConfirmation", - "fullName": "vega.OrderConfirmation", - "description": "Used when confirming an order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "order", - "description": "Order that was confirmed.", - "label": "", - "type": "Order", - "longType": "Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trades", - "description": "0 or more trades that were emitted.", - "label": "repeated", - "type": "Trade", - "longType": "Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "passive_orders_affected", - "description": "0 or more passive orders that were affected.", - "label": "repeated", - "type": "Order", - "longType": "Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Party", - "longName": "Party", - "fullName": "vega.Party", - "description": "Party represents an entity who wishes to trade on or query a Vega network", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID for the party, typically represented by a public key.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "alias", - "description": "Alias given to the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.", - "label": "repeated", - "type": "Metadata", - "longType": "Metadata", - "fullType": "vega.Metadata", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyProfile", - "longName": "PartyProfile", - "fullName": "vega.PartyProfile", - "description": "Holds metadata associated to a party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID associated to the profile.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "alias", - "description": "Alias given to the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.", - "label": "repeated", - "type": "Metadata", - "longType": "Metadata", - "fullType": "vega.Metadata", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PeggedOrder", - "longName": "PeggedOrder", - "fullName": "vega.PeggedOrder", - "description": "Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "reference", - "description": "Price point the order is linked to.", - "label": "", - "type": "PeggedReference", - "longType": "PeggedReference", - "fullType": "vega.PeggedReference", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "offset", - "description": "Offset from the price reference.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PerpetualData", - "longName": "PerpetualData", - "fullName": "vega.PerpetualData", - "description": "Represents market data specific to a perpetual market.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "funding_payment", - "description": "Current funding payment for the in-progress funding period.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "funding_rate", - "description": "Current funding rate for the in-progress funding period.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "internal_twap", - "description": "Time-weighted-average the internal data-points for the in-progress funding period.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "external_twap", - "description": "Time-weighted-average the external data points for the in-progress funding period.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seq_num", - "description": "Funding period sequence number", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start_time", - "description": "Funding period start time", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "index_price", - "description": "The index price used for perps.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_index_price_calc", - "description": "The next time the index price is calculated for perps.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "index_price_type", - "description": "The method used for calculating the index price (perps only).", - "label": "", - "type": "CompositePriceType", - "longType": "CompositePriceType", - "fullType": "vega.CompositePriceType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Position", - "longName": "Position", - "fullName": "vega.Position", - "description": "Represents position data for a party on the specified market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID in which the position is held.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID holding the position.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "open_volume", - "description": "Open volume for the position, value is signed +ve for long and -ve for short.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "realised_pnl", - "description": "Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "unrealised_pnl", - "description": "Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_entry_price", - "description": "Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Timestamp for the latest time the position was updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "loss_socialisation_amount", - "description": "Sum of profit that could not be paid due to loss socialisation.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "position_status", - "description": "Position status, indicating whether the party was distressed and had orders cancelled or was closed out.", - "label": "", - "type": "PositionStatus", - "longType": "PositionStatus", - "fullType": "vega.PositionStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PositionTrade", - "longName": "PositionTrade", - "fullName": "vega.PositionTrade", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "volume", - "description": "Volume for the position trade, value is signed +ve for long and -ve for short.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price for the position trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PostTransferBalance", - "longName": "PostTransferBalance", - "fullName": "vega.PostTransferBalance", - "description": "Represents the balance for an account during a transfer", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "account", - "description": "Account relating to the transfer.", - "label": "", - "type": "AccountDetails", - "longType": "AccountDetails", - "fullType": "vega.AccountDetails", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceLevel", - "longName": "PriceLevel", - "fullName": "vega.PriceLevel", - "description": "Represents a price level from market depth or order book data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price", - "description": "Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "number_of_orders", - "description": "Number of orders at the price level.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "Volume at the price level.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceMonitoringBounds", - "longName": "PriceMonitoringBounds", - "fullName": "vega.PriceMonitoringBounds", - "description": "Represents a list of valid (at the current timestamp) price ranges per associated trigger", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "min_valid_price", - "description": "Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_valid_price", - "description": "Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trigger", - "description": "Price monitoring trigger associated with the bounds.", - "label": "", - "type": "PriceMonitoringTrigger", - "longType": "PriceMonitoringTrigger", - "fullType": "vega.PriceMonitoringTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference_price", - "description": "Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProductData", - "longName": "ProductData", - "fullName": "vega.ProductData", - "description": "Represents market data specific to a particular product type.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "perpetual_data", - "description": "", - "label": "", - "type": "PerpetualData", - "longType": "PerpetualData", - "fullType": "vega.PerpetualData", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - } - ] - }, - { - "name": "Rank", - "longName": "Rank", - "fullName": "vega.Rank", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "start_rank", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "share_ratio", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RankingScore", - "longName": "RankingScore", - "fullName": "vega.RankingScore", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "stake_score", - "description": "Stake based score - no anti-whaling.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "performance_score", - "description": "Performance based score.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "previous_status", - "description": "Status of the validator in the previous epoch.", - "label": "", - "type": "ValidatorNodeStatus", - "longType": "ValidatorNodeStatus", - "fullType": "vega.ValidatorNodeStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the validator in the current epoch.", - "label": "", - "type": "ValidatorNodeStatus", - "longType": "ValidatorNodeStatus", - "fullType": "vega.ValidatorNodeStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "voting_power", - "description": "Tendermint voting power of the validator.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ranking_score", - "description": "Final score.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralProgram", - "longName": "ReferralProgram", - "fullName": "vega.ReferralProgram", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Incremental version of the program. It is incremented after each program\nupdate.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "Unique ID generated from the proposal that created this program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "benefit_tiers", - "description": "Defined benefit tiers ordered by increasing discounts.", - "label": "repeated", - "type": "BenefitTier", - "longType": "BenefitTier", - "fullType": "vega.BenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_of_program_timestamp", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window_length", - "description": "Number of epochs over which the referral set's running volume is evaluated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staking_tiers", - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.", - "label": "repeated", - "type": "StakingTier", - "longType": "StakingTier", - "fullType": "vega.StakingTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Reward", - "longName": "Reward", - "fullName": "vega.Reward", - "description": "Details for a single reward payment", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Asset ID in which the reward is being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to whom the reward is being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "Epoch in which the reward is being paid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount paid as a reward. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "percentage_of_total", - "description": "Percentage of total rewards paid in the epoch.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "received_at", - "description": "Timestamp at which the reward was paid as Unix nano time.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID in which the reward is being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_type", - "description": "Type of reward being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "locked_until_epoch", - "description": "The epoch when the reward is being released.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum_amount", - "description": "Amount paid as a reward, expressed in asset's quantum unit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "game_id", - "description": "ID of the game the reward payment was made for if the payment was made for participation in a game.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_game_id", - "defaultValue": "" - }, - { - "name": "team_id", - "description": "ID of the team the party is a member of, if the party is a member of a participating team,\nand the reward payment was made for participation in a game.\nThis field is currently only populated by the rewards API.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_id", - "defaultValue": "" - } - ] - }, - { - "name": "RewardScore", - "longName": "RewardScore", - "fullName": "vega.RewardScore", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "raw_validator_score", - "description": "Stake based score - with anti-whaling.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "performance_score", - "description": "Performance based score.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "multisig_score", - "description": "Multisig score.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_score", - "description": "Un-normalised score.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "normalised_score", - "description": "Normalised validator score for rewards.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_status", - "description": "Status of the validator for reward.", - "label": "", - "type": "ValidatorNodeStatus", - "longType": "ValidatorNodeStatus", - "fullType": "vega.ValidatorNodeStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardSummary", - "longName": "RewardSummary", - "fullName": "vega.RewardSummary", - "description": "Details for rewards for a single asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Asset ID in which the reward is being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to whom the reward is being paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Total amount of rewards paid in the asset. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RiskFactor", - "longName": "RiskFactor", - "fullName": "vega.RiskFactor", - "description": "Risk factors are used to calculate the current risk associated with orders trading on a given market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "Market ID that relates to this risk factor.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "short", - "description": "Short Risk factor value.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "long", - "description": "Long Risk factor value.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ScalarValue", - "longName": "ScalarValue", - "fullName": "vega.ScalarValue", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "value", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakingTier", - "longName": "StakingTier", - "fullName": "vega.StakingTier", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "minimum_staked_tokens", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referral_reward_multiplier", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StateValueProposal", - "longName": "StateValueProposal", - "fullName": "vega.StateValueProposal", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "state_var_id", - "description": "State variable ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "event_id", - "description": "Event ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "kvb", - "description": "Key value tolerance triplets.", - "label": "repeated", - "type": "KeyValueBundle", - "longType": "KeyValueBundle", - "fullType": "vega.KeyValueBundle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StateVarValue", - "longName": "StateVarValue", - "fullName": "vega.StateVarValue", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "scalar_val", - "description": "", - "label": "", - "type": "ScalarValue", - "longType": "ScalarValue", - "fullType": "vega.ScalarValue", - "ismap": false, - "isoneof": true, - "oneofdecl": "value", - "defaultValue": "" - }, - { - "name": "vector_val", - "description": "", - "label": "", - "type": "VectorValue", - "longType": "VectorValue", - "fullType": "vega.VectorValue", - "ismap": false, - "isoneof": true, - "oneofdecl": "value", - "defaultValue": "" - }, - { - "name": "matrix_val", - "description": "", - "label": "", - "type": "MatrixValue", - "longType": "MatrixValue", - "fullType": "vega.MatrixValue", - "ismap": false, - "isoneof": true, - "oneofdecl": "value", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrder", - "longName": "StopOrder", - "fullName": "vega.StopOrder", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "ID of this stop order\nalso the ID of the associated order if it is ever triggered", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "oco_link_id", - "description": "The ID of the 'other' part of the OCO if 2 stop orders were submitted at once", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_oco_link_id", - "defaultValue": "" - }, - { - "name": "expires_at", - "description": "Optional expiry timestamp.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_expires_at", - "defaultValue": "" - }, - { - "name": "expiry_strategy", - "description": "Strategy to adopt if the expiry time is reached.", - "label": "optional", - "type": "ExpiryStrategy", - "longType": "StopOrder.ExpiryStrategy", - "fullType": "vega.StopOrder.ExpiryStrategy", - "ismap": false, - "isoneof": true, - "oneofdecl": "_expiry_strategy", - "defaultValue": "" - }, - { - "name": "trigger_direction", - "description": "Trigger direction for this stop order.", - "label": "", - "type": "TriggerDirection", - "longType": "StopOrder.TriggerDirection", - "fullType": "vega.StopOrder.TriggerDirection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the stop order.", - "label": "", - "type": "Status", - "longType": "StopOrder.Status", - "fullType": "vega.StopOrder.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Creation time of the stop order.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Last update of this stop order.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_updated_at", - "defaultValue": "" - }, - { - "name": "order_id", - "description": "ID of the order created once the trigger is hit.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "ID of the party that submitted this stop order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "ID of the market the stop order is submitted to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rejection_reason", - "description": "An optional reason for why a stop order was rejected", - "label": "optional", - "type": "RejectionReason", - "longType": "StopOrder.RejectionReason", - "fullType": "vega.StopOrder.RejectionReason", - "ismap": false, - "isoneof": true, - "oneofdecl": "_rejection_reason", - "defaultValue": "" - }, - { - "name": "size_override_setting", - "description": "Size override setting", - "label": "", - "type": "SizeOverrideSetting", - "longType": "StopOrder.SizeOverrideSetting", - "fullType": "vega.StopOrder.SizeOverrideSetting", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size_override_value", - "description": "Size override value", - "label": "optional", - "type": "SizeOverrideValue", - "longType": "StopOrder.SizeOverrideValue", - "fullType": "vega.StopOrder.SizeOverrideValue", - "ismap": false, - "isoneof": true, - "oneofdecl": "_size_override_value", - "defaultValue": "" - }, - { - "name": "price", - "description": "Fixed price at which the order will be submitted.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "trigger", - "defaultValue": "" - }, - { - "name": "trailing_percent_offset", - "description": "Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "trigger", - "defaultValue": "" - } - ] - }, - { - "name": "SizeOverrideValue", - "longName": "StopOrder.SizeOverrideValue", - "fullName": "vega.StopOrder.SizeOverrideValue", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "percentage", - "description": "Scaling percentage of the current position’s size", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Trade", - "longName": "Trade", - "fullName": "vega.Trade", - "description": "A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID for the trade.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID on which the trade occurred.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "Size filled for the trade.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buyer", - "description": "Unique party ID for the buyer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seller", - "description": "Unique party ID for the seller.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "aggressor", - "description": "Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.", - "label": "", - "type": "Side", - "longType": "Side", - "fullType": "vega.Side", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buy_order", - "description": "Identifier of the order from the buy side.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sell_order", - "description": "Identifier of the order from the sell side.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds for when the trade occurred.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type for the trade.", - "label": "", - "type": "Type", - "longType": "Trade.Type", - "fullType": "vega.Trade.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buyer_fee", - "description": "Fee amount charged to the buyer party for the trade.", - "label": "", - "type": "Fee", - "longType": "Fee", - "fullType": "vega.Fee", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seller_fee", - "description": "Fee amount charged to the seller party for the trade.", - "label": "", - "type": "Fee", - "longType": "Fee", - "fullType": "vega.Fee", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buyer_auction_batch", - "description": "Auction batch number that the buy side order was placed in.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seller_auction_batch", - "description": "Auction batch number that the sell side order was placed in.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_price", - "description": "Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TradeSet", - "longName": "TradeSet", - "fullName": "vega.TradeSet", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "trades", - "description": "Set of one or more trades.", - "label": "repeated", - "type": "Trade", - "longType": "Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Transfer", - "longName": "Transfer", - "fullName": "vega.Transfer", - "description": "Represents a financial transfer within Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "owner", - "description": "Party ID for the owner of the transfer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Financial amount of an asset to transfer.", - "label": "", - "type": "FinancialAmount", - "longType": "FinancialAmount", - "fullType": "vega.FinancialAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of transfer, gives the reason for the transfer.", - "label": "", - "type": "TransferType", - "longType": "TransferType", - "fullType": "vega.TransferType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_amount", - "description": "Minimum amount. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID the transfer is for", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TransferRequest", - "longName": "TransferRequest", - "fullName": "vega.TransferRequest", - "description": "Represents a request to transfer from one set of accounts to another", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_account", - "description": "One or more accounts to transfer from.", - "label": "repeated", - "type": "Account", - "longType": "Account", - "fullType": "vega.Account", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account", - "description": "One or more accounts to transfer to.", - "label": "repeated", - "type": "Account", - "longType": "Account", - "fullType": "vega.Account", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to transfer for the asset. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_amount", - "description": "Minimum amount that needs to be transferred for the transfer request. If this minimum isn't reached, it will error.\nThis field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset ID of the asset being transferred.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of the request for transfer.", - "label": "", - "type": "TransferType", - "longType": "TransferType", - "fullType": "vega.TransferType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VectorValue", - "longName": "VectorValue", - "fullName": "vega.VectorValue", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "value", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VestingBenefitTier", - "longName": "VestingBenefitTier", - "fullName": "vega.VestingBenefitTier", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "minimum_quantum_balance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_multiplier", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VestingBenefitTiers", - "longName": "VestingBenefitTiers", - "fullName": "vega.VestingBenefitTiers", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tiers", - "description": "", - "label": "repeated", - "type": "VestingBenefitTier", - "longType": "VestingBenefitTier", - "fullType": "vega.VestingBenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeBenefitTier", - "longName": "VolumeBenefitTier", - "fullName": "vega.VolumeBenefitTier", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "minimum_running_notional_taker_volume", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume_discount_factor", - "description": "Proportion of the taker fees to be discounted.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountProgram", - "longName": "VolumeDiscountProgram", - "fullName": "vega.VolumeDiscountProgram", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Incremental version of the program. It is incremented after each program\nupdate.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "Unique ID generated from the proposal that created this program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "benefit_tiers", - "description": "Defined benefit tiers ordered by increasing discounts.", - "label": "repeated", - "type": "VolumeBenefitTier", - "longType": "VolumeBenefitTier", - "fullType": "vega.VolumeBenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_of_program_timestamp", - "description": "Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window_length", - "description": "Number of epochs over which a referral set's running volume is evaluated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "WithdrawExt", - "longName": "WithdrawExt", - "fullName": "vega.WithdrawExt", - "description": "Withdrawal external details", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "erc20", - "description": "ERC20 withdrawal details.", - "label": "", - "type": "Erc20WithdrawExt", - "longType": "Erc20WithdrawExt", - "fullType": "vega.Erc20WithdrawExt", - "ismap": false, - "isoneof": true, - "oneofdecl": "ext", - "defaultValue": "" - } - ] - }, - { - "name": "Withdrawal", - "longName": "Withdrawal", - "fullName": "vega.Withdrawal", - "description": "Withdrawal from the Vega network", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID for the withdrawal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Unique party ID of the user initiating the withdrawal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset to withdraw funds from.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the withdrawal.", - "label": "", - "type": "Status", - "longType": "Withdrawal.Status", - "fullType": "vega.Withdrawal.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ref", - "description": "Reference which is used by the foreign chain\nto refer to this withdrawal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "Hash of the foreign chain for this transaction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_timestamp", - "description": "Timestamp for when the network started to process this withdrawal.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "withdrawn_timestamp", - "description": "Timestamp for when the withdrawal was finalised by the network.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ext", - "description": "Foreign chain specifics.", - "label": "", - "type": "WithdrawExt", - "longType": "WithdrawExt", - "fullType": "vega.WithdrawExt", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/commands/v1/validator_commands.proto", - "description": "", - "package": "vega.commands.v1", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "NodeSignatureKind", - "longName": "NodeSignatureKind", - "fullName": "vega.commands.v1.NodeSignatureKind", - "description": "Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc", - "values": [ - { - "name": "NODE_SIGNATURE_KIND_UNSPECIFIED", - "number": "0", - "description": "Represents an unspecified or missing value from the input." - }, - { - "name": "NODE_SIGNATURE_KIND_ASSET_NEW", - "number": "1", - "description": "Represents a signature for a new asset allow-listing." - }, - { - "name": "NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL", - "number": "2", - "description": "Represents a signature for an asset withdrawal." - }, - { - "name": "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED", - "number": "3", - "description": "Represents a signature for a new signer added to the erc20 multisig contract." - }, - { - "name": "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED", - "number": "4", - "description": "Represents a signature for a signer removed from the erc20 multisig contract." - }, - { - "name": "NODE_SIGNATURE_KIND_ASSET_UPDATE", - "number": "5", - "description": "Represents a signature for an asset update allow-listing." - } - ] - }, - { - "name": "Type", - "longName": "NodeVote.Type", - "fullName": "vega.commands.v1.NodeVote.Type", - "description": "", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "Represents an unspecified or missing value from the input" - }, - { - "name": "TYPE_STAKE_DEPOSITED", - "number": "1", - "description": "Node vote for a new stake deposit" - }, - { - "name": "TYPE_STAKE_REMOVED", - "number": "2", - "description": "Node vote for a new stake removed event" - }, - { - "name": "TYPE_FUNDS_DEPOSITED", - "number": "3", - "description": "Node vote for a new collateral deposit" - }, - { - "name": "TYPE_SIGNER_ADDED", - "number": "4", - "description": "Node vote for a new signer added to the erc20 bridge" - }, - { - "name": "TYPE_SIGNER_REMOVED", - "number": "5", - "description": "Node vote for a signer removed from the erc20 bridge" - }, - { - "name": "TYPE_BRIDGE_STOPPED", - "number": "6", - "description": "Node vote for a bridge stopped event" - }, - { - "name": "TYPE_BRIDGE_RESUMED", - "number": "7", - "description": "Node vote for a bridge resumed event" - }, - { - "name": "TYPE_ASSET_LISTED", - "number": "8", - "description": "Node vote for a newly listed asset" - }, - { - "name": "TYPE_LIMITS_UPDATED", - "number": "9", - "description": "Node vote for an asset limits update" - }, - { - "name": "TYPE_STAKE_TOTAL_SUPPLY", - "number": "10", - "description": "Node vote to share the total supply of the staking token" - }, - { - "name": "TYPE_SIGNER_THRESHOLD_SET", - "number": "11", - "description": "Node vote to update the threshold of the signer set for the multisig contract" - }, - { - "name": "TYPE_GOVERNANCE_VALIDATE_ASSET", - "number": "12", - "description": "Node vote to validate a new assert governance proposal" - }, - { - "name": "TYPE_ETHEREUM_CONTRACT_CALL_RESULT", - "number": "13", - "description": "Node vote for an Ethereum contract call result" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "AnnounceNode", - "longName": "AnnounceNode", - "fullName": "vega.commands.v1.AnnounceNode", - "description": "A command that allows a new node operator to announce themselves to the network as a new validator.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vega_pub_key", - "description": "Vega public key of the node being announced.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_address", - "description": "Ethereum public key of the node being announced.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_pub_key", - "description": "Public key for the blockchain, currently the node's CometBFT key.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "info_url", - "description": "URL to the node operators homepage allowing stake holders to make an informed decision when delegating.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "country", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "Node ID of the validator, which is the node's public master key.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Human-readable name of the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "URL to the node operator's avatar.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_pub_key_index", - "description": "Vega public key derivation index.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_epoch", - "description": "Epoch from which the node is expected to be ready to validate blocks.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_signature", - "description": "Signature from the node made using the ethereum wallet.", - "label": "", - "type": "Signature", - "longType": "Signature", - "fullType": "vega.commands.v1.Signature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_signature", - "description": "Signature from the node made using the Vega wallet.", - "label": "", - "type": "Signature", - "longType": "Signature", - "fullType": "vega.commands.v1.Signature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter_address", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ChainEvent", - "longName": "ChainEvent", - "fullName": "vega.commands.v1.ChainEvent", - "description": "A validator command sent automatically that provides information of events that have happened on foreign chains.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "tx_id", - "description": "ID of the transaction on the foreign chain that caused the event.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Arbitrary one-time integer used to prevent replay attacks.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "builtin", - "description": "Built-in asset event.", - "label": "", - "type": "BuiltinAssetEvent", - "longType": "vega.BuiltinAssetEvent", - "fullType": "vega.BuiltinAssetEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "erc20", - "description": "Ethereum ERC20 event.", - "label": "", - "type": "ERC20Event", - "longType": "vega.ERC20Event", - "fullType": "vega.ERC20Event", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "staking_event", - "description": "Ethereum Staking event.", - "label": "", - "type": "StakingEvent", - "longType": "vega.StakingEvent", - "fullType": "vega.StakingEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "erc20_multisig", - "description": "Ethereum ERC20 multisig event.", - "label": "", - "type": "ERC20MultiSigEvent", - "longType": "vega.ERC20MultiSigEvent", - "fullType": "vega.ERC20MultiSigEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "contract_call", - "description": "Ethereum contract call event.", - "label": "", - "type": "EthContractCallEvent", - "longType": "vega.EthContractCallEvent", - "fullType": "vega.EthContractCallEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumKeyRotateSubmission", - "longName": "EthereumKeyRotateSubmission", - "fullName": "vega.commands.v1.EthereumKeyRotateSubmission", - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "target_block", - "description": "Block height at which the key rotation will take effect.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_address", - "description": "Ethereum address that is being rotated to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_address", - "description": "Ethereum address of the node's current Ethereum keys.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter_address", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_signature", - "description": "Signature signed by the new Ethereum key that can be verified to prove ownership.", - "label": "", - "type": "Signature", - "longType": "Signature", - "fullType": "vega.commands.v1.Signature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "KeyRotateSubmission", - "longName": "KeyRotateSubmission", - "fullName": "vega.commands.v1.KeyRotateSubmission", - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "new_pub_key_index", - "description": "New Vega public key derivation index.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "target_block", - "description": "Block height at which the key rotation will take effect.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_pub_key", - "description": "Vega public key that would be rotated to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_pub_key_hash", - "description": "Hash of the node's current Vega public key.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeSignature", - "longName": "NodeSignature", - "fullName": "vega.commands.v1.NodeSignature", - "description": "A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "ID of the resource that the signature relates to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sig", - "description": "Signature generated by the node.", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "kind", - "description": "Kind of resource being signed.", - "label": "", - "type": "NodeSignatureKind", - "longType": "NodeSignatureKind", - "fullType": "vega.commands.v1.NodeSignatureKind", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeVote", - "longName": "NodeVote", - "fullName": "vega.commands.v1.NodeVote", - "description": "A validator command which is sent automatically by a node when it has verified a resource external to the network.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "reference", - "description": "Reference identifying the resource that has been verified.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of external event that has been verified.", - "label": "", - "type": "Type", - "longType": "NodeVote.Type", - "fullType": "vega.commands.v1.NodeVote.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProtocolUpgradeProposal", - "longName": "ProtocolUpgradeProposal", - "fullName": "vega.commands.v1.ProtocolUpgradeProposal", - "description": "A validator command sent manually by a node operator to propose a protocol upgrade.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "upgrade_block_height", - "description": "Block height at which to perform the upgrade.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_release_tag", - "description": "Release tag for the Vega binary.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StateVariableProposal", - "longName": "StateVariableProposal", - "fullName": "vega.commands.v1.StateVariableProposal", - "description": "A validator command sent automatically to reach consensus on floating point values.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal", - "description": "Details of the state variable being proposed.", - "label": "", - "type": "StateValueProposal", - "longType": "vega.StateValueProposal", - "fullType": "vega.StateValueProposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ValidatorHeartbeat", - "longName": "ValidatorHeartbeat", - "fullName": "vega.commands.v1.ValidatorHeartbeat", - "description": "A validator command which is sent automatically at regular intervals by any validator participating in the network.\nIt is used to allow the network to know whether a validator is active, or if they have shut down.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID of the validator emitting the heartbeat.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_signature", - "description": "Signature from the validator made using their Ethereum wallet.", - "label": "", - "type": "Signature", - "longType": "Signature", - "fullType": "vega.commands.v1.Signature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_signature", - "description": "Signature from the validator made using their Vega wallet.", - "label": "", - "type": "Signature", - "longType": "Signature", - "fullType": "vega.commands.v1.Signature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "message", - "description": "Message which has been signed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/assets.proto", - "description": "", - "package": "vega", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "Status", - "longName": "Asset.Status", - "fullName": "vega.Asset.Status", - "description": "", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "STATUS_PROPOSED", - "number": "1", - "description": "Asset is proposed and under vote" - }, - { - "name": "STATUS_REJECTED", - "number": "2", - "description": "Asset has been rejected from governance" - }, - { - "name": "STATUS_PENDING_LISTING", - "number": "3", - "description": "Asset is pending listing from the bridge" - }, - { - "name": "STATUS_ENABLED", - "number": "4", - "description": "Asset is fully usable in the network" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "Asset", - "longName": "Asset", - "fullName": "vega.Asset", - "description": "Vega representation of an external asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Internal identifier of the asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "details", - "description": "Definition of the external source for this asset.", - "label": "", - "type": "AssetDetails", - "longType": "AssetDetails", - "fullType": "vega.AssetDetails", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the asset.", - "label": "", - "type": "Status", - "longType": "Asset.Status", - "fullType": "vega.Asset.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AssetDetails", - "longName": "AssetDetails", - "fullName": "vega.AssetDetails", - "description": "Vega representation of an external asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "name", - "description": "Name of the asset (e.g: Great British Pound).", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "symbol", - "description": "Symbol of the asset (e.g: GBP).", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "decimals", - "description": "Number of decimal / precision handled by this asset.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum", - "description": "Minimum economically meaningful amount in the asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "builtin_asset", - "description": "Vega built-in asset.", - "label": "", - "type": "BuiltinAsset", - "longType": "BuiltinAsset", - "fullType": "vega.BuiltinAsset", - "ismap": false, - "isoneof": true, - "oneofdecl": "source", - "defaultValue": "" - }, - { - "name": "erc20", - "description": "Ethereum ERC20 asset.", - "label": "", - "type": "ERC20", - "longType": "ERC20", - "fullType": "vega.ERC20", - "ismap": false, - "isoneof": true, - "oneofdecl": "source", - "defaultValue": "" - } - ] - }, - { - "name": "AssetDetailsUpdate", - "longName": "AssetDetailsUpdate", - "fullName": "vega.AssetDetailsUpdate", - "description": "Changes to apply on an existing asset.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "quantum", - "description": "Minimum economically meaningful amount in the asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "erc20", - "description": "Ethereum ERC20 asset update.", - "label": "", - "type": "ERC20Update", - "longType": "ERC20Update", - "fullType": "vega.ERC20Update", - "ismap": false, - "isoneof": true, - "oneofdecl": "source", - "defaultValue": "" - } - ] - }, - { - "name": "BuiltinAsset", - "longName": "BuiltinAsset", - "fullName": "vega.BuiltinAsset", - "description": "Vega internal asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "max_faucet_amount_mint", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20", - "longName": "ERC20", - "fullName": "vega.ERC20", - "description": "ERC20 token based asset, living on the ethereum network", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "contract_address", - "description": "Address of the contract for the token, on the ethereum network.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lifetime_limit", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "withdraw_threshold", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20Update", - "longName": "ERC20Update", - "fullName": "vega.ERC20Update", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "lifetime_limit", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "withdraw_threshold", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/governance.proto", - "description": "", - "package": "vega", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "Type", - "longName": "GovernanceData.Type", - "fullName": "vega.GovernanceData.Type", - "description": "Proposal type", - "values": [ - { - "name": "TYPE_SINGLE_OR_UNSPECIFIED", - "number": "0", - "description": "Single proposal only. In case it has not been specified, for example in older proposals, then this is the default." - }, - { - "name": "TYPE_BATCH", - "number": "1", - "description": "Proposal contains a batch of proposals or a proposal that should be treated as part of a batch." - } - ] - }, - { - "name": "GovernanceTransferType", - "longName": "GovernanceTransferType", - "fullName": "vega.GovernanceTransferType", - "description": "", - "values": [ - { - "name": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "number": "1", - "description": "" - }, - { - "name": "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT", - "number": "2", - "description": "" - } - ] - }, - { - "name": "MarketStateUpdateType", - "longName": "MarketStateUpdateType", - "fullName": "vega.MarketStateUpdateType", - "description": "", - "values": [ - { - "name": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "number": "1", - "description": "Request to terminate a market via governance" - }, - { - "name": "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "number": "2", - "description": "Request to suspend a market via governance" - }, - { - "name": "MARKET_STATE_UPDATE_TYPE_RESUME", - "number": "3", - "description": "Request to resume a market via governance" - } - ] - }, - { - "name": "State", - "longName": "Proposal.State", - "fullName": "vega.Proposal.State", - "description": "Proposal state transition:\nOpen -\u003e\n - Passed -\u003e Enacted.\n - Passed -\u003e Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state", - "values": [ - { - "name": "STATE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "STATE_FAILED", - "number": "1", - "description": "Proposal enactment has failed - even though proposal has passed, its execution could not be performed" - }, - { - "name": "STATE_OPEN", - "number": "2", - "description": "Proposal is open for voting" - }, - { - "name": "STATE_PASSED", - "number": "3", - "description": "Proposal has gained enough support to be executed" - }, - { - "name": "STATE_REJECTED", - "number": "4", - "description": "Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements." - }, - { - "name": "STATE_DECLINED", - "number": "5", - "description": "Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level." - }, - { - "name": "STATE_ENACTED", - "number": "6", - "description": "Proposal enacted." - }, - { - "name": "STATE_WAITING_FOR_NODE_VOTE", - "number": "7", - "description": "Waiting for node validation of the proposal" - } - ] - }, - { - "name": "ProposalError", - "longName": "ProposalError", - "fullName": "vega.ProposalError", - "description": "List of possible errors that can cause a proposal to be in state rejected or failed", - "values": [ - { - "name": "PROPOSAL_ERROR_UNSPECIFIED", - "number": "0", - "description": "Default value" - }, - { - "name": "PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON", - "number": "1", - "description": "Specified close time is too early based on network parameters" - }, - { - "name": "PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE", - "number": "2", - "description": "Specified close time is too late based on network parameters" - }, - { - "name": "PROPOSAL_ERROR_ENACT_TIME_TOO_SOON", - "number": "3", - "description": "Specified enactment time is too early based on network parameters" - }, - { - "name": "PROPOSAL_ERROR_ENACT_TIME_TOO_LATE", - "number": "4", - "description": "Specified enactment time is too late based on network parameters" - }, - { - "name": "PROPOSAL_ERROR_INSUFFICIENT_TOKENS", - "number": "5", - "description": "Proposer for this proposal has insufficient tokens" - }, - { - "name": "PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY", - "number": "6", - "description": "Instrument quote name and base name were the same" - }, - { - "name": "PROPOSAL_ERROR_NO_PRODUCT", - "number": "7", - "description": "Proposal has no product" - }, - { - "name": "PROPOSAL_ERROR_UNSUPPORTED_PRODUCT", - "number": "8", - "description": "Specified product is not supported" - }, - { - "name": "PROPOSAL_ERROR_NO_TRADING_MODE", - "number": "11", - "description": "Proposal has no trading mode" - }, - { - "name": "PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE", - "number": "12", - "description": "Proposal has an unsupported trading mode" - }, - { - "name": "PROPOSAL_ERROR_NODE_VALIDATION_FAILED", - "number": "13", - "description": "Proposal failed node validation" - }, - { - "name": "PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD", - "number": "14", - "description": "Field is missing in a builtin asset source" - }, - { - "name": "PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS", - "number": "15", - "description": "Contract address is missing in the ERC20 asset source" - }, - { - "name": "PROPOSAL_ERROR_INVALID_ASSET", - "number": "16", - "description": "Asset ID is invalid or does not exist on the Vega network" - }, - { - "name": "PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS", - "number": "17", - "description": "Proposal terms timestamps are not compatible (Validation \u003c Closing \u003c Enactment)" - }, - { - "name": "PROPOSAL_ERROR_NO_RISK_PARAMETERS", - "number": "18", - "description": "No risk parameters were specified" - }, - { - "name": "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY", - "number": "19", - "description": "Invalid key in update network parameter proposal" - }, - { - "name": "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE", - "number": "20", - "description": "Invalid value in update network parameter proposal" - }, - { - "name": "PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED", - "number": "21", - "description": "Validation failed for network parameter proposal" - }, - { - "name": "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL", - "number": "22", - "description": "Opening auction duration is less than the network minimum opening auction time" - }, - { - "name": "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE", - "number": "23", - "description": "Opening auction duration is more than the network minimum opening auction time" - }, - { - "name": "PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET", - "number": "25", - "description": "Market proposal market could not be instantiated in execution" - }, - { - "name": "PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT", - "number": "26", - "description": "Market proposal market contained invalid product definition" - }, - { - "name": "PROPOSAL_ERROR_INVALID_RISK_PARAMETER", - "number": "30", - "description": "Market proposal has invalid risk parameter" - }, - { - "name": "PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED", - "number": "31", - "description": "Proposal was declined because vote didn't reach the majority threshold required" - }, - { - "name": "PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED", - "number": "32", - "description": "Proposal declined because the participation threshold was not reached" - }, - { - "name": "PROPOSAL_ERROR_INVALID_ASSET_DETAILS", - "number": "33", - "description": "Asset proposal has invalid asset details" - }, - { - "name": "PROPOSAL_ERROR_UNKNOWN_TYPE", - "number": "34", - "description": "Proposal is an unknown type" - }, - { - "name": "PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE", - "number": "35", - "description": "Proposal has an unknown risk parameter type" - }, - { - "name": "PROPOSAL_ERROR_INVALID_FREEFORM", - "number": "36", - "description": "Validation failed for freeform proposal" - }, - { - "name": "PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE", - "number": "37", - "description": "Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal" - }, - { - "name": "PROPOSAL_ERROR_INVALID_MARKET", - "number": "38", - "description": "Market targeted by the proposal does not exist or is not eligible for modification" - }, - { - "name": "PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES", - "number": "39", - "description": "Market proposal decimal place is higher than the market settlement asset decimal places" - }, - { - "name": "PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS", - "number": "40", - "description": "Market proposal contains too many price monitoring triggers" - }, - { - "name": "PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE", - "number": "41", - "description": "Market proposal contains too many price monitoring triggers" - }, - { - "name": "PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE", - "number": "42", - "description": "LP price range must be larger than 0" - }, - { - "name": "PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE", - "number": "43", - "description": "LP price range must not be larger than 100" - }, - { - "name": "PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "number": "44", - "description": "Linear slippage factor is out of range, either negative or too large" - }, - { - "name": "PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "number": "45", - "description": "Quadratic slippage factor is out of range, either negative or too large" - }, - { - "name": "PROPOSAL_ERROR_INVALID_SPOT", - "number": "46", - "description": "Validation failed for spot proposal" - }, - { - "name": "PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED", - "number": "47", - "description": "Spot trading not enabled" - }, - { - "name": "PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET", - "number": "48", - "description": "Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed." - }, - { - "name": "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED", - "number": "49", - "description": "Governance transfer proposal is invalid" - }, - { - "name": "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID", - "number": "50", - "description": "Governance transfer proposal failed" - }, - { - "name": "PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID", - "number": "51", - "description": "Proposal for cancelling transfer is invalid, check proposal ID" - }, - { - "name": "PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE", - "number": "52", - "description": "Proposal for updating market state is invalid" - }, - { - "name": "PROPOSAL_ERROR_INVALID_SLA_PARAMS", - "number": "53", - "description": "Liquidity provision SLA parameters are invalid" - }, - { - "name": "PROPOSAL_ERROR_MISSING_SLA_PARAMS", - "number": "54", - "description": "Mandatory liquidity provision SLA parameters are missing" - }, - { - "name": "PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT", - "number": "55", - "description": "Perpetual market proposal contained invalid product definition" - }, - { - "name": "PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM", - "number": "56", - "description": "Referral program proposal is invalid" - }, - { - "name": "PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM", - "number": "57", - "description": "Volume discount program proposal is invalid" - }, - { - "name": "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED", - "number": "58", - "description": "One or more proposals in a batch has been rejected" - }, - { - "name": "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED", - "number": "59", - "description": "One or more proposals in a batch has been declined" - } - ] - }, - { - "name": "Value", - "longName": "Vote.Value", - "fullName": "vega.Vote.Value", - "description": "Vote value", - "values": [ - { - "name": "VALUE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "VALUE_NO", - "number": "1", - "description": "Vote against the proposal" - }, - { - "name": "VALUE_YES", - "number": "2", - "description": "Vote in favour of the proposal" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "BatchProposalTerms", - "longName": "BatchProposalTerms", - "fullName": "vega.BatchProposalTerms", - "description": "Terms for a batch governance proposal on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "closing_timestamp", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposal_params", - "description": "Specific parameters defining the proposal's characteristics used for validation.", - "label": "", - "type": "ProposalParameters", - "longType": "ProposalParameters", - "fullType": "vega.ProposalParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "changes", - "description": "List of individual changes included in the batch proposal.", - "label": "repeated", - "type": "BatchProposalTermsChange", - "longType": "BatchProposalTermsChange", - "fullType": "vega.BatchProposalTermsChange", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BatchProposalTermsChange", - "longName": "BatchProposalTermsChange", - "fullName": "vega.BatchProposalTermsChange", - "description": "Terms change for a batch governance proposal", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "enactment_timestamp", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "update_market", - "description": "Proposal change for modifying an existing futures market.", - "label": "", - "type": "UpdateMarket", - "longType": "UpdateMarket", - "fullType": "vega.UpdateMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_market", - "description": "Proposal change for creating new futures market.", - "label": "", - "type": "NewMarket", - "longType": "NewMarket", - "fullType": "vega.NewMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_network_parameter", - "description": "Proposal change for updating Vega network parameters.", - "label": "", - "type": "UpdateNetworkParameter", - "longType": "UpdateNetworkParameter", - "fullType": "vega.UpdateNetworkParameter", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_freeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.", - "label": "", - "type": "NewFreeform", - "longType": "NewFreeform", - "fullType": "vega.NewFreeform", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_asset", - "description": "Proposal change for updating an asset.", - "label": "", - "type": "UpdateAsset", - "longType": "UpdateAsset", - "fullType": "vega.UpdateAsset", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_spot_market", - "description": "Proposal change for creating new spot market.", - "label": "", - "type": "NewSpotMarket", - "longType": "NewSpotMarket", - "fullType": "vega.NewSpotMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_spot_market", - "description": "Proposal change for modifying an existing spot market.", - "label": "", - "type": "UpdateSpotMarket", - "longType": "UpdateSpotMarket", - "fullType": "vega.UpdateSpotMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_transfer", - "description": "Proposal change for a governance initiated transfer.", - "label": "", - "type": "NewTransfer", - "longType": "NewTransfer", - "fullType": "vega.NewTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "cancel_transfer", - "description": "Proposal change to cancel a governance initiated transfe.", - "label": "", - "type": "CancelTransfer", - "longType": "CancelTransfer", - "fullType": "vega.CancelTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_market_state", - "description": "Proposal change for updating the state of a market.", - "label": "", - "type": "UpdateMarketState", - "longType": "UpdateMarketState", - "fullType": "vega.UpdateMarketState", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_referral_program", - "description": "Proposal change for updating the referral program.", - "label": "", - "type": "UpdateReferralProgram", - "longType": "UpdateReferralProgram", - "fullType": "vega.UpdateReferralProgram", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_volume_discount_program", - "description": "Proposal change for updating the volume discount program.", - "label": "", - "type": "UpdateVolumeDiscountProgram", - "longType": "UpdateVolumeDiscountProgram", - "fullType": "vega.UpdateVolumeDiscountProgram", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - } - ] - }, - { - "name": "CancelTransfer", - "longName": "CancelTransfer", - "fullName": "vega.CancelTransfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration for cancellation of a governance-initiated transfer", - "label": "", - "type": "CancelTransferConfiguration", - "longType": "CancelTransferConfiguration", - "fullType": "vega.CancelTransferConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CancelTransferConfiguration", - "longName": "CancelTransferConfiguration", - "fullName": "vega.CancelTransferConfiguration", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfer_id", - "description": "ID of the governance transfer proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FutureProduct", - "longName": "FutureProduct", - "fullName": "vega.FutureProduct", - "description": "Future product configuration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "settlement_asset", - "description": "Asset ID for the product's settlement asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quote_name", - "description": "Product quote name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_data", - "description": "Data source spec describing the data source for settlement.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_trading_termination", - "description": "The external data source spec describing the data source of trading termination.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_binding", - "description": "Binding between the data source spec and the settlement data.", - "label": "", - "type": "DataSourceSpecToFutureBinding", - "longType": "DataSourceSpecToFutureBinding", - "fullType": "vega.DataSourceSpecToFutureBinding", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceData", - "longName": "GovernanceData", - "fullName": "vega.GovernanceData", - "description": "Governance data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal", - "description": "Governance proposal that is being voted on.", - "label": "", - "type": "Proposal", - "longType": "Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "yes", - "description": "All YES votes in favour of the proposal above.", - "label": "repeated", - "type": "Vote", - "longType": "Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "no", - "description": "All NO votes against the proposal above.", - "label": "repeated", - "type": "Vote", - "longType": "Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "yes_party", - "description": "All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.", - "label": "repeated", - "type": "YesPartyEntry", - "longType": "GovernanceData.YesPartyEntry", - "fullType": "vega.GovernanceData.YesPartyEntry", - "ismap": true, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "no_party", - "description": "All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.", - "label": "repeated", - "type": "NoPartyEntry", - "longType": "GovernanceData.NoPartyEntry", - "fullType": "vega.GovernanceData.NoPartyEntry", - "ismap": true, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposal_type", - "description": "Type of proposal this data is for.", - "label": "", - "type": "Type", - "longType": "GovernanceData.Type", - "fullType": "vega.GovernanceData.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposals", - "description": "If proposal type is batch, proposals will contain all the proposals that are make up the batch.", - "label": "repeated", - "type": "Proposal", - "longType": "Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NoPartyEntry", - "longName": "GovernanceData.NoPartyEntry", - "fullName": "vega.GovernanceData.NoPartyEntry", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "", - "label": "", - "type": "Vote", - "longType": "Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "YesPartyEntry", - "longName": "GovernanceData.YesPartyEntry", - "fullName": "vega.GovernanceData.YesPartyEntry", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "", - "label": "", - "type": "Vote", - "longType": "Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "InstrumentConfiguration", - "longName": "InstrumentConfiguration", - "fullName": "vega.InstrumentConfiguration", - "description": "Instrument configuration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "name", - "description": "Instrument name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "code", - "description": "Instrument code, human-readable shortcode used to describe the instrument.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "future", - "description": "Future.", - "label": "", - "type": "FutureProduct", - "longType": "FutureProduct", - "fullType": "vega.FutureProduct", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - }, - { - "name": "spot", - "description": "Spot.", - "label": "", - "type": "SpotProduct", - "longType": "SpotProduct", - "fullType": "vega.SpotProduct", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - }, - { - "name": "perpetual", - "description": "Perpetual.", - "label": "", - "type": "PerpetualProduct", - "longType": "PerpetualProduct", - "fullType": "vega.PerpetualProduct", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - } - ] - }, - { - "name": "NewAsset", - "longName": "NewAsset", - "fullName": "vega.NewAsset", - "description": "New asset on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration of the new asset.", - "label": "", - "type": "AssetDetails", - "longType": "AssetDetails", - "fullType": "vega.AssetDetails", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NewFreeform", - "longName": "NewFreeform", - "fullName": "vega.NewFreeform", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed.", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "NewMarket", - "longName": "NewMarket", - "fullName": "vega.NewMarket", - "description": "New market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration of the new market.", - "label": "", - "type": "NewMarketConfiguration", - "longType": "NewMarketConfiguration", - "fullType": "vega.NewMarketConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NewMarketConfiguration", - "longName": "NewMarketConfiguration", - "fullName": "vega.NewMarketConfiguration", - "description": "Configuration for a new futures market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "instrument", - "description": "New futures market instrument configuration.", - "label": "", - "type": "InstrumentConfiguration", - "longType": "InstrumentConfiguration", - "fullType": "vega.InstrumentConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "decimal_places", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "Optional new futures market metadata, tags.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitoring_parameters", - "description": "Price monitoring parameters.", - "label": "", - "type": "PriceMonitoringParameters", - "longType": "PriceMonitoringParameters", - "fullType": "vega.PriceMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_monitoring_parameters", - "description": "Liquidity monitoring parameters.", - "label": "", - "type": "LiquidityMonitoringParameters", - "longType": "LiquidityMonitoringParameters", - "fullType": "vega.LiquidityMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "simple", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected.", - "label": "", - "type": "SimpleModelParams", - "longType": "SimpleModelParams", - "fullType": "vega.SimpleModelParams", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "log_normal", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.", - "label": "", - "type": "LogNormalRiskModel", - "longType": "LogNormalRiskModel", - "fullType": "vega.LogNormalRiskModel", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "position_decimal_places", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lp_price_range", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_lp_price_range", - "defaultValue": "" - }, - { - "name": "linear_slippage_factor", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quadratic_slippage_factor", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "", - "options": { - "deprecated": true - } - }, - { - "name": "successor", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set.", - "label": "optional", - "type": "SuccessorConfiguration", - "longType": "SuccessorConfiguration", - "fullType": "vega.SuccessorConfiguration", - "ismap": false, - "isoneof": true, - "oneofdecl": "_successor", - "defaultValue": "" - }, - { - "name": "liquidity_sla_parameters", - "description": "Liquidity SLA parameters", - "label": "", - "type": "LiquiditySLAParameters", - "longType": "LiquiditySLAParameters", - "fullType": "vega.LiquiditySLAParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee_settings", - "description": "Specifies how the liquidity fee for the market will be calculated.", - "label": "", - "type": "LiquidityFeeSettings", - "longType": "LiquidityFeeSettings", - "fullType": "vega.LiquidityFeeSettings", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidation_strategy", - "description": "Liquidation strategy for this market.", - "label": "", - "type": "LiquidationStrategy", - "longType": "LiquidationStrategy", - "fullType": "vega.LiquidationStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mark_price_configuration", - "description": "Mark price configuration.", - "label": "", - "type": "CompositePriceConfiguration", - "longType": "CompositePriceConfiguration", - "fullType": "vega.CompositePriceConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NewSpotMarket", - "longName": "NewSpotMarket", - "fullName": "vega.NewSpotMarket", - "description": "New spot market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration of the new spot market.", - "label": "", - "type": "NewSpotMarketConfiguration", - "longType": "NewSpotMarketConfiguration", - "fullType": "vega.NewSpotMarketConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NewSpotMarketConfiguration", - "longName": "NewSpotMarketConfiguration", - "fullName": "vega.NewSpotMarketConfiguration", - "description": "Configuration for a new spot market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "instrument", - "description": "New spot market instrument configuration.", - "label": "", - "type": "InstrumentConfiguration", - "longType": "InstrumentConfiguration", - "fullType": "vega.InstrumentConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "decimal_places", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "Optional new spot market metadata, tags.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitoring_parameters", - "description": "Price monitoring parameters.", - "label": "", - "type": "PriceMonitoringParameters", - "longType": "PriceMonitoringParameters", - "fullType": "vega.PriceMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "target_stake_parameters", - "description": "Specifies parameters related to target stake calculation.", - "label": "", - "type": "TargetStakeParameters", - "longType": "TargetStakeParameters", - "fullType": "vega.TargetStakeParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "simple", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected.", - "label": "", - "type": "SimpleModelParams", - "longType": "SimpleModelParams", - "fullType": "vega.SimpleModelParams", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "log_normal", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.", - "label": "", - "type": "LogNormalRiskModel", - "longType": "LogNormalRiskModel", - "fullType": "vega.LogNormalRiskModel", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "position_decimal_places", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sla_params", - "description": "Specifies the liquidity provision SLA parameters.", - "label": "", - "type": "LiquiditySLAParameters", - "longType": "LiquiditySLAParameters", - "fullType": "vega.LiquiditySLAParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee_settings", - "description": "Specifies how the liquidity fee for the market will be calculated.", - "label": "", - "type": "LiquidityFeeSettings", - "longType": "LiquidityFeeSettings", - "fullType": "vega.LiquidityFeeSettings", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NewTransfer", - "longName": "NewTransfer", - "fullName": "vega.NewTransfer", - "description": "New governance transfer", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration for a new transfer.", - "label": "", - "type": "NewTransferConfiguration", - "longType": "NewTransferConfiguration", - "fullType": "vega.NewTransferConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NewTransferConfiguration", - "longName": "NewTransferConfiguration", - "fullName": "vega.NewTransferConfiguration", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "source_type", - "description": "Source account type, such as network treasury, market insurance pool", - "label": "", - "type": "AccountType", - "longType": "AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "source", - "description": "If network treasury, field is empty, otherwise uses the market ID", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfer_type", - "description": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount", - "label": "", - "type": "GovernanceTransferType", - "longType": "GovernanceTransferType", - "fullType": "vega.GovernanceTransferType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Maximum amount to transfer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "ID of asset to transfer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fraction_of_balance", - "description": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "destination_type", - "description": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool", - "label": "", - "type": "AccountType", - "longType": "AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "destination", - "description": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "one_off", - "description": "", - "label": "", - "type": "OneOffTransfer", - "longType": "OneOffTransfer", - "fullType": "vega.OneOffTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - }, - { - "name": "recurring", - "description": "", - "label": "", - "type": "RecurringTransfer", - "longType": "RecurringTransfer", - "fullType": "vega.RecurringTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - } - ] - }, - { - "name": "OneOffTransfer", - "longName": "OneOffTransfer", - "fullName": "vega.OneOffTransfer", - "description": "Specific details for a one off transfer", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deliver_on", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PerpetualProduct", - "longName": "PerpetualProduct", - "fullName": "vega.PerpetualProduct", - "description": "Perpetual product configuration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "settlement_asset", - "description": "Asset ID for the product's settlement asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quote_name", - "description": "Product quote name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_funding_factor", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "interest_rate", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "clamp_lower_bound", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "clamp_upper_bound", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_schedule", - "description": "Data source spec describing the data source for settlement schedule.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_data", - "description": "Data source spec describing the data source for settlement.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_binding", - "description": "Binding between the data source spec and the settlement data.", - "label": "", - "type": "DataSourceSpecToPerpetualBinding", - "longType": "DataSourceSpecToPerpetualBinding", - "fullType": "vega.DataSourceSpecToPerpetualBinding", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "funding_rate_scaling_factor", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_scaling_factor", - "defaultValue": "" - }, - { - "name": "funding_rate_lower_bound", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_lower_bound", - "defaultValue": "" - }, - { - "name": "funding_rate_upper_bound", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_upper_bound", - "defaultValue": "" - }, - { - "name": "index_price_configuration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.", - "label": "optional", - "type": "CompositePriceConfiguration", - "longType": "CompositePriceConfiguration", - "fullType": "vega.CompositePriceConfiguration", - "ismap": false, - "isoneof": true, - "oneofdecl": "_index_price_configuration", - "defaultValue": "" - } - ] - }, - { - "name": "Proposal", - "longName": "Proposal", - "fullName": "vega.Proposal", - "description": "Governance proposal", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique proposal ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Proposal reference.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID i.e. public key of the party submitting the proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state", - "description": "Current state of the proposal, i.e. open, passed, failed etc.", - "label": "", - "type": "State", - "longType": "Proposal.State", - "fullType": "vega.Proposal.State", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "terms", - "description": "Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.", - "label": "optional", - "type": "ProposalTerms", - "longType": "ProposalTerms", - "fullType": "vega.ProposalTerms", - "ismap": false, - "isoneof": true, - "oneofdecl": "_terms", - "defaultValue": "" - }, - { - "name": "reason", - "description": "Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.", - "label": "optional", - "type": "ProposalError", - "longType": "ProposalError", - "fullType": "vega.ProposalError", - "ismap": false, - "isoneof": true, - "oneofdecl": "_reason", - "defaultValue": "" - }, - { - "name": "error_details", - "description": "Detailed error associated to the reason.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_error_details", - "defaultValue": "" - }, - { - "name": "rationale", - "description": "Rationale behind a proposal.", - "label": "", - "type": "ProposalRationale", - "longType": "ProposalRationale", - "fullType": "vega.ProposalRationale", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_participation", - "description": "Required vote participation for this proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_majority", - "description": "Required majority for this proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_liquidity_provider_participation", - "description": "Required participation from liquidity providers, optional but is required for market update proposal.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_required_liquidity_provider_participation", - "defaultValue": "" - }, - { - "name": "required_liquidity_provider_majority", - "description": "Required majority from liquidity providers, optional but is required for market update proposal.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_required_liquidity_provider_majority", - "defaultValue": "" - }, - { - "name": "batch_terms", - "description": "Batch proposal terms.", - "label": "optional", - "type": "BatchProposalTerms", - "longType": "BatchProposalTerms", - "fullType": "vega.BatchProposalTerms", - "ismap": false, - "isoneof": true, - "oneofdecl": "_batch_terms", - "defaultValue": "" - }, - { - "name": "batch_id", - "description": "ID of a batch proposal that this proposal is part of.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_batch_id", - "defaultValue": "" - } - ] - }, - { - "name": "ProposalParameters", - "longName": "ProposalParameters", - "fullName": "vega.ProposalParameters", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "min_close", - "description": "Represents the minimum time before a proposal can be closed for voting.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_close", - "description": "Represents the maximum time that a proposal can be open for voting.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_enact", - "description": "Represents the minimum time before an enacted proposal takes effect.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_enact", - "description": "Represents the maximum time before an enacted proposal must take effect.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_participation", - "description": "Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_majority", - "description": "Specifies the required percentage of votes a proposal needs to be approved.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_proposer_balance", - "description": "Specifies the minimum governance token balance a proposer must hold to initiate a proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_voter_balance", - "description": "Specifies the minimum governance token balance a voter must hold to participate in voting.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_participation_lp", - "description": "Specifies the required percentage of participation from liquidity providers for the proposal to be valid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_majority_lp", - "description": "Specifies the required majority percentage from liquidity providers for a proposal to be approved.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_equity_like_share", - "description": "Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProposalRationale", - "longName": "ProposalRationale", - "fullName": "vega.ProposalRationale", - "description": "Rationale behind a proposal.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "description", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "title", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProposalTerms", - "longName": "ProposalTerms", - "fullName": "vega.ProposalTerms", - "description": "Terms for a governance proposal on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "closing_timestamp", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "enactment_timestamp", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validation_timestamp", - "description": "Validation timestamp as Unix time in seconds.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "update_market", - "description": "Proposal change for modifying an existing futures market on Vega.", - "label": "", - "type": "UpdateMarket", - "longType": "UpdateMarket", - "fullType": "vega.UpdateMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_market", - "description": "Proposal change for creating new futures market on Vega.", - "label": "", - "type": "NewMarket", - "longType": "NewMarket", - "fullType": "vega.NewMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_network_parameter", - "description": "Proposal change for updating Vega network parameters.", - "label": "", - "type": "UpdateNetworkParameter", - "longType": "UpdateNetworkParameter", - "fullType": "vega.UpdateNetworkParameter", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_asset", - "description": "Proposal change for creating new assets on Vega.", - "label": "", - "type": "NewAsset", - "longType": "NewAsset", - "fullType": "vega.NewAsset", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_freeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.", - "label": "", - "type": "NewFreeform", - "longType": "NewFreeform", - "fullType": "vega.NewFreeform", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_asset", - "description": "Proposal change for updating an asset.", - "label": "", - "type": "UpdateAsset", - "longType": "UpdateAsset", - "fullType": "vega.UpdateAsset", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_spot_market", - "description": "Proposal change for creating new spot market on Vega.", - "label": "", - "type": "NewSpotMarket", - "longType": "NewSpotMarket", - "fullType": "vega.NewSpotMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_spot_market", - "description": "Proposal change for modifying an existing spot market on Vega.", - "label": "", - "type": "UpdateSpotMarket", - "longType": "UpdateSpotMarket", - "fullType": "vega.UpdateSpotMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "new_transfer", - "description": "Proposal change for a governance transfer.", - "label": "", - "type": "NewTransfer", - "longType": "NewTransfer", - "fullType": "vega.NewTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "cancel_transfer", - "description": "Cancel a governance transfer.", - "label": "", - "type": "CancelTransfer", - "longType": "CancelTransfer", - "fullType": "vega.CancelTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_market_state", - "description": "Proposal change for updating the state of a market.", - "label": "", - "type": "UpdateMarketState", - "longType": "UpdateMarketState", - "fullType": "vega.UpdateMarketState", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_referral_program", - "description": "Proposal change for updating the referral program.", - "label": "", - "type": "UpdateReferralProgram", - "longType": "UpdateReferralProgram", - "fullType": "vega.UpdateReferralProgram", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - }, - { - "name": "update_volume_discount_program", - "description": "Proposal change for updating the volume discount program.", - "label": "", - "type": "UpdateVolumeDiscountProgram", - "longType": "UpdateVolumeDiscountProgram", - "fullType": "vega.UpdateVolumeDiscountProgram", - "ismap": false, - "isoneof": true, - "oneofdecl": "change", - "defaultValue": "" - } - ] - }, - { - "name": "RecurringTransfer", - "longName": "RecurringTransfer", - "fullName": "vega.RecurringTransfer", - "description": "Specific details for a recurring transfer\n\nFirst epoch from which this transfer shall be paid.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "start_epoch", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_epoch", - "description": "Last epoch at which this transfer shall be paid.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_end_epoch", - "defaultValue": "" - }, - { - "name": "dispatch_strategy", - "description": "Optional parameter defining how a transfer is dispatched.", - "label": "optional", - "type": "DispatchStrategy", - "longType": "DispatchStrategy", - "fullType": "vega.DispatchStrategy", - "ismap": false, - "isoneof": true, - "oneofdecl": "_dispatch_strategy", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralProgramChanges", - "longName": "ReferralProgramChanges", - "fullName": "vega.ReferralProgramChanges", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "benefit_tiers", - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.", - "label": "repeated", - "type": "BenefitTier", - "longType": "BenefitTier", - "fullType": "vega.BenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_of_program_timestamp", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window_length", - "description": "Number of epochs over which to evaluate a referral set's running volume.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staking_tiers", - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.", - "label": "repeated", - "type": "StakingTier", - "longType": "StakingTier", - "fullType": "vega.StakingTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SpotProduct", - "longName": "SpotProduct", - "fullName": "vega.SpotProduct", - "description": "Spot product configuration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "base_asset", - "description": "Base asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quote_asset", - "description": "Quote asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Product name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SuccessorConfiguration", - "longName": "SuccessorConfiguration", - "fullName": "vega.SuccessorConfiguration", - "description": "Configuration required to turn a new market proposal in to a successor market proposal.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parent_market_id", - "description": "ID of the market that the successor should take over from.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "insurance_pool_fraction", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateAsset", - "longName": "UpdateAsset", - "fullName": "vega.UpdateAsset", - "description": "Update an existing asset on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Asset ID the update is for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "changes", - "description": "Changes to apply on an existing asset.", - "label": "", - "type": "AssetDetailsUpdate", - "longType": "AssetDetailsUpdate", - "fullType": "vega.AssetDetailsUpdate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateFutureProduct", - "longName": "UpdateFutureProduct", - "fullName": "vega.UpdateFutureProduct", - "description": "Future product configuration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "quote_name", - "description": "Human-readable name/abbreviation of the quote name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_data", - "description": "The data source spec describing the data of settlement data.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_trading_termination", - "description": "The data source spec describing the data source for trading termination.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_binding", - "description": "The binding between the data source spec and the settlement data.", - "label": "", - "type": "DataSourceSpecToFutureBinding", - "longType": "DataSourceSpecToFutureBinding", - "fullType": "vega.DataSourceSpecToFutureBinding", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateInstrumentConfiguration", - "longName": "UpdateInstrumentConfiguration", - "fullName": "vega.UpdateInstrumentConfiguration", - "description": "Instrument configuration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "code", - "description": "Instrument code, human-readable shortcode used to describe the instrument.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Instrument name", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "future", - "description": "Future.", - "label": "", - "type": "UpdateFutureProduct", - "longType": "UpdateFutureProduct", - "fullType": "vega.UpdateFutureProduct", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - }, - { - "name": "perpetual", - "description": "Perpetual.", - "label": "", - "type": "UpdatePerpetualProduct", - "longType": "UpdatePerpetualProduct", - "fullType": "vega.UpdatePerpetualProduct", - "ismap": false, - "isoneof": true, - "oneofdecl": "product", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateMarket", - "longName": "UpdateMarket", - "fullName": "vega.UpdateMarket", - "description": "Update an existing market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID the update is for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "changes", - "description": "Updated configuration of the futures market.", - "label": "", - "type": "UpdateMarketConfiguration", - "longType": "UpdateMarketConfiguration", - "fullType": "vega.UpdateMarketConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateMarketConfiguration", - "longName": "UpdateMarketConfiguration", - "fullName": "vega.UpdateMarketConfiguration", - "description": "Configuration to update a futures market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "instrument", - "description": "Updated futures market instrument configuration.", - "label": "", - "type": "UpdateInstrumentConfiguration", - "longType": "UpdateInstrumentConfiguration", - "fullType": "vega.UpdateInstrumentConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "Optional futures market metadata, tags.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitoring_parameters", - "description": "Price monitoring parameters.", - "label": "", - "type": "PriceMonitoringParameters", - "longType": "PriceMonitoringParameters", - "fullType": "vega.PriceMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_monitoring_parameters", - "description": "Liquidity monitoring parameters.", - "label": "", - "type": "LiquidityMonitoringParameters", - "longType": "LiquidityMonitoringParameters", - "fullType": "vega.LiquidityMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "simple", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected.", - "label": "", - "type": "SimpleModelParams", - "longType": "SimpleModelParams", - "fullType": "vega.SimpleModelParams", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "log_normal", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.", - "label": "", - "type": "LogNormalRiskModel", - "longType": "LogNormalRiskModel", - "fullType": "vega.LogNormalRiskModel", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "lp_price_range", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_lp_price_range", - "defaultValue": "" - }, - { - "name": "linear_slippage_factor", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quadratic_slippage_factor", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "", - "options": { - "deprecated": true - } - }, - { - "name": "liquidity_sla_parameters", - "description": "Liquidity SLA parameters", - "label": "", - "type": "LiquiditySLAParameters", - "longType": "LiquiditySLAParameters", - "fullType": "vega.LiquiditySLAParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee_settings", - "description": "Specifies how the liquidity fee for the market will be calculated.", - "label": "", - "type": "LiquidityFeeSettings", - "longType": "LiquidityFeeSettings", - "fullType": "vega.LiquidityFeeSettings", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidation_strategy", - "description": "Liquidation strategy parameters", - "label": "", - "type": "LiquidationStrategy", - "longType": "LiquidationStrategy", - "fullType": "vega.LiquidationStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mark_price_configuration", - "description": "Mark price configuration.", - "label": "", - "type": "CompositePriceConfiguration", - "longType": "CompositePriceConfiguration", - "fullType": "vega.CompositePriceConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateMarketState", - "longName": "UpdateMarketState", - "fullName": "vega.UpdateMarketState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration for governance-initiated change of a market's state", - "label": "", - "type": "UpdateMarketStateConfiguration", - "longType": "UpdateMarketStateConfiguration", - "fullType": "vega.UpdateMarketStateConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateMarketStateConfiguration", - "longName": "UpdateMarketStateConfiguration", - "fullName": "vega.UpdateMarketStateConfiguration", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "ID of the market", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "update_type", - "description": "Type of the market update", - "label": "", - "type": "MarketStateUpdateType", - "longType": "MarketStateUpdateType", - "fullType": "vega.MarketStateUpdateType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Settlement price, relevant only for market termination for futures markets", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_price", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateNetworkParameter", - "longName": "UpdateNetworkParameter", - "fullName": "vega.UpdateNetworkParameter", - "description": "Update network configuration on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "The network parameter to update.", - "label": "", - "type": "NetworkParameter", - "longType": "NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdatePerpetualProduct", - "longName": "UpdatePerpetualProduct", - "fullName": "vega.UpdatePerpetualProduct", - "description": "Perpetual product configuration", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "quote_name", - "description": "Human-readable name/abbreviation of the quote name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_funding_factor", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "interest_rate", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "clamp_lower_bound", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "clamp_upper_bound", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_schedule", - "description": "Data source spec describing the data source for settlement schedule.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_for_settlement_data", - "description": "Data source spec describing the data source for settlement.", - "label": "", - "type": "DataSourceDefinition", - "longType": "DataSourceDefinition", - "fullType": "vega.DataSourceDefinition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_source_spec_binding", - "description": "Binding between the data source spec and the settlement data.", - "label": "", - "type": "DataSourceSpecToPerpetualBinding", - "longType": "DataSourceSpecToPerpetualBinding", - "fullType": "vega.DataSourceSpecToPerpetualBinding", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "funding_rate_scaling_factor", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_scaling_factor", - "defaultValue": "" - }, - { - "name": "funding_rate_lower_bound", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_lower_bound", - "defaultValue": "" - }, - { - "name": "funding_rate_upper_bound", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate_upper_bound", - "defaultValue": "" - }, - { - "name": "index_price_configuration", - "description": "Configuration for the index price used in funding payment calculation.", - "label": "optional", - "type": "CompositePriceConfiguration", - "longType": "CompositePriceConfiguration", - "fullType": "vega.CompositePriceConfiguration", - "ismap": false, - "isoneof": true, - "oneofdecl": "_index_price_configuration", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateReferralProgram", - "longName": "UpdateReferralProgram", - "fullName": "vega.UpdateReferralProgram", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration for change to update a referral program.", - "label": "", - "type": "ReferralProgramChanges", - "longType": "ReferralProgramChanges", - "fullType": "vega.ReferralProgramChanges", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateSpotMarket", - "longName": "UpdateSpotMarket", - "fullName": "vega.UpdateSpotMarket", - "description": "Update an existing spot market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID the update is for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "changes", - "description": "Updated configuration of the spot market.", - "label": "", - "type": "UpdateSpotMarketConfiguration", - "longType": "UpdateSpotMarketConfiguration", - "fullType": "vega.UpdateSpotMarketConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateSpotMarketConfiguration", - "longName": "UpdateSpotMarketConfiguration", - "fullName": "vega.UpdateSpotMarketConfiguration", - "description": "Configuration to update a spot market on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "metadata", - "description": "Optional spot market metadata, tags.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitoring_parameters", - "description": "Price monitoring parameters.", - "label": "", - "type": "PriceMonitoringParameters", - "longType": "PriceMonitoringParameters", - "fullType": "vega.PriceMonitoringParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "target_stake_parameters", - "description": "Specifies parameters related to target stake calculation.", - "label": "", - "type": "TargetStakeParameters", - "longType": "TargetStakeParameters", - "fullType": "vega.TargetStakeParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "simple", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected.", - "label": "", - "type": "SimpleModelParams", - "longType": "SimpleModelParams", - "fullType": "vega.SimpleModelParams", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "log_normal", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.", - "label": "", - "type": "LogNormalRiskModel", - "longType": "LogNormalRiskModel", - "fullType": "vega.LogNormalRiskModel", - "ismap": false, - "isoneof": true, - "oneofdecl": "risk_parameters", - "defaultValue": "" - }, - { - "name": "sla_params", - "description": "Specifies the liquidity provision SLA parameters.", - "label": "", - "type": "LiquiditySLAParameters", - "longType": "LiquiditySLAParameters", - "fullType": "vega.LiquiditySLAParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_fee_settings", - "description": "Specifies how the liquidity fee for the market will be calculated.", - "label": "", - "type": "LiquidityFeeSettings", - "longType": "LiquidityFeeSettings", - "fullType": "vega.LiquidityFeeSettings", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateVolumeDiscountProgram", - "longName": "UpdateVolumeDiscountProgram", - "fullName": "vega.UpdateVolumeDiscountProgram", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "changes", - "description": "Configuration for a change to update a volume discount program", - "label": "", - "type": "VolumeDiscountProgramChanges", - "longType": "VolumeDiscountProgramChanges", - "fullType": "vega.VolumeDiscountProgramChanges", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountProgramChanges", - "longName": "VolumeDiscountProgramChanges", - "fullName": "vega.VolumeDiscountProgramChanges", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "benefit_tiers", - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.", - "label": "repeated", - "type": "VolumeBenefitTier", - "longType": "VolumeBenefitTier", - "fullType": "vega.VolumeBenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_of_program_timestamp", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window_length", - "description": "Number of epochs over which to evaluate a referral set's running volume.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Vote", - "longName": "Vote", - "fullName": "vega.Vote", - "description": "Governance vote", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Voter's party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "Which way the party voted.", - "label": "", - "type": "Value", - "longType": "Vote.Value", - "fullType": "vega.Vote.Value", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposal_id", - "description": "Proposal ID being voted on.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds when the vote was acknowledged by the network.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_governance_token_balance", - "description": "Total number of governance token for the party that cast the vote.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_governance_token_weight", - "description": "The weight of this vote based on the total number of governance tokens.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_equity_like_share_weight", - "description": "The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "per_market_equity_like_share_weight", - "description": "The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.", - "label": "repeated", - "type": "PerMarketEquityLikeShareWeightEntry", - "longType": "Vote.PerMarketEquityLikeShareWeightEntry", - "fullType": "vega.Vote.PerMarketEquityLikeShareWeightEntry", - "ismap": true, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PerMarketEquityLikeShareWeightEntry", - "longName": "Vote.PerMarketEquityLikeShareWeightEntry", - "fullName": "vega.Vote.PerMarketEquityLikeShareWeightEntry", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/commands/v1/commands.proto", - "description": "", - "package": "vega.commands.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "Method", - "longName": "UndelegateSubmission.Method", - "fullName": "vega.commands.v1.UndelegateSubmission.Method", - "description": "", - "values": [ - { - "name": "METHOD_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "METHOD_NOW", - "number": "1", - "description": "Undelegate straight away, losing all rewards for the current epoch." - }, - { - "name": "METHOD_AT_END_OF_EPOCH", - "number": "2", - "description": "Undelegate at the end of an epoch, retaining all rewards for the current epoch." - } - ] - }, - { - "name": "Mode", - "longName": "UpdateMarginMode.Mode", - "fullName": "vega.commands.v1.UpdateMarginMode.Mode", - "description": "", - "values": [ - { - "name": "MODE_UNSPECIFIED", - "number": "0", - "description": "Never valid." - }, - { - "name": "MODE_CROSS_MARGIN", - "number": "1", - "description": "Cross margin mode - margin is dynamically acquired and released as a position is marked to market" - }, - { - "name": "MODE_ISOLATED_MARGIN", - "number": "2", - "description": "Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "ApplyReferralCode", - "longName": "ApplyReferralCode", - "fullName": "vega.commands.v1.ApplyReferralCode", - "description": "Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Referral code, normally the referral set ID, for the party to join.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BatchMarketInstructions", - "longName": "BatchMarketInstructions", - "fullName": "vega.commands.v1.BatchMarketInstructions", - "description": "A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "cancellations", - "description": "List of order cancellations to be processed sequentially.", - "label": "repeated", - "type": "OrderCancellation", - "longType": "OrderCancellation", - "fullType": "vega.commands.v1.OrderCancellation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amendments", - "description": "List of order amendments to be processed sequentially.", - "label": "repeated", - "type": "OrderAmendment", - "longType": "OrderAmendment", - "fullType": "vega.commands.v1.OrderAmendment", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submissions", - "description": "List of order submissions to be processed sequentially.", - "label": "repeated", - "type": "OrderSubmission", - "longType": "OrderSubmission", - "fullType": "vega.commands.v1.OrderSubmission", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stop_orders_cancellation", - "description": "List of stop order cancellations to be processed sequentially.", - "label": "repeated", - "type": "StopOrdersCancellation", - "longType": "StopOrdersCancellation", - "fullType": "vega.commands.v1.StopOrdersCancellation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stop_orders_submission", - "description": "List of stop order submissions to be processed sequentially.", - "label": "repeated", - "type": "StopOrdersSubmission", - "longType": "StopOrdersSubmission", - "fullType": "vega.commands.v1.StopOrdersSubmission", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "update_margin_mode", - "description": "Update margin mode instruction", - "label": "repeated", - "type": "UpdateMarginMode", - "longType": "UpdateMarginMode", - "fullType": "vega.commands.v1.UpdateMarginMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BatchProposalSubmission", - "longName": "BatchProposalSubmission", - "fullName": "vega.commands.v1.BatchProposalSubmission", - "description": "Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "reference", - "description": "Arbitrary human-readable reference identifying the proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "terms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.", - "label": "", - "type": "BatchProposalSubmissionTerms", - "longType": "BatchProposalSubmissionTerms", - "fullType": "vega.commands.v1.BatchProposalSubmissionTerms", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rationale", - "description": "Rationale behind a proposal.", - "label": "", - "type": "ProposalRationale", - "longType": "vega.ProposalRationale", - "fullType": "vega.ProposalRationale", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BatchProposalSubmissionTerms", - "longName": "BatchProposalSubmissionTerms", - "fullName": "vega.commands.v1.BatchProposalSubmissionTerms", - "description": "Terms for a batch governance proposal submission", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "closing_timestamp", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "changes", - "description": "List of individual changes included in the batch proposal.", - "label": "repeated", - "type": "BatchProposalTermsChange", - "longType": "vega.BatchProposalTermsChange", - "fullType": "vega.BatchProposalTermsChange", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CancelTransfer", - "longName": "CancelTransfer", - "fullName": "vega.commands.v1.CancelTransfer", - "description": "Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfer_id", - "description": "Transfer ID of the transfer to cancel.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CreateReferralSet", - "longName": "CreateReferralSet", - "fullName": "vega.commands.v1.CreateReferralSet", - "description": "Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "is_team", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team", - "description": "Team details, if the referral set is to be considered a team.", - "label": "optional", - "type": "Team", - "longType": "CreateReferralSet.Team", - "fullType": "vega.commands.v1.CreateReferralSet.Team", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team", - "defaultValue": "" - } - ] - }, - { - "name": "Team", - "longName": "CreateReferralSet.Team", - "fullName": "vega.commands.v1.CreateReferralSet.Team", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "name", - "description": "Name of the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team_url", - "description": "External link to the team's homepage.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_url", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "External link to an avatar for the team.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_avatar_url", - "defaultValue": "" - }, - { - "name": "closed", - "description": "Whether or not the team is closed to new party members.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "allow_list", - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegateSubmission", - "longName": "DelegateSubmission", - "fullName": "vega.commands.v1.DelegateSubmission", - "description": "Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID to delegate stake to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "IcebergOpts", - "longName": "IcebergOpts", - "fullName": "vega.commands.v1.IcebergOpts", - "description": "Iceberg order options", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "peak_size", - "description": "Size of the order that is made visible and can be traded with during the execution of a single order.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "minimum_visible_size", - "description": "Minimum allowed remaining size of the order before it is replenished back to its peak size.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "IssueSignatures", - "longName": "IssueSignatures", - "fullName": "vega.commands.v1.IssueSignatures", - "description": "Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "submitter", - "description": "Ethereum address which will submit the signatures to the smart contract.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "kind", - "description": "What kind of signatures to generate, namely for whether a signer is being added or removed.", - "label": "", - "type": "NodeSignatureKind", - "longType": "NodeSignatureKind", - "fullType": "vega.commands.v1.NodeSignatureKind", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_node_id", - "description": "Node ID of the validator node that will be signed in or out of the smart contract.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "JoinTeam", - "longName": "JoinTeam", - "fullName": "vega.commands.v1.JoinTeam", - "description": "Command that allows the submitter to join a team or change teams if they are already a member of a team.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "ID of the team to join, this is the same as the referral code used to generate the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisionAmendment", - "longName": "LiquidityProvisionAmendment", - "fullName": "vega.commands.v1.LiquidityProvisionAmendment", - "description": "Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market that the submitter wants to amend the liquidity commitment for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "commitment_amount", - "description": "New commitment amount.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee", - "description": "New nominated liquidity fee factor.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "New arbitrary reference to be added to every order created out of this liquidity provision submission.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisionCancellation", - "longName": "LiquidityProvisionCancellation", - "fullName": "vega.commands.v1.LiquidityProvisionCancellation", - "description": "Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market that the submitter will stop providing liquidity for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisionSubmission", - "longName": "LiquidityProvisionSubmission", - "fullName": "vega.commands.v1.LiquidityProvisionSubmission", - "description": "A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market that the submitter wishes to provide liquidity for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "commitment_amount", - "description": "Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Arbitrary reference to be added to every order created out of this liquidity provision submission.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OneOffTransfer", - "longName": "OneOffTransfer", - "fullName": "vega.commands.v1.OneOffTransfer", - "description": "Details for a one-off transfer.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deliver_on", - "description": "Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderAmendment", - "longName": "OrderAmendment", - "fullName": "vega.commands.v1.OrderAmendment", - "description": "A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "order_id", - "description": "ID of the order to amend.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID that the order was originally submitted to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "New price for the order. This field is an unsigned integer scaled to the market's decimal places.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_price", - "defaultValue": "" - }, - { - "name": "size_delta", - "description": "Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expires_at", - "description": "Timestamp, in Unix nanoseconds, for the new expiry time for the order.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_expires_at", - "defaultValue": "" - }, - { - "name": "time_in_force", - "description": "New time in force for the order.", - "label": "", - "type": "TimeInForce", - "longType": "vega.Order.TimeInForce", - "fullType": "vega.Order.TimeInForce", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pegged_offset", - "description": "New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pegged_reference", - "description": "New pegged reference for the order.", - "label": "", - "type": "PeggedReference", - "longType": "vega.PeggedReference", - "fullType": "vega.PeggedReference", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_size", - "defaultValue": "" - } - ] - }, - { - "name": "OrderCancellation", - "longName": "OrderCancellation", - "fullName": "vega.commands.v1.OrderCancellation", - "description": "A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "order_id", - "description": "Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderSubmission", - "longName": "OrderSubmission", - "fullName": "vega.commands.v1.OrderSubmission", - "description": "A command that submits an order to the Vega network for a given market.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to submit the order to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "Size for the order, for example, in a futures market the size equals the number of units.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "side", - "description": "Which side of the order book the order is for, e.g. buy or sell.", - "label": "", - "type": "Side", - "longType": "vega.Side", - "fullType": "vega.Side", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_in_force", - "description": "Time in force indicates how long an order will remain active before it is executed or expires..", - "label": "", - "type": "TimeInForce", - "longType": "vega.Order.TimeInForce", - "fullType": "vega.Order.TimeInForce", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expires_at", - "description": "Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of the order.", - "label": "", - "type": "Type", - "longType": "vega.Order.Type", - "fullType": "vega.Order.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pegged_order", - "description": "Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.", - "label": "", - "type": "PeggedOrder", - "longType": "vega.PeggedOrder", - "fullType": "vega.PeggedOrder", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "post_only", - "description": "If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reduce_only", - "description": "If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "iceberg_opts", - "description": "Iceberg order details. If set, the order will exist on the order book in chunks.", - "label": "optional", - "type": "IcebergOpts", - "longType": "IcebergOpts", - "fullType": "vega.commands.v1.IcebergOpts", - "ismap": false, - "isoneof": true, - "oneofdecl": "_iceberg_opts", - "defaultValue": "" - } - ] - }, - { - "name": "ProposalSubmission", - "longName": "ProposalSubmission", - "fullName": "vega.commands.v1.ProposalSubmission", - "description": "Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "reference", - "description": "Arbitrary human-readable reference identifying the proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "terms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.", - "label": "", - "type": "ProposalTerms", - "longType": "vega.ProposalTerms", - "fullType": "vega.ProposalTerms", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rationale", - "description": "Rationale behind a proposal.", - "label": "", - "type": "ProposalRationale", - "longType": "vega.ProposalRationale", - "fullType": "vega.ProposalRationale", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RecurringTransfer", - "longName": "RecurringTransfer", - "fullName": "vega.commands.v1.RecurringTransfer", - "description": "Details for a recurring transfer", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "start_epoch", - "description": "First epoch from which this transfer shall be executed.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_epoch", - "description": "Last epoch at which this transfer shall be executed.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_end_epoch", - "defaultValue": "" - }, - { - "name": "factor", - "description": "Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "dispatch_strategy", - "description": "Optional parameter defining how a transfer is dispatched.", - "label": "", - "type": "DispatchStrategy", - "longType": "vega.DispatchStrategy", - "fullType": "vega.DispatchStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrderSetup", - "longName": "StopOrderSetup", - "fullName": "vega.commands.v1.StopOrderSetup", - "description": "Price and expiry configuration for a stop order.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "order_submission", - "description": "Order to be submitted once the trigger is breached.", - "label": "", - "type": "OrderSubmission", - "longType": "OrderSubmission", - "fullType": "vega.commands.v1.OrderSubmission", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expires_at", - "description": "Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_expires_at", - "defaultValue": "" - }, - { - "name": "expiry_strategy", - "description": "Strategy to adopt if the expiry time is reached.", - "label": "optional", - "type": "ExpiryStrategy", - "longType": "vega.StopOrder.ExpiryStrategy", - "fullType": "vega.StopOrder.ExpiryStrategy", - "ismap": false, - "isoneof": true, - "oneofdecl": "_expiry_strategy", - "defaultValue": "" - }, - { - "name": "size_override_setting", - "description": "Indicates if this order is linked to an order or position to derive the order size", - "label": "optional", - "type": "SizeOverrideSetting", - "longType": "vega.StopOrder.SizeOverrideSetting", - "fullType": "vega.StopOrder.SizeOverrideSetting", - "ismap": false, - "isoneof": true, - "oneofdecl": "_size_override_setting", - "defaultValue": "" - }, - { - "name": "size_override_value", - "description": "If this order is linked to a position, provide an optional scaling factor", - "label": "optional", - "type": "SizeOverrideValue", - "longType": "vega.StopOrder.SizeOverrideValue", - "fullType": "vega.StopOrder.SizeOverrideValue", - "ismap": false, - "isoneof": true, - "oneofdecl": "_size_override_value", - "defaultValue": "" - }, - { - "name": "price", - "description": "Order will be submitted if the last traded price on the market breaches the given price.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "trigger", - "defaultValue": "" - }, - { - "name": "trailing_percent_offset", - "description": "Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "trigger", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrdersCancellation", - "longName": "StopOrdersCancellation", - "fullName": "vega.commands.v1.StopOrdersCancellation", - "description": "A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "stop_order_id", - "description": "Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_stop_order_id", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrdersSubmission", - "longName": "StopOrdersSubmission", - "fullName": "vega.commands.v1.StopOrdersSubmission", - "description": "A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "rises_above", - "description": "Stop order that will be triggered if the price rises above a given trigger price.", - "label": "optional", - "type": "StopOrderSetup", - "longType": "StopOrderSetup", - "fullType": "vega.commands.v1.StopOrderSetup", - "ismap": false, - "isoneof": true, - "oneofdecl": "_rises_above", - "defaultValue": "" - }, - { - "name": "falls_below", - "description": "Stop order that will be triggered if the price falls below a given trigger price.", - "label": "optional", - "type": "StopOrderSetup", - "longType": "StopOrderSetup", - "fullType": "vega.commands.v1.StopOrderSetup", - "ismap": false, - "isoneof": true, - "oneofdecl": "_falls_below", - "defaultValue": "" - } - ] - }, - { - "name": "Transfer", - "longName": "Transfer", - "fullName": "vega.commands.v1.Transfer", - "description": "Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "from_account_type", - "description": "Account type from which the funds of the party should be taken.", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to", - "description": "Public key of the destination account.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account_type", - "description": "Type of the destination account.", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset ID of the asset to be transferred.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Reference to be attached to the transfer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "one_off", - "description": "Details of a one-off transfer that is executed once at a specified time.", - "label": "", - "type": "OneOffTransfer", - "longType": "OneOffTransfer", - "fullType": "vega.commands.v1.OneOffTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - }, - { - "name": "recurring", - "description": "Details of a transfer that is executed once every epoch until stopped.", - "label": "", - "type": "RecurringTransfer", - "longType": "RecurringTransfer", - "fullType": "vega.commands.v1.RecurringTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - } - ] - }, - { - "name": "UndelegateSubmission", - "longName": "UndelegateSubmission", - "fullName": "vega.commands.v1.UndelegateSubmission", - "description": "Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID to undelegate stake from.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "method", - "description": "Method of delegation.", - "label": "", - "type": "Method", - "longType": "UndelegateSubmission.Method", - "fullType": "vega.commands.v1.UndelegateSubmission.Method", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateMarginMode", - "longName": "UpdateMarginMode", - "fullName": "vega.commands.v1.UpdateMarginMode", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market to change margin mode for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mode", - "description": "Margin mode to use.", - "label": "", - "type": "Mode", - "longType": "UpdateMarginMode.Mode", - "fullType": "vega.commands.v1.UpdateMarginMode.Mode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_factor", - "description": "Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_margin_factor", - "defaultValue": "" - } - ] - }, - { - "name": "UpdatePartyProfile", - "longName": "UpdatePartyProfile", - "fullName": "vega.commands.v1.UpdatePartyProfile", - "description": "Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "alias", - "description": "Alias given to the party. It must be unique network-wide.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "Freeform data to associate to the party.\nSupport a maximum of 10 entries.", - "label": "repeated", - "type": "Metadata", - "longType": "vega.Metadata", - "fullType": "vega.Metadata", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "UpdateReferralSet", - "longName": "UpdateReferralSet", - "fullName": "vega.commands.v1.UpdateReferralSet", - "description": "A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "ID of the referral set to update.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "is_team", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team", - "description": "Team details, if the referral set is to be considered a team.", - "label": "optional", - "type": "Team", - "longType": "UpdateReferralSet.Team", - "fullType": "vega.commands.v1.UpdateReferralSet.Team", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team", - "defaultValue": "" - } - ] - }, - { - "name": "Team", - "longName": "UpdateReferralSet.Team", - "fullName": "vega.commands.v1.UpdateReferralSet.Team", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "name", - "description": "New name of the team.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_name", - "defaultValue": "" - }, - { - "name": "team_url", - "description": "New link to the team's homepage.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_url", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "New link to an avatar for the team.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_avatar_url", - "defaultValue": "" - }, - { - "name": "closed", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_closed", - "defaultValue": "" - }, - { - "name": "allow_list", - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VoteSubmission", - "longName": "VoteSubmission", - "fullName": "vega.commands.v1.VoteSubmission", - "description": "Command that allows a token holder to vote for or against an active governance proposal.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal_id", - "description": "Submit vote for the specified proposal ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "Actual value of the vote.", - "label": "", - "type": "Value", - "longType": "vega.Vote.Value", - "fullType": "vega.Vote.Value", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "WithdrawSubmission", - "longName": "WithdrawSubmission", - "fullName": "vega.commands.v1.WithdrawSubmission", - "description": "Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "amount", - "description": "Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset to be withdrawn.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ext", - "description": "Details specific to the foreign chain, such as the receiver address.", - "label": "", - "type": "WithdrawExt", - "longType": "vega.WithdrawExt", - "fullType": "vega.WithdrawExt", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/commands/v1/data.proto", - "description": "", - "package": "vega.commands.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "OracleSource", - "longName": "OracleDataSubmission.OracleSource", - "fullName": "vega.commands.v1.OracleDataSubmission.OracleSource", - "description": "Supported oracle sources", - "values": [ - { - "name": "ORACLE_SOURCE_UNSPECIFIED", - "number": "0", - "description": "Default value" - }, - { - "name": "ORACLE_SOURCE_OPEN_ORACLE", - "number": "1", - "description": "Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard." - }, - { - "name": "ORACLE_SOURCE_JSON", - "number": "2", - "description": "Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data." - }, - { - "name": "ORACLE_SOURCE_ETHEREUM", - "number": "3", - "description": "Specifies that the payload will be base64 encoded JSON conforming to the ETH standard." - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "OracleDataSubmission", - "longName": "OracleDataSubmission", - "fullName": "vega.commands.v1.OracleDataSubmission", - "description": "Command to submit new oracle data from third party providers", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "source", - "description": "Source from which the data is coming from.", - "label": "", - "type": "OracleSource", - "longType": "OracleDataSubmission.OracleSource", - "fullType": "vega.commands.v1.OracleDataSubmission.OracleSource", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "payload", - "description": "Data provided by the data source.", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/commands/v1/transaction.proto", - "description": "", - "package": "vega.commands.v1", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "TxVersion", - "longName": "TxVersion", - "fullName": "vega.commands.v1.TxVersion", - "description": "Transaction versions to maintain backwards compatibility of transaction formats.", - "values": [ - { - "name": "TX_VERSION_UNSPECIFIED", - "number": "0", - "description": "Transaction version is unspecified." - }, - { - "name": "TX_VERSION_V2", - "number": "2", - "description": "Transaction requires the addition of a proof-of-work calculation." - }, - { - "name": "TX_VERSION_V3", - "number": "3", - "description": "Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks." - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "InputData", - "longName": "InputData", - "fullName": "vega.commands.v1.InputData", - "description": "Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "nonce", - "description": "Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_height", - "description": "Block height which has been used to calculate the transaction proof-of-work.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_submission", - "description": "Command to submit an order.", - "label": "", - "type": "OrderSubmission", - "longType": "OrderSubmission", - "fullType": "vega.commands.v1.OrderSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "order_cancellation", - "description": "Command to cancel an order.", - "label": "", - "type": "OrderCancellation", - "longType": "OrderCancellation", - "fullType": "vega.commands.v1.OrderCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "order_amendment", - "description": "Command to amend an order.", - "label": "", - "type": "OrderAmendment", - "longType": "OrderAmendment", - "fullType": "vega.commands.v1.OrderAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "withdraw_submission", - "description": "Command to submit a withdrawal.", - "label": "", - "type": "WithdrawSubmission", - "longType": "WithdrawSubmission", - "fullType": "vega.commands.v1.WithdrawSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "proposal_submission", - "description": "Command to submit a governance proposal.", - "label": "", - "type": "ProposalSubmission", - "longType": "ProposalSubmission", - "fullType": "vega.commands.v1.ProposalSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "vote_submission", - "description": "Command to submit a vote on a governance proposal.", - "label": "", - "type": "VoteSubmission", - "longType": "VoteSubmission", - "fullType": "vega.commands.v1.VoteSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "liquidity_provision_submission", - "description": "Command to submit a liquidity commitment.", - "label": "", - "type": "LiquidityProvisionSubmission", - "longType": "LiquidityProvisionSubmission", - "fullType": "vega.commands.v1.LiquidityProvisionSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "delegate_submission", - "description": "Command to delegate tokens to a validator.", - "label": "", - "type": "DelegateSubmission", - "longType": "DelegateSubmission", - "fullType": "vega.commands.v1.DelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "undelegate_submission", - "description": "Command to remove tokens delegated to a validator.", - "label": "", - "type": "UndelegateSubmission", - "longType": "UndelegateSubmission", - "fullType": "vega.commands.v1.UndelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "liquidity_provision_cancellation", - "description": "Command to cancel a liquidity commitment.", - "label": "", - "type": "LiquidityProvisionCancellation", - "longType": "LiquidityProvisionCancellation", - "fullType": "vega.commands.v1.LiquidityProvisionCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "liquidity_provision_amendment", - "description": "Command to amend a liquidity commitment.", - "label": "", - "type": "LiquidityProvisionAmendment", - "longType": "LiquidityProvisionAmendment", - "fullType": "vega.commands.v1.LiquidityProvisionAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "transfer", - "description": "Command to submit a transfer.", - "label": "", - "type": "Transfer", - "longType": "Transfer", - "fullType": "vega.commands.v1.Transfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "cancel_transfer", - "description": "Command to cancel a recurring transfer.", - "label": "", - "type": "CancelTransfer", - "longType": "CancelTransfer", - "fullType": "vega.commands.v1.CancelTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "announce_node", - "description": "Command used by a node operator to announce its node as a pending validator.", - "label": "", - "type": "AnnounceNode", - "longType": "AnnounceNode", - "fullType": "vega.commands.v1.AnnounceNode", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "batch_market_instructions", - "description": "Command to submit a batch of order instructions.", - "label": "", - "type": "BatchMarketInstructions", - "longType": "BatchMarketInstructions", - "fullType": "vega.commands.v1.BatchMarketInstructions", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "stop_orders_submission", - "description": "Command to submit a pair of stop orders.", - "label": "", - "type": "StopOrdersSubmission", - "longType": "StopOrdersSubmission", - "fullType": "vega.commands.v1.StopOrdersSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "stop_orders_cancellation", - "description": "Command to cancel stop orders.", - "label": "", - "type": "StopOrdersCancellation", - "longType": "StopOrdersCancellation", - "fullType": "vega.commands.v1.StopOrdersCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "create_referral_set", - "description": "Command to create a referral set.", - "label": "", - "type": "CreateReferralSet", - "longType": "CreateReferralSet", - "fullType": "vega.commands.v1.CreateReferralSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "update_referral_set", - "description": "Command to update a referral set.", - "label": "", - "type": "UpdateReferralSet", - "longType": "UpdateReferralSet", - "fullType": "vega.commands.v1.UpdateReferralSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "apply_referral_code", - "description": "Command to apply a referral code.", - "label": "", - "type": "ApplyReferralCode", - "longType": "ApplyReferralCode", - "fullType": "vega.commands.v1.ApplyReferralCode", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "update_margin_mode", - "description": "Command to update the margin mode of a party in a market.", - "label": "", - "type": "UpdateMarginMode", - "longType": "UpdateMarginMode", - "fullType": "vega.commands.v1.UpdateMarginMode", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "join_team", - "description": "Command to join a team.", - "label": "", - "type": "JoinTeam", - "longType": "JoinTeam", - "fullType": "vega.commands.v1.JoinTeam", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "node_vote", - "description": "Validator command sent automatically to vote on that validity of an external resource.", - "label": "", - "type": "NodeVote", - "longType": "NodeVote", - "fullType": "vega.commands.v1.NodeVote", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "node_signature", - "description": "Validator command sent automatically to provide signatures for the Ethereum bridge.", - "label": "", - "type": "NodeSignature", - "longType": "NodeSignature", - "fullType": "vega.commands.v1.NodeSignature", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "chain_event", - "description": "Validator command sent automatically to notify the Vega chain of an off-chain event.", - "label": "", - "type": "ChainEvent", - "longType": "ChainEvent", - "fullType": "vega.commands.v1.ChainEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "key_rotate_submission", - "description": "Validator command sent manually by a node operator to rotate their node's Vega keys.", - "label": "", - "type": "KeyRotateSubmission", - "longType": "KeyRotateSubmission", - "fullType": "vega.commands.v1.KeyRotateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "state_variable_proposal", - "description": "Validator command sent automatically to reach consensus on floating point values.", - "label": "", - "type": "StateVariableProposal", - "longType": "StateVariableProposal", - "fullType": "vega.commands.v1.StateVariableProposal", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "validator_heartbeat", - "description": "Validator command sent automatically to signal regular participation in the network.", - "label": "", - "type": "ValidatorHeartbeat", - "longType": "ValidatorHeartbeat", - "fullType": "vega.commands.v1.ValidatorHeartbeat", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "ethereum_key_rotate_submission", - "description": "Validator command sent manually by a node operator to rotate their node's Ethereum keys.", - "label": "", - "type": "EthereumKeyRotateSubmission", - "longType": "EthereumKeyRotateSubmission", - "fullType": "vega.commands.v1.EthereumKeyRotateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_proposal", - "description": "Validator command sent manually to propose a protocol upgrade.", - "label": "", - "type": "ProtocolUpgradeProposal", - "longType": "ProtocolUpgradeProposal", - "fullType": "vega.commands.v1.ProtocolUpgradeProposal", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "issue_signatures", - "description": "Command to request signatures to amend the multisig-control contract.", - "label": "", - "type": "IssueSignatures", - "longType": "IssueSignatures", - "fullType": "vega.commands.v1.IssueSignatures", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "oracle_data_submission", - "description": "Command to submit external oracle data.", - "label": "", - "type": "OracleDataSubmission", - "longType": "OracleDataSubmission", - "fullType": "vega.commands.v1.OracleDataSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "batch_proposal_submission", - "description": "Command to submit a batch governance proposal.", - "label": "", - "type": "BatchProposalSubmission", - "longType": "BatchProposalSubmission", - "fullType": "vega.commands.v1.BatchProposalSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "update_party_profile", - "description": "Command to update a party's profile.", - "label": "", - "type": "UpdatePartyProfile", - "longType": "UpdatePartyProfile", - "fullType": "vega.commands.v1.UpdatePartyProfile", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - } - ] - }, - { - "name": "ProofOfWork", - "longName": "ProofOfWork", - "fullName": "vega.commands.v1.ProofOfWork", - "description": "Components needed for the network to verify proof-of-work.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tid", - "description": "Unique transaction identifier used to seed the proof-of-work hash.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Transaction", - "longName": "Transaction", - "fullName": "vega.commands.v1.Transaction", - "description": "Transaction containing a command that can be sent to instruct the network to execute an action.\nA transaction contains a byte string representation of the input data which must then be signed, with the signature added to the transaction.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "input_data", - "description": "Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`.", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signature", - "description": "Signature of the input data field, signed by the sender of this transaction.", - "label": "", - "type": "Signature", - "longType": "Signature", - "fullType": "vega.commands.v1.Signature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "address", - "description": "Hex-encoded address of the sender. Not supported yet.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "from", - "defaultValue": "" - }, - { - "name": "pub_key", - "description": "Hex-encoded public key of the sender.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "from", - "defaultValue": "" - }, - { - "name": "version", - "description": "Version of the transaction.", - "label": "", - "type": "TxVersion", - "longType": "TxVersion", - "fullType": "vega.commands.v1.TxVersion", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pow", - "description": "Proof-of-work containing the random transaction ID used by the client and the nonce.", - "label": "", - "type": "ProofOfWork", - "longType": "ProofOfWork", - "fullType": "vega.commands.v1.ProofOfWork", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "blockexplorer/api/v1/blockexplorer.proto", - "description": "", - "package": "blockexplorer.api.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": true, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "GetTransactionRequest", - "longName": "GetTransactionRequest", - "fullName": "blockexplorer.api.v1.GetTransactionRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "hash", - "description": "Hash of the transaction", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetTransactionResponse", - "longName": "GetTransactionResponse", - "fullName": "blockexplorer.api.v1.GetTransactionResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transaction", - "description": "Transaction corresponding to the hash", - "label": "", - "type": "Transaction", - "longType": "Transaction", - "fullType": "blockexplorer.api.v1.Transaction", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "InfoRequest", - "longName": "InfoRequest", - "fullName": "blockexplorer.api.v1.InfoRequest", - "description": "node information", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "InfoResponse", - "longName": "InfoResponse", - "fullName": "blockexplorer.api.v1.InfoResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Semver formatted version of the data node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "commit_hash", - "description": "Commit hash from which the data node was built", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTransactionsRequest", - "longName": "ListTransactionsRequest", - "fullName": "blockexplorer.api.v1.ListTransactionsRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "before", - "description": "Cursor to paginate the request. It can be used in conjunction with the `after` cursor.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_before", - "defaultValue": "" - }, - { - "name": "after", - "description": "Cursor to paginate the request. It can be used in conjunction with the `before` cursor.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_after", - "defaultValue": "" - }, - { - "name": "filters", - "description": "Filters to apply to the request", - "label": "repeated", - "type": "FiltersEntry", - "longType": "ListTransactionsRequest.FiltersEntry", - "fullType": "blockexplorer.api.v1.ListTransactionsRequest.FiltersEntry", - "ismap": true, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cmd_types", - "description": "Transaction command types filter, for listing transactions with specified command types", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "exclude_cmd_types", - "description": "Transaction command types exclusion filter, for listing all the transactions except the ones with specified command types", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parties", - "description": "Party IDs filter, can be sender or receiver", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "first", - "description": "Number of transactions to be returned from the blockchain.\nUse in conjunction with the `after` cursor to paginate forwards. Paginating forwards means toward the most recent\ntransactions.\nIt cannot be used in conjunction with the `before` cursor.\nOn its own, this will return the `first` most recent transactions.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last", - "description": "Number of transactions to be returned from the blockchain.\nUse in conjunction with the `before` cursor to paginate backwards. Paginating forwards means toward the least recent\ntransactions.\nIt cannot be used in conjunction with the `after` cursor.\nOn its own, this will return the `last` oldest transactions.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FiltersEntry", - "longName": "ListTransactionsRequest.FiltersEntry", - "fullName": "blockexplorer.api.v1.ListTransactionsRequest.FiltersEntry", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTransactionsResponse", - "longName": "ListTransactionsResponse", - "fullName": "blockexplorer.api.v1.ListTransactionsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transactions", - "description": "Transaction corresponding to the specific request and filters", - "label": "repeated", - "type": "Transaction", - "longType": "Transaction", - "fullType": "blockexplorer.api.v1.Transaction", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Transaction", - "longName": "Transaction", - "fullName": "blockexplorer.api.v1.Transaction", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "block", - "description": "Height of the block the transaction was found in", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "index", - "description": "Index of the transaction in the block", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "Hash of the transaction", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "Vega public key of the transaction's submitter", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of transaction", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "code", - "description": "Results code of the transaction. 0 indicates the transaction was successful", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor for this transaction. This is used for paginating results", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "command", - "description": "Actual command of the transaction", - "label": "", - "type": "InputData", - "longType": "vega.commands.v1.InputData", - "fullType": "vega.commands.v1.InputData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signature", - "description": "Signature generated by the submitter for the transaction", - "label": "", - "type": "Signature", - "longType": "vega.commands.v1.Signature", - "fullType": "vega.commands.v1.Signature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "error", - "description": "Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_error", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Timestamp when the transaction happened, using RFC3399 format.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "version", - "description": "Version format of the transaction", - "label": "", - "type": "TxVersion", - "longType": "vega.commands.v1.TxVersion", - "fullType": "vega.commands.v1.TxVersion", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pow", - "description": "Proof of Work parameters of the transaction", - "label": "", - "type": "ProofOfWork", - "longType": "vega.commands.v1.ProofOfWork", - "fullType": "vega.commands.v1.ProofOfWork", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [ - { - "name": "BlockExplorerService", - "longName": "BlockExplorerService", - "fullName": "blockexplorer.api.v1.BlockExplorerService", - "description": "", - "methods": [ - { - "name": "GetTransaction", - "description": "Get transaction\n\nGet a transaction from the Vega blockchain", - "requestType": "GetTransactionRequest", - "requestLongType": "GetTransactionRequest", - "requestFullType": "blockexplorer.api.v1.GetTransactionRequest", - "requestStreaming": false, - "responseType": "GetTransactionResponse", - "responseLongType": "GetTransactionResponse", - "responseFullType": "blockexplorer.api.v1.GetTransactionResponse", - "responseStreaming": false - }, - { - "name": "ListTransactions", - "description": "List transactions\n\nList transactions from the Vega blockchain from the newest to the oldest transactions.", - "requestType": "ListTransactionsRequest", - "requestLongType": "ListTransactionsRequest", - "requestFullType": "blockexplorer.api.v1.ListTransactionsRequest", - "requestStreaming": false, - "responseType": "ListTransactionsResponse", - "responseLongType": "ListTransactionsResponse", - "responseFullType": "blockexplorer.api.v1.ListTransactionsResponse", - "responseStreaming": false - }, - { - "name": "Info", - "description": "Info\n\nGet information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built", - "requestType": "InfoRequest", - "requestLongType": "InfoRequest", - "requestFullType": "blockexplorer.api.v1.InfoRequest", - "requestStreaming": false, - "responseType": "InfoResponse", - "responseLongType": "InfoResponse", - "responseFullType": "blockexplorer.api.v1.InfoResponse", - "responseStreaming": false - } - ] - } - ] - }, - { - "name": "vega/oracle.proto", - "description": "", - "package": "vega", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "OracleData", - "longName": "OracleData", - "fullName": "vega.OracleData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "external_data", - "description": "", - "label": "", - "type": "ExternalData", - "longType": "data.v1.ExternalData", - "fullType": "vega.data.v1.ExternalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleSpec", - "longName": "OracleSpec", - "fullName": "vega.OracleSpec", - "description": "Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "external_data_source_spec", - "description": "", - "label": "", - "type": "ExternalDataSourceSpec", - "longType": "ExternalDataSourceSpec", - "fullType": "vega.ExternalDataSourceSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/events/v1/events.proto", - "description": "", - "package": "vega.events.v1", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "BusEventType", - "longName": "BusEventType", - "fullName": "vega.events.v1.BusEventType", - "description": "Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items", - "values": [ - { - "name": "BUS_EVENT_TYPE_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "BUS_EVENT_TYPE_ALL", - "number": "1", - "description": "Events of ALL event types, used when filtering stream from event bus" - }, - { - "name": "BUS_EVENT_TYPE_TIME_UPDATE", - "number": "2", - "description": "Event for blockchain time updates" - }, - { - "name": "BUS_EVENT_TYPE_LEDGER_MOVEMENTS", - "number": "3", - "description": "Event for when a transfer happens internally, contains the transfer information" - }, - { - "name": "BUS_EVENT_TYPE_POSITION_RESOLUTION", - "number": "4", - "description": "Event indicating position resolution has occurred" - }, - { - "name": "BUS_EVENT_TYPE_ORDER", - "number": "5", - "description": "Event for order updates, both new and existing orders" - }, - { - "name": "BUS_EVENT_TYPE_ACCOUNT", - "number": "6", - "description": "Event for account updates" - }, - { - "name": "BUS_EVENT_TYPE_PARTY", - "number": "7", - "description": "Event for party updates" - }, - { - "name": "BUS_EVENT_TYPE_TRADE", - "number": "8", - "description": "Event indicating a new trade has occurred" - }, - { - "name": "BUS_EVENT_TYPE_MARGIN_LEVELS", - "number": "9", - "description": "Event indicating margin levels have changed for a party" - }, - { - "name": "BUS_EVENT_TYPE_PROPOSAL", - "number": "10", - "description": "Event for proposal updates (for governance)" - }, - { - "name": "BUS_EVENT_TYPE_VOTE", - "number": "11", - "description": "Event indicating a new vote has occurred (for governance)" - }, - { - "name": "BUS_EVENT_TYPE_MARKET_DATA", - "number": "12", - "description": "Event for market data updates" - }, - { - "name": "BUS_EVENT_TYPE_NODE_SIGNATURE", - "number": "13", - "description": "Event for a new signature for a Vega node" - }, - { - "name": "BUS_EVENT_TYPE_LOSS_SOCIALIZATION", - "number": "14", - "description": "Event indicating loss socialisation occurred for a party" - }, - { - "name": "BUS_EVENT_TYPE_SETTLE_POSITION", - "number": "15", - "description": "Event for when a position is being settled" - }, - { - "name": "BUS_EVENT_TYPE_SETTLE_DISTRESSED", - "number": "16", - "description": "Event for when a position is distressed" - }, - { - "name": "BUS_EVENT_TYPE_MARKET_CREATED", - "number": "17", - "description": "Event indicating a new market was created" - }, - { - "name": "BUS_EVENT_TYPE_ASSET", - "number": "18", - "description": "Event for when an asset is added to Vega" - }, - { - "name": "BUS_EVENT_TYPE_MARKET_TICK", - "number": "19", - "description": "Event indicating a market tick event" - }, - { - "name": "BUS_EVENT_TYPE_WITHDRAWAL", - "number": "20", - "description": "Event for when a withdrawal occurs" - }, - { - "name": "BUS_EVENT_TYPE_DEPOSIT", - "number": "21", - "description": "Event for when a deposit occurs" - }, - { - "name": "BUS_EVENT_TYPE_AUCTION", - "number": "22", - "description": "Event indicating a change in auction state, for example starting or ending an auction" - }, - { - "name": "BUS_EVENT_TYPE_RISK_FACTOR", - "number": "23", - "description": "Event indicating a risk factor has been updated" - }, - { - "name": "BUS_EVENT_TYPE_NETWORK_PARAMETER", - "number": "24", - "description": "Event indicating a network parameter has been added or updated" - }, - { - "name": "BUS_EVENT_TYPE_LIQUIDITY_PROVISION", - "number": "25", - "description": "Event indicating a liquidity provision has been created or updated" - }, - { - "name": "BUS_EVENT_TYPE_MARKET_UPDATED", - "number": "26", - "description": "Event indicating a new market was created" - }, - { - "name": "BUS_EVENT_TYPE_ORACLE_SPEC", - "number": "27", - "description": "Event indicating an oracle spec has been created or updated" - }, - { - "name": "BUS_EVENT_TYPE_ORACLE_DATA", - "number": "28", - "description": "Event indicating that an oracle data has been broadcast" - }, - { - "name": "BUS_EVENT_TYPE_DELEGATION_BALANCE", - "number": "29", - "description": "Event indicating that an delegation balance of a party to a node for current epoch has changed" - }, - { - "name": "BUS_EVENT_TYPE_VALIDATOR_SCORE", - "number": "30", - "description": "Event indicating the validator score for the given epoch" - }, - { - "name": "BUS_EVENT_TYPE_EPOCH_UPDATE", - "number": "31", - "description": "Event indicating the start or end of an epoch" - }, - { - "name": "BUS_EVENT_TYPE_VALIDATOR_UPDATE", - "number": "32", - "description": "Event indicating that validator node has been updated" - }, - { - "name": "BUS_EVENT_TYPE_STAKE_LINKING", - "number": "33", - "description": "Event indicating a new staking event have been processed by the network" - }, - { - "name": "BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT", - "number": "34", - "description": "Event indicating the payout of a reward has been initiated" - }, - { - "name": "BUS_EVENT_TYPE_CHECKPOINT", - "number": "35", - "description": "Event indicating a new checkpoint was created" - }, - { - "name": "BUS_EVENT_TYPE_STREAM_START", - "number": "36", - "description": "Event indicating stream is starting" - }, - { - "name": "BUS_EVENT_TYPE_KEY_ROTATION", - "number": "37", - "description": "Event indicating key rotation took place" - }, - { - "name": "BUS_EVENT_TYPE_STATE_VAR", - "number": "38", - "description": "Event indicating state transitions in state variable consensus" - }, - { - "name": "BUS_EVENT_TYPE_NETWORK_LIMITS", - "number": "39", - "description": "Event indicating network limits set or updated" - }, - { - "name": "BUS_EVENT_TYPE_TRANSFER", - "number": "40", - "description": "Event indicating a update for a transfer" - }, - { - "name": "BUS_EVENT_TYPE_VALIDATOR_RANKING", - "number": "41", - "description": "Event indicating the ranking of validator and their status in Vega" - }, - { - "name": "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT", - "number": "42", - "description": "Event indicating a new multi sig signer event have been processed" - }, - { - "name": "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD", - "number": "43", - "description": "Event indicating the erc20 multi sig threshold have been updated" - }, - { - "name": "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED", - "number": "44", - "description": "Event indicating a new signer has been added to the ERC-20 multisig" - }, - { - "name": "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED", - "number": "45", - "description": "Event indicating a signer has been removed from the ERC-20 multisig" - }, - { - "name": "BUS_EVENT_TYPE_POSITION_STATE", - "number": "46", - "description": "Event indicating that a party's position has changed" - }, - { - "name": "BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION", - "number": "47", - "description": "Event indicating Ethereum key rotation took place" - }, - { - "name": "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL", - "number": "48", - "description": "Event indicating protocol upgrade proposal updates" - }, - { - "name": "BUS_EVENT_TYPE_BEGIN_BLOCK", - "number": "49", - "description": "Event indicating the core is starting to process a new block" - }, - { - "name": "BUS_EVENT_TYPE_END_BLOCK", - "number": "50", - "description": "Event indicating the core finished to process a block" - }, - { - "name": "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED", - "number": "51", - "description": "Event indicating the core is starting a protocol upgrade" - }, - { - "name": "BUS_EVENT_TYPE_SETTLE_MARKET", - "number": "52", - "description": "Event indicating the market has stopped and settled" - }, - { - "name": "BUS_EVENT_TYPE_TRANSACTION_RESULT", - "number": "53", - "description": "Event indicating the result of a transaction processed by the network" - }, - { - "name": "BUS_EVENT_TYPE_SNAPSHOT_TAKEN", - "number": "54", - "description": "Event indicating a snapshot was taken at this block height" - }, - { - "name": "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY", - "number": "55", - "description": "Event data node uses to notify that it is ready to upgrade" - }, - { - "name": "BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED", - "number": "56", - "description": "Event indicating parties had orders closed because they were distressed, but were not closed out." - }, - { - "name": "BUS_EVENT_TYPE_EXPIRED_ORDERS", - "number": "57", - "description": "Event indicating parties had orders closed because they were distressed, but were not closed out." - }, - { - "name": "BUS_EVENT_TYPE_DISTRESSED_POSITIONS", - "number": "58", - "description": "Event indicating parties have become, or were, distressed but still have an active position." - }, - { - "name": "BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION", - "number": "59", - "description": "Event indicating a spot liquidity provision has been created or updated." - }, - { - "name": "BUS_EVENT_TYPE_STOP_ORDER", - "number": "60", - "description": "Event indicating a stop order has been submitted or updated." - }, - { - "name": "BUS_EVENT_TYPE_FUNDING_PERIOD", - "number": "61", - "description": "Event indicating the start or end of a funding period." - }, - { - "name": "BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT", - "number": "62", - "description": "Event indicating a data point for a funding period has been received." - }, - { - "name": "BUS_EVENT_TYPE_TEAM_CREATED", - "number": "63", - "description": "Event indicating a team has been created." - }, - { - "name": "BUS_EVENT_TYPE_TEAM_UPDATED", - "number": "64", - "description": "Event indicating a team has been updated." - }, - { - "name": "BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM", - "number": "65", - "description": "Event indicating a referee switched team." - }, - { - "name": "BUS_EVENT_TYPE_REFEREE_JOINED_TEAM", - "number": "66", - "description": "Event indicating a referee joined a team." - }, - { - "name": "BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED", - "number": "67", - "description": "Event indicating a referral program started." - }, - { - "name": "BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED", - "number": "68", - "description": "Event indicating a referral program has been updated." - }, - { - "name": "BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED", - "number": "69", - "description": "Event indicating a referral program ended." - }, - { - "name": "BUS_EVENT_TYPE_REFERRAL_SET_CREATED", - "number": "70", - "description": "Event indicating a set has been created." - }, - { - "name": "BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET", - "number": "71", - "description": "Event indicating a referee joined a set." - }, - { - "name": "BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK", - "number": "72", - "description": "Event indicating the updated activity streak for a party" - }, - { - "name": "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED", - "number": "73", - "description": "Event indicating a volume discount program started." - }, - { - "name": "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED", - "number": "74", - "description": "Event indicating a volume discount program has been updated." - }, - { - "name": "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED", - "number": "75", - "description": "Event indicating a volume discount program ended." - }, - { - "name": "BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED", - "number": "76", - "description": "Event indicating the updated statistics for a referral set." - }, - { - "name": "BUS_EVENT_TYPE_VESTING_STATS_UPDATED", - "number": "77", - "description": "Event indicating the updated statistics for the vesting program." - }, - { - "name": "BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED", - "number": "78", - "description": "Event indicating the updated statistics for the volume discount." - }, - { - "name": "BUS_EVENT_TYPE_FEES_STATS_UPDATED", - "number": "79", - "description": "Event indicating the fees statistics per market at end of epoch" - }, - { - "name": "BUS_EVENT_TYPE_FUNDING_PAYMENTS", - "number": "80", - "description": "Event indicating a funding period has ended and resulted in funding payment transfers." - }, - { - "name": "BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED", - "number": "81", - "description": "Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch" - }, - { - "name": "BUS_EVENT_TYPE_VESTING_SUMMARY", - "number": "82", - "description": "Event used to report the summary of vesting and locked balances at the end of the epoch" - }, - { - "name": "BUS_EVENT_TYPE_TRANSFER_FEES_PAID", - "number": "83", - "description": "Event used to link ledger entries to the transfer that triggered the fees being collected." - }, - { - "name": "BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED", - "number": "84", - "description": "Event indicating that a party's available transfer fee discount has changed, per asset." - }, - { - "name": "BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED", - "number": "85", - "description": "Event indicating that a party updated their margin mode on a market." - }, - { - "name": "BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED", - "number": "86", - "description": "Event indicating that a party updated their profile." - }, - { - "name": "BUS_EVENT_TYPE_MARKET", - "number": "101", - "description": "Event indicating a market related event, for example when a market opens" - }, - { - "name": "BUS_EVENT_TYPE_TX_ERROR", - "number": "201", - "description": "Event used to report failed transactions back to a user, this is excluded from the ALL type" - } - ] - }, - { - "name": "Type", - "longName": "ERC20MultiSigSignerEvent.Type", - "fullName": "vega.events.v1.ERC20MultiSigSignerEvent.Type", - "description": "", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "TYPE_ADDED", - "number": "1", - "description": "" - }, - { - "name": "TYPE_REMOVED", - "number": "2", - "description": "" - } - ] - }, - { - "name": "Source", - "longName": "FundingPeriodDataPoint.Source", - "fullName": "vega.events.v1.FundingPeriodDataPoint.Source", - "description": "", - "values": [ - { - "name": "SOURCE_UNSPECIFIED", - "number": "0", - "description": "Default value" - }, - { - "name": "SOURCE_EXTERNAL", - "number": "1", - "description": "Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset." - }, - { - "name": "SOURCE_INTERNAL", - "number": "2", - "description": "Data point from within Vega such as the mark price after performing mark-to-market." - } - ] - }, - { - "name": "ProtocolUpgradeProposalStatus", - "longName": "ProtocolUpgradeProposalStatus", - "fullName": "vega.events.v1.ProtocolUpgradeProposalStatus", - "description": "", - "values": [ - { - "name": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING", - "number": "1", - "description": "The proposal is pending" - }, - { - "name": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED", - "number": "2", - "description": "The proposal is approved" - }, - { - "name": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED", - "number": "3", - "description": "The proposal is rejected" - } - ] - }, - { - "name": "Status", - "longName": "StakeLinking.Status", - "fullName": "vega.events.v1.StakeLinking.Status", - "description": "", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value" - }, - { - "name": "STATUS_PENDING", - "number": "1", - "description": "Indicates an event waiting for confirmation from the Vega network" - }, - { - "name": "STATUS_ACCEPTED", - "number": "2", - "description": "Indicates an event accepted by the Vega network" - }, - { - "name": "STATUS_REJECTED", - "number": "3", - "description": "Indicates an event rejected by the Vega network" - } - ] - }, - { - "name": "Type", - "longName": "StakeLinking.Type", - "fullName": "vega.events.v1.StakeLinking.Type", - "description": "", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "Default value" - }, - { - "name": "TYPE_LINK", - "number": "1", - "description": "Indicate of a stake deposit instruction" - }, - { - "name": "TYPE_UNLINK", - "number": "2", - "description": "Indicate of a stake remove instruction" - } - ] - }, - { - "name": "Status", - "longName": "Transfer.Status", - "fullName": "vega.events.v1.Transfer.Status", - "description": "", - "values": [ - { - "name": "STATUS_UNSPECIFIED", - "number": "0", - "description": "Default value" - }, - { - "name": "STATUS_PENDING", - "number": "1", - "description": "Indicates a transfer still being processed" - }, - { - "name": "STATUS_DONE", - "number": "2", - "description": "Indicates a transfer accepted by the Vega network" - }, - { - "name": "STATUS_REJECTED", - "number": "3", - "description": "Indicates a transfer rejected by the Vega network" - }, - { - "name": "STATUS_STOPPED", - "number": "4", - "description": "Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer" - }, - { - "name": "STATUS_CANCELLED", - "number": "5", - "description": "Indicates a transfer cancelled by the user" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "AuctionEvent", - "longName": "AuctionEvent", - "fullName": "vega.events.v1.AuctionEvent", - "description": "Auction event indicating a change in auction state, for example starting or ending an auction", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "opening_auction", - "description": "True if the event indicates an auction opening and False otherwise", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "leave", - "description": "True if the event indicates leaving auction mode and False otherwise", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start", - "description": "Timestamp containing the start time for an auction", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end", - "description": "Timestamp containing the end time for an auction", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trigger", - "description": "Reason this market is/was in auction", - "label": "", - "type": "AuctionTrigger", - "longType": "vega.AuctionTrigger", - "fullType": "vega.AuctionTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "extension_trigger", - "description": "If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction", - "label": "", - "type": "AuctionTrigger", - "longType": "vega.AuctionTrigger", - "fullType": "vega.AuctionTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BeginBlock", - "longName": "BeginBlock", - "fullName": "vega.events.v1.BeginBlock", - "description": "BeginBlock", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BusEvent", - "longName": "BusEvent", - "fullName": "vega.events.v1.BusEvent", - "description": "Bus event is a container for event bus events emitted by Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique event ID for the message", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block", - "description": "The batch or block of transactions that the events relate to", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "The type of bus event. Must be one of the list below:", - "label": "", - "type": "BusEventType", - "longType": "BusEventType", - "fullType": "vega.events.v1.BusEventType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_update", - "description": "Time update events", - "label": "", - "type": "TimeUpdate", - "longType": "TimeUpdate", - "fullType": "vega.events.v1.TimeUpdate", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "ledger_movements", - "description": "Transfer responses update events", - "label": "", - "type": "LedgerMovements", - "longType": "LedgerMovements", - "fullType": "vega.events.v1.LedgerMovements", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "position_resolution", - "description": "Position resolution events", - "label": "", - "type": "PositionResolution", - "longType": "PositionResolution", - "fullType": "vega.events.v1.PositionResolution", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "order", - "description": "Order events", - "label": "", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "account", - "description": "Account events", - "label": "", - "type": "Account", - "longType": "vega.Account", - "fullType": "vega.Account", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "party", - "description": "Party events", - "label": "", - "type": "Party", - "longType": "vega.Party", - "fullType": "vega.Party", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "trade", - "description": "Trade events", - "label": "", - "type": "Trade", - "longType": "vega.Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "margin_levels", - "description": "Margin level update events", - "label": "", - "type": "MarginLevels", - "longType": "vega.MarginLevels", - "fullType": "vega.MarginLevels", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "proposal", - "description": "Proposal events for governance", - "label": "", - "type": "Proposal", - "longType": "vega.Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "vote", - "description": "Vote events for governance", - "label": "", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "market_data", - "description": "Market data events", - "label": "", - "type": "MarketData", - "longType": "vega.MarketData", - "fullType": "vega.MarketData", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "node_signature", - "description": "Node signature events", - "label": "", - "type": "NodeSignature", - "longType": "vega.commands.v1.NodeSignature", - "fullType": "vega.commands.v1.NodeSignature", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "loss_socialization", - "description": "Loss socialization events", - "label": "", - "type": "LossSocialization", - "longType": "LossSocialization", - "fullType": "vega.events.v1.LossSocialization", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "settle_position", - "description": "Position settlement events", - "label": "", - "type": "SettlePosition", - "longType": "SettlePosition", - "fullType": "vega.events.v1.SettlePosition", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "settle_distressed", - "description": "Position distressed events", - "label": "", - "type": "SettleDistressed", - "longType": "SettleDistressed", - "fullType": "vega.events.v1.SettleDistressed", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "market_created", - "description": "Market created events", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset events", - "label": "", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "market_tick", - "description": "Market tick events", - "label": "", - "type": "MarketTick", - "longType": "MarketTick", - "fullType": "vega.events.v1.MarketTick", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "withdrawal", - "description": "Withdrawal events", - "label": "", - "type": "Withdrawal", - "longType": "vega.Withdrawal", - "fullType": "vega.Withdrawal", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "deposit", - "description": "Deposit events", - "label": "", - "type": "Deposit", - "longType": "vega.Deposit", - "fullType": "vega.Deposit", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "auction", - "description": "Auction events", - "label": "", - "type": "AuctionEvent", - "longType": "AuctionEvent", - "fullType": "vega.events.v1.AuctionEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "risk_factor", - "description": "Risk factor events", - "label": "", - "type": "RiskFactor", - "longType": "vega.RiskFactor", - "fullType": "vega.RiskFactor", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "network_parameter", - "description": "Network parameter events", - "label": "", - "type": "NetworkParameter", - "longType": "vega.NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "liquidity_provision", - "description": "LiquidityProvision events", - "label": "", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "market_updated", - "description": "Market created events", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "oracle_spec", - "description": "OracleSpec events", - "label": "", - "type": "OracleSpec", - "longType": "vega.OracleSpec", - "fullType": "vega.OracleSpec", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "oracle_data", - "description": "OracleData events", - "label": "", - "type": "OracleData", - "longType": "vega.OracleData", - "fullType": "vega.OracleData", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "delegation_balance", - "description": "Delegation balance events", - "label": "", - "type": "DelegationBalanceEvent", - "longType": "DelegationBalanceEvent", - "fullType": "vega.events.v1.DelegationBalanceEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "validator_score", - "description": "Validator score calculated", - "label": "", - "type": "ValidatorScoreEvent", - "longType": "ValidatorScoreEvent", - "fullType": "vega.events.v1.ValidatorScoreEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "epoch_event", - "description": "Epoch update events", - "label": "", - "type": "EpochEvent", - "longType": "EpochEvent", - "fullType": "vega.events.v1.EpochEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "validator_update", - "description": "Validator update events", - "label": "", - "type": "ValidatorUpdate", - "longType": "ValidatorUpdate", - "fullType": "vega.events.v1.ValidatorUpdate", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "stake_linking", - "description": "Staking event", - "label": "", - "type": "StakeLinking", - "longType": "StakeLinking", - "fullType": "vega.events.v1.StakeLinking", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "reward_payout", - "description": "Reward payout event", - "label": "", - "type": "RewardPayoutEvent", - "longType": "RewardPayoutEvent", - "fullType": "vega.events.v1.RewardPayoutEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "checkpoint", - "description": "Checkpoint was created", - "label": "", - "type": "CheckpointEvent", - "longType": "CheckpointEvent", - "fullType": "vega.events.v1.CheckpointEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "key_rotation", - "description": "Key rotation took place", - "label": "", - "type": "KeyRotation", - "longType": "KeyRotation", - "fullType": "vega.events.v1.KeyRotation", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "state_var", - "description": "State variable consensus state transition update", - "label": "", - "type": "StateVar", - "longType": "StateVar", - "fullType": "vega.events.v1.StateVar", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "network_limits", - "description": "Network limits events", - "label": "", - "type": "NetworkLimits", - "longType": "vega.NetworkLimits", - "fullType": "vega.NetworkLimits", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "transfer", - "description": "Transfer event", - "label": "", - "type": "Transfer", - "longType": "Transfer", - "fullType": "vega.events.v1.Transfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "ranking_event", - "description": "Ranking event", - "label": "", - "type": "ValidatorRankingEvent", - "longType": "ValidatorRankingEvent", - "fullType": "vega.events.v1.ValidatorRankingEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "erc20_multisig_signer_event", - "description": "ERC20 multi sig signer event", - "label": "", - "type": "ERC20MultiSigSignerEvent", - "longType": "ERC20MultiSigSignerEvent", - "fullType": "vega.events.v1.ERC20MultiSigSignerEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "erc20_multisig_set_threshold_event", - "description": "ERC20 multi sig set threshold event", - "label": "", - "type": "ERC20MultiSigThresholdSetEvent", - "longType": "ERC20MultiSigThresholdSetEvent", - "fullType": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "erc20_multisig_signer_added", - "description": "ERC20 multi sig signer added", - "label": "", - "type": "ERC20MultiSigSignerAdded", - "longType": "ERC20MultiSigSignerAdded", - "fullType": "vega.events.v1.ERC20MultiSigSignerAdded", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "erc20_multisig_signer_removed", - "description": "ERC20 multi sig signer removed", - "label": "", - "type": "ERC20MultiSigSignerRemoved", - "longType": "ERC20MultiSigSignerRemoved", - "fullType": "vega.events.v1.ERC20MultiSigSignerRemoved", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "position_state_event", - "description": "Position status for a party in a market", - "label": "", - "type": "PositionStateEvent", - "longType": "PositionStateEvent", - "fullType": "vega.events.v1.PositionStateEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "ethereum_key_rotation", - "description": "Ethereum key rotation took place", - "label": "", - "type": "EthereumKeyRotation", - "longType": "EthereumKeyRotation", - "fullType": "vega.events.v1.EthereumKeyRotation", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_event", - "description": "Protocol upgrade proposal updates", - "label": "", - "type": "ProtocolUpgradeEvent", - "longType": "ProtocolUpgradeEvent", - "fullType": "vega.events.v1.ProtocolUpgradeEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "begin_block", - "description": "Core is starting to process a new block", - "label": "", - "type": "BeginBlock", - "longType": "BeginBlock", - "fullType": "vega.events.v1.BeginBlock", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "end_block", - "description": "Core finished processing a block", - "label": "", - "type": "EndBlock", - "longType": "EndBlock", - "fullType": "vega.events.v1.EndBlock", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_started", - "description": "Core is starting a protocol upgrade", - "label": "", - "type": "ProtocolUpgradeStarted", - "longType": "ProtocolUpgradeStarted", - "fullType": "vega.events.v1.ProtocolUpgradeStarted", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "settle_market", - "description": "Settle market event for data-node to update positions for settled markets", - "label": "", - "type": "SettleMarket", - "longType": "SettleMarket", - "fullType": "vega.events.v1.SettleMarket", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "transaction_result", - "description": "Result of a transaction processed by the network", - "label": "", - "type": "TransactionResult", - "longType": "TransactionResult", - "fullType": "vega.events.v1.TransactionResult", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "core_snapshot_event", - "description": "Core snapshot has been taken at the end of the block", - "label": "", - "type": "CoreSnapshotData", - "longType": "CoreSnapshotData", - "fullType": "vega.events.v1.CoreSnapshotData", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_data_node_ready", - "description": "Core snapshot has been taken at the end of the block", - "label": "", - "type": "ProtocolUpgradeDataNodeReady", - "longType": "ProtocolUpgradeDataNodeReady", - "fullType": "vega.events.v1.ProtocolUpgradeDataNodeReady", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "distressed_orders", - "description": "Parties that had their orders closed because they were distressed", - "label": "", - "type": "DistressedOrders", - "longType": "DistressedOrders", - "fullType": "vega.events.v1.DistressedOrders", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "expired_orders", - "description": "Orders that expired for a given market", - "label": "", - "type": "ExpiredOrders", - "longType": "ExpiredOrders", - "fullType": "vega.events.v1.ExpiredOrders", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "distressed_positions", - "description": "Open positions on the market that are/were distressed", - "label": "", - "type": "DistressedPositions", - "longType": "DistressedPositions", - "fullType": "vega.events.v1.DistressedPositions", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "stop_order", - "description": "A stop order event", - "label": "", - "type": "StopOrderEvent", - "longType": "StopOrderEvent", - "fullType": "vega.events.v1.StopOrderEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "funding_period", - "description": "Start or end of a funding period.", - "label": "", - "type": "FundingPeriod", - "longType": "FundingPeriod", - "fullType": "vega.events.v1.FundingPeriod", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "funding_period_data_point", - "description": "Data point within a funding period.", - "label": "", - "type": "FundingPeriodDataPoint", - "longType": "FundingPeriodDataPoint", - "fullType": "vega.events.v1.FundingPeriodDataPoint", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "team_created", - "description": "Event notifying of the creation of a team.m", - "label": "", - "type": "TeamCreated", - "longType": "TeamCreated", - "fullType": "vega.events.v1.TeamCreated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "team_updated", - "description": "Event notifying of an update to a team.", - "label": "", - "type": "TeamUpdated", - "longType": "TeamUpdated", - "fullType": "vega.events.v1.TeamUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referee_switched_team", - "description": "Event notifying that a referee switched teams.", - "label": "", - "type": "RefereeSwitchedTeam", - "longType": "RefereeSwitchedTeam", - "fullType": "vega.events.v1.RefereeSwitchedTeam", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referee_joined_team", - "description": "Event notifying that a referee joined a team.", - "label": "", - "type": "RefereeJoinedTeam", - "longType": "RefereeJoinedTeam", - "fullType": "vega.events.v1.RefereeJoinedTeam", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referral_program_started", - "description": "Event notifying that a referral program has started.", - "label": "", - "type": "ReferralProgramStarted", - "longType": "ReferralProgramStarted", - "fullType": "vega.events.v1.ReferralProgramStarted", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referral_program_updated", - "description": "Event notifying that a referral program has been updated.", - "label": "", - "type": "ReferralProgramUpdated", - "longType": "ReferralProgramUpdated", - "fullType": "vega.events.v1.ReferralProgramUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referral_program_ended", - "description": "Event notifying that a referral program has ended.", - "label": "", - "type": "ReferralProgramEnded", - "longType": "ReferralProgramEnded", - "fullType": "vega.events.v1.ReferralProgramEnded", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referral_set_created", - "description": "Event notifying a referral set has been created.", - "label": "", - "type": "ReferralSetCreated", - "longType": "ReferralSetCreated", - "fullType": "vega.events.v1.ReferralSetCreated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referee_joined_referral_set", - "description": "Event notifying a referee has joined a referral set.", - "label": "", - "type": "RefereeJoinedReferralSet", - "longType": "RefereeJoinedReferralSet", - "fullType": "vega.events.v1.RefereeJoinedReferralSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "party_activity_streak", - "description": "Event notifying of an update to a party's activity streak", - "label": "", - "type": "PartyActivityStreak", - "longType": "PartyActivityStreak", - "fullType": "vega.events.v1.PartyActivityStreak", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "volume_discount_program_started", - "description": "Event notifying that a volume discount program has started.", - "label": "", - "type": "VolumeDiscountProgramStarted", - "longType": "VolumeDiscountProgramStarted", - "fullType": "vega.events.v1.VolumeDiscountProgramStarted", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "volume_discount_program_updated", - "description": "Event notifying that a volume discount program has been updated.", - "label": "", - "type": "VolumeDiscountProgramUpdated", - "longType": "VolumeDiscountProgramUpdated", - "fullType": "vega.events.v1.VolumeDiscountProgramUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "volume_discount_program_ended", - "description": "Event notifying that a volume discount program has ended.", - "label": "", - "type": "VolumeDiscountProgramEnded", - "longType": "VolumeDiscountProgramEnded", - "fullType": "vega.events.v1.VolumeDiscountProgramEnded", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "referral_set_stats_updated", - "description": "Event notifying of an update to a referral set's statistics.", - "label": "", - "type": "ReferralSetStatsUpdated", - "longType": "ReferralSetStatsUpdated", - "fullType": "vega.events.v1.ReferralSetStatsUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "vesting_stats_updated", - "description": "Event notifying of an update to the vesting statistics.", - "label": "", - "type": "VestingStatsUpdated", - "longType": "VestingStatsUpdated", - "fullType": "vega.events.v1.VestingStatsUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "volume_discount_stats_updated", - "description": "Event notifying of an update to the volume discount statistics.", - "label": "", - "type": "VolumeDiscountStatsUpdated", - "longType": "VolumeDiscountStatsUpdated", - "fullType": "vega.events.v1.VolumeDiscountStatsUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "fees_stats", - "description": "Event notifying of an update the fees stats for a market.", - "label": "", - "type": "FeesStats", - "longType": "FeesStats", - "fullType": "vega.events.v1.FeesStats", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "funding_payments", - "description": "Event notifying of funding payments at the end of a funding period.", - "label": "", - "type": "FundingPayments", - "longType": "FundingPayments", - "fullType": "vega.events.v1.FundingPayments", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "paid_liquidity_fees_stats", - "description": "Event notifying of an update to the liqudity fees stats for a market.", - "label": "", - "type": "PaidLiquidityFeesStats", - "longType": "PaidLiquidityFeesStats", - "fullType": "vega.events.v1.PaidLiquidityFeesStats", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "vesting_balances_summary", - "description": "Event notifying of an update to the vesting and locked balances.", - "label": "", - "type": "VestingBalancesSummary", - "longType": "VestingBalancesSummary", - "fullType": "vega.events.v1.VestingBalancesSummary", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "transfer_fees", - "description": "Event notifying of fees related to a transfer being paid.", - "label": "", - "type": "TransferFees", - "longType": "TransferFees", - "fullType": "vega.events.v1.TransferFees", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "transfer_fees_discount", - "description": "Event notifying of a party's available discounts for transfer fees, per asset.", - "label": "", - "type": "TransferFeesDiscount", - "longType": "TransferFeesDiscount", - "fullType": "vega.events.v1.TransferFeesDiscount", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "party_margin_mode_updated", - "description": "Event notifying of a party's margin mode update on a market.", - "label": "", - "type": "PartyMarginModeUpdated", - "longType": "PartyMarginModeUpdated", - "fullType": "vega.events.v1.PartyMarginModeUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "party_profile_updated", - "description": "Event notifying of a party's profile update.", - "label": "", - "type": "PartyProfileUpdated", - "longType": "PartyProfileUpdated", - "fullType": "vega.events.v1.PartyProfileUpdated", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "market", - "description": "Market tick events", - "label": "", - "type": "MarketEvent", - "longType": "MarketEvent", - "fullType": "vega.events.v1.MarketEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "tx_err_event", - "description": "Transaction error events, not included in the ALL event type", - "label": "", - "type": "TxErrorEvent", - "longType": "TxErrorEvent", - "fullType": "vega.events.v1.TxErrorEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "event", - "defaultValue": "" - }, - { - "name": "version", - "description": "Version of bus event", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CheckpointEvent", - "longName": "CheckpointEvent", - "fullName": "vega.events.v1.CheckpointEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CoreSnapshotData", - "longName": "CoreSnapshotData", - "fullName": "vega.events.v1.CoreSnapshotData", - "description": "CoreSnapshotData represents the core snapshot data.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "Block height at which snapshot was taken", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_hash", - "description": "Hash of the snapshot block", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "core_version", - "description": "Semver version number of the core.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_block", - "description": "Indicates if the snapshot is taken as part of protocol upgrade", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegationBalanceEvent", - "longName": "DelegationBalanceEvent", - "fullName": "vega.events.v1.DelegationBalanceEvent", - "description": "DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DistressedOrders", - "longName": "DistressedOrders", - "fullName": "vega.events.v1.DistressedOrders", - "description": "Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parties", - "description": "Slice of Party IDs i.e. each party's public key for the event", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DistressedPositions", - "longName": "DistressedPositions", - "fullName": "vega.events.v1.DistressedPositions", - "description": "Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "distressed_parties", - "description": "Slice of party IDs i.e. each party's public key, that are distressed but still have open volume", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "safe_parties", - "description": "Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerAdded", - "longName": "ERC20MultiSigSignerAdded", - "fullName": "vega.events.v1.ERC20MultiSigSignerAdded", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signature_id", - "description": "ID of the signature bundle", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_id", - "description": "Node ID of the Vega node to be added", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Time at which this happened", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_signer", - "description": "Ethereum address of the new signer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "Address of the submitter of the transaction", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce used.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch that the node was added for", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerEvent", - "longName": "ERC20MultiSigSignerEvent", - "fullName": "vega.events.v1.ERC20MultiSigSignerEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "", - "label": "", - "type": "Type", - "longType": "ERC20MultiSigSignerEvent.Type", - "fullType": "vega.events.v1.ERC20MultiSigSignerEvent.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signer", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_number", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerRemoved", - "longName": "ERC20MultiSigSignerRemoved", - "fullName": "vega.events.v1.ERC20MultiSigSignerRemoved", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signature_submitters", - "description": "List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set", - "label": "repeated", - "type": "ERC20MultiSigSignerRemovedSubmitter", - "longType": "ERC20MultiSigSignerRemovedSubmitter", - "fullType": "vega.events.v1.ERC20MultiSigSignerRemovedSubmitter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_id", - "description": "Node ID of the Vega node which is to be removed", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Time at which this happened", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "old_signer", - "description": "Ethereum address of the signer to be removed", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce used.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch that the node was removed for", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerRemovedSubmitter", - "longName": "ERC20MultiSigSignerRemovedSubmitter", - "fullName": "vega.events.v1.ERC20MultiSigSignerRemovedSubmitter", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signature_id", - "description": "Signature ID of the signer removed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "Address of the submitter of the transaction", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigThresholdSetEvent", - "longName": "ERC20MultiSigThresholdSetEvent", - "fullName": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_threshold", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_number", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EndBlock", - "longName": "EndBlock", - "fullName": "vega.events.v1.EndBlock", - "description": "EndBlock", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochEvent", - "longName": "EpochEvent", - "fullName": "vega.events.v1.EpochEvent", - "description": "Epoch details", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "seq", - "description": "Sequence number that increases by one each epoch", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "action", - "description": "Action tells us what action is taking place", - "label": "", - "type": "EpochAction", - "longType": "vega.EpochAction", - "fullType": "vega.EpochAction", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start_time", - "description": "Vega time at which this epoch started", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expire_time", - "description": "Vega time at which this epoch should end", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_time", - "description": "Vega time at which this epoch actually ended", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumKeyRotation", - "longName": "EthereumKeyRotation", - "fullName": "vega.events.v1.EthereumKeyRotation", - "description": "Event that contains information about an Ethereum key rotation", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID of the node that rotated their Ethereum key", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "old_address", - "description": "Ethereum address that was previously associated with the node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_address", - "description": "Ethereum address that is newly associated with the node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_height", - "description": "Block height when the key rotation took effect", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ExpiredOrders", - "longName": "ExpiredOrders", - "fullName": "vega.events.v1.ExpiredOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_ids", - "description": "Slice of expired order IDs", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FeesStats", - "longName": "FeesStats", - "fullName": "vega.events.v1.FeesStats", - "description": "Fees rewards and discounts paid / received per parties during an epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "Market the fees were paid in", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Settlement asset of the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch for which these stats where valid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_rewards_received", - "description": "Total referral rewards received by the referrer of the referral set.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer_rewards_generated", - "description": "Referral rewards generated by all referee taker fees.", - "label": "repeated", - "type": "ReferrerRewardsGenerated", - "longType": "ReferrerRewardsGenerated", - "fullType": "vega.events.v1.ReferrerRewardsGenerated", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referees_discount_applied", - "description": "Total referral discounts applied to all referee taker fees.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume_discount_applied", - "description": "Total volume discounts applied to all referee taker fees.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_maker_fees_received", - "description": "Total maker fees received by the maker side.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fees_generated", - "description": "Maker fees paid by all trade aggressors, and which makers the fees were paid to.", - "label": "repeated", - "type": "MakerFeesGenerated", - "longType": "MakerFeesGenerated", - "fullType": "vega.events.v1.MakerFeesGenerated", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_fees_paid_and_received", - "description": "Total trading fees received and paid by the party.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPayment", - "longName": "FundingPayment", - "fullName": "vega.events.v1.FundingPayment", - "description": "The amount gained or lost by a party as a result of a funding payment.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "ID of the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "The amount paid, this can be negative for parties who lost at the end of the funding period.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPayments", - "longName": "FundingPayments", - "fullName": "vega.events.v1.FundingPayments", - "description": "Event notifying of funding payments at the end of a funding period.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "ID of the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seq", - "description": "Sequence number of the funding period associated with these payments.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "payments", - "description": "List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.", - "label": "repeated", - "type": "FundingPayment", - "longType": "FundingPayment", - "fullType": "vega.events.v1.FundingPayment", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPeriod", - "longName": "FundingPeriod", - "fullName": "vega.events.v1.FundingPeriod", - "description": "Event notifying on the details of a funding interval for a perpetuals market.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "ID of the market for which this funding period relates to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seq", - "description": "Sequence number of the funding period.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start", - "description": "Time in Unix nanoseconds when the funding period started.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end", - "description": "Time in Unix nanoseconds when the funding period ended.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_end", - "defaultValue": "" - }, - { - "name": "funding_payment", - "description": "Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_payment", - "defaultValue": "" - }, - { - "name": "funding_rate", - "description": "Percentage difference between the time-weighted average price of the external and internal data point.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_funding_rate", - "defaultValue": "" - }, - { - "name": "internal_twap", - "description": "TWAP for this period based on the internal data-points.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_internal_twap", - "defaultValue": "" - }, - { - "name": "external_twap", - "description": "TWAP for this period based on the external data-points.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_external_twap", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPeriodDataPoint", - "longName": "FundingPeriodDataPoint", - "fullName": "vega.events.v1.FundingPeriodDataPoint", - "description": "Event notifying a data point for a funding period.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID which the data point relates to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seq", - "description": "Sequence number of the funding period this data point belongs to.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data_point_type", - "description": "Origin of the data point.", - "label": "", - "type": "Source", - "longType": "FundingPeriodDataPoint.Source", - "fullType": "vega.events.v1.FundingPeriodDataPoint.Source", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price of the asset as seen by this data point.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds of when the data point was received.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "twap", - "description": "The TWAP for this source with this data-point added.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "KeyRotation", - "longName": "KeyRotation", - "fullName": "vega.events.v1.KeyRotation", - "description": "Event that contains information about a Vega key rotation", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID of the node that rotated their Vega key", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "old_pub_key", - "description": "Vega public key that was previously associated with the node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_pub_key", - "description": "Vega public key that is newly associated with the node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_height", - "description": "Block height when the key rotation took effect", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LedgerMovements", - "longName": "LedgerMovements", - "fullName": "vega.events.v1.LedgerMovements", - "description": "Transfer responses event contains a collection of transfer information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ledger_movements", - "description": "One or more entries containing internal transfer information", - "label": "repeated", - "type": "LedgerMovement", - "longType": "vega.LedgerMovement", - "fullType": "vega.LedgerMovement", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LossSocialization", - "longName": "LossSocialization", - "fullName": "vega.events.v1.LossSocialization", - "description": "Loss socialization event contains details on the amount of wins unable to be distributed", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID (public key) for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount distributed", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MakerFeesGenerated", - "longName": "MakerFeesGenerated", - "fullName": "vega.events.v1.MakerFeesGenerated", - "description": "Maker fees generated by the trade aggressor", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "taker", - "description": "Party that paid the fees.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fees_paid", - "description": "Amount of maker fees paid by the taker to the maker.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketEvent", - "longName": "MarketEvent", - "fullName": "vega.events.v1.MarketEvent", - "description": "MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "payload", - "description": "Payload is a unique information string", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketTick", - "longName": "MarketTick", - "fullName": "vega.events.v1.MarketTick", - "description": "Market tick event contains the time value for when a particular market was last processed on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time", - "description": "Timestamp containing latest update from Vega blockchain aka Vega-time", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OneOffGovernanceTransfer", - "longName": "OneOffGovernanceTransfer", - "fullName": "vega.events.v1.OneOffGovernanceTransfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deliver_on", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OneOffTransfer", - "longName": "OneOffTransfer", - "fullName": "vega.events.v1.OneOffTransfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deliver_on", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PaidLiquidityFeesStats", - "longName": "PaidLiquidityFeesStats", - "fullName": "vega.events.v1.PaidLiquidityFeesStats", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "Market the fees were paid in.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Settlement asset of the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch for which these stats where valid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_fees_paid", - "description": "Total fees paid across all parties.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fees_paid_per_party", - "description": "Fees paid per party.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyActivityStreak", - "longName": "PartyActivityStreak", - "fullName": "vega.events.v1.PartyActivityStreak", - "description": "The updated activity streak of a party at end of epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "The party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "active_for", - "description": "How many epoch this party has been active for.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "inactive_for", - "description": "how many epoch this party has been inactive for.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "is_active", - "description": "Is this party considered active or not.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_distribution_activity_multiplier", - "description": "The current rewards distribution multiplier for this party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_vesting_activity_multiplier", - "description": "The vesting multiplier for this party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "The epoch this information is relevant to.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "traded_volume", - "description": "Party's traded volume at the end of the given epoch", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "open_volume", - "description": "Party's open interest volume at the end of the given epoch", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyAmount", - "longName": "PartyAmount", - "fullName": "vega.events.v1.PartyAmount", - "description": "A pair of a party and amount", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "Receiving party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount received.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum_amount", - "description": "Amount value in quantum.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyLockedBalance", - "longName": "PartyLockedBalance", - "fullName": "vega.events.v1.PartyLockedBalance", - "description": "A party's locked balance for a given asset.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "Asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "until_epoch", - "description": "Epoch in which the balance will be released.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "Locked balance.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyMarginModeUpdated", - "longName": "PartyMarginModeUpdated", - "fullName": "vega.events.v1.PartyMarginModeUpdated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Unique ID of the market in which the update happened.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Unique ID of the party that updated their margin mode.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_mode", - "description": "Updated margin mode.", - "label": "", - "type": "MarginMode", - "longType": "vega.MarginMode", - "fullType": "vega.MarginMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_factor", - "description": "Margin factor for the market. Isolated mode only.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_margin_factor", - "defaultValue": "" - }, - { - "name": "min_theoretical_margin_factor", - "description": "Minimum theoretical margin factor for the market. Isolated mode only.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_min_theoretical_margin_factor", - "defaultValue": "" - }, - { - "name": "max_theoretical_leverage", - "description": "Maximum theoretical leverage for the market. Isolated mode only.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_max_theoretical_leverage", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the update happened.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyProfileUpdated", - "longName": "PartyProfileUpdated", - "fullName": "vega.events.v1.PartyProfileUpdated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "updated_profile", - "description": "Party's profile updated.", - "label": "", - "type": "PartyProfile", - "longType": "vega.PartyProfile", - "fullType": "vega.PartyProfile", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyVestingBalance", - "longName": "PartyVestingBalance", - "fullName": "vega.events.v1.PartyVestingBalance", - "description": "Balance that is being vested for the party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "Asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "Balance that is vested.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyVestingStats", - "longName": "PartyVestingStats", - "fullName": "vega.events.v1.PartyVestingStats", - "description": "The vesting stats for a given party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "The party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_bonus_multiplier", - "description": "The bonus multiplier applied on the reward.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum_balance", - "description": "The balance of the party, in quantum.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyVestingSummary", - "longName": "PartyVestingSummary", - "fullName": "vega.events.v1.PartyVestingSummary", - "description": "Summary of a party's vesting balances", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "Party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_locked_balances", - "description": "List of locked balances.", - "label": "repeated", - "type": "PartyLockedBalance", - "longType": "PartyLockedBalance", - "fullType": "vega.events.v1.PartyLockedBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_vesting_balances", - "description": "List of vesting balances.", - "label": "repeated", - "type": "PartyVestingBalance", - "longType": "PartyVestingBalance", - "fullType": "vega.events.v1.PartyVestingBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyVolumeDiscountStats", - "longName": "PartyVolumeDiscountStats", - "fullName": "vega.events.v1.PartyVolumeDiscountStats", - "description": "Volume discount stats for a given party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount_factor", - "description": "Discount factor applied to fees.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "running_volume", - "description": "The party's running volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PositionResolution", - "longName": "PositionResolution", - "fullName": "vega.events.v1.PositionResolution", - "description": "Position resolution event contains information on distressed trades", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "distressed", - "description": "Number of distressed traders", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "closed", - "description": "Number of close outs", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mark_price", - "description": "Mark price as a string representing a scaled price", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PositionStateEvent", - "longName": "PositionStateEvent", - "fullName": "vega.events.v1.PositionStateEvent", - "description": "Position state event contains the current position state for a single party in a single market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID for this position update", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID for this position update", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "Current position", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "potential_buys", - "description": "Potential orders", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "potential_sells", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vw_buy_price", - "description": "Volume weighted prices", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vw_sell_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProtocolUpgradeDataNodeReady", - "longName": "ProtocolUpgradeDataNodeReady", - "fullName": "vega.events.v1.ProtocolUpgradeDataNodeReady", - "description": "Event indicating the data node is ready for protocol upgrade", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "last_block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProtocolUpgradeEvent", - "longName": "ProtocolUpgradeEvent", - "fullName": "vega.events.v1.ProtocolUpgradeEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "upgrade_block_height", - "description": "Block height at which to perform the upgrade", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_release_tag", - "description": "Release tag for the vega binary", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "approvers", - "description": "Tendermint validators that have agreed to the upgrade", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the proposal", - "label": "", - "type": "ProtocolUpgradeProposalStatus", - "longType": "ProtocolUpgradeProposalStatus", - "fullType": "vega.events.v1.ProtocolUpgradeProposalStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProtocolUpgradeStarted", - "longName": "ProtocolUpgradeStarted", - "fullName": "vega.events.v1.ProtocolUpgradeStarted", - "description": "Event indicating the core is starting a protocol upgrade", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "last_block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RecurringGovernanceTransfer", - "longName": "RecurringGovernanceTransfer", - "fullName": "vega.events.v1.RecurringGovernanceTransfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "start_epoch", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_epoch", - "description": "", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_end_epoch", - "defaultValue": "" - }, - { - "name": "dispatch_strategy", - "description": "", - "label": "optional", - "type": "DispatchStrategy", - "longType": "vega.DispatchStrategy", - "fullType": "vega.DispatchStrategy", - "ismap": false, - "isoneof": true, - "oneofdecl": "_dispatch_strategy", - "defaultValue": "" - } - ] - }, - { - "name": "RecurringTransfer", - "longName": "RecurringTransfer", - "fullName": "vega.events.v1.RecurringTransfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "start_epoch", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_epoch", - "description": "", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_end_epoch", - "defaultValue": "" - }, - { - "name": "factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "dispatch_strategy", - "description": "", - "label": "", - "type": "DispatchStrategy", - "longType": "vega.DispatchStrategy", - "fullType": "vega.DispatchStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RefereeJoinedReferralSet", - "longName": "RefereeJoinedReferralSet", - "fullName": "vega.events.v1.RefereeJoinedReferralSet", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "set_id", - "description": "Unique ID of the referral set the referee joined.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referee", - "description": "Party that joined the set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at", - "description": "Time in Unix nanoseconds when the party joined the set.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the party joined the set.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RefereeJoinedTeam", - "longName": "RefereeJoinedTeam", - "fullName": "vega.events.v1.RefereeJoinedTeam", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "The unique identifier of the team the referee joined.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referee", - "description": "The party that joined the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at", - "description": "Time in Unix nanoseconds when the party joined a team.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the party joined the team.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RefereeStats", - "longName": "RefereeStats", - "fullName": "vega.events.v1.RefereeStats", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Unique ID of the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount_factor", - "description": "Discount factor applied to the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_notional_taker_volume", - "description": "Current referee notional taker volume", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RefereeSwitchedTeam", - "longName": "RefereeSwitchedTeam", - "fullName": "vega.events.v1.RefereeSwitchedTeam", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_team_id", - "description": "The unique identifier of the team the referee left.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_team_id", - "description": "The unique identifier of the team joined.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referee", - "description": "The party that switched team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "switched_at", - "description": "Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the party switched the team.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralProgramEnded", - "longName": "ReferralProgramEnded", - "fullName": "vega.events.v1.ReferralProgramEnded", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Program update version.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "Unique ID of the referral program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ended_at", - "description": "Time in Unix nanoseconds when the referral program ended.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the referral program ended.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralProgramStarted", - "longName": "ReferralProgramStarted", - "fullName": "vega.events.v1.ReferralProgramStarted", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "program", - "description": "Referral program that has started.", - "label": "", - "type": "ReferralProgram", - "longType": "vega.ReferralProgram", - "fullType": "vega.ReferralProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "started_at", - "description": "Time in Unix nanoseconds when the referral program started.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the referral program started.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralProgramUpdated", - "longName": "ReferralProgramUpdated", - "fullName": "vega.events.v1.ReferralProgramUpdated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "program", - "description": "The updated referral program.", - "label": "", - "type": "ReferralProgram", - "longType": "vega.ReferralProgram", - "fullType": "vega.ReferralProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Time in Unix nanoseconds when the referral program was updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the referral program was updated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetCreated", - "longName": "ReferralSetCreated", - "fullName": "vega.events.v1.ReferralSetCreated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "set_id", - "description": "Unique ID of the created set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "Party that created the set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Time in Unix nanoseconds when the set was created.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Time in Unix nanoseconds when the set was updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetStatsUpdated", - "longName": "ReferralSetStatsUpdated", - "fullName": "vega.events.v1.ReferralSetStatsUpdated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "set_id", - "description": "Unique ID of the set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the set's statistics are updated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referral_set_running_notional_taker_volume", - "description": "Running volume for the set based on the window length of the current\nreferral program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referees_stats", - "description": "Referees' statistics for that epoch.", - "label": "repeated", - "type": "RefereeStats", - "longType": "RefereeStats", - "fullType": "vega.events.v1.RefereeStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_factor", - "description": "Reward factor applied to the trades.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards_multiplier", - "description": "Rewards multiplier applied to the trades.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards_factor_multiplier", - "description": "Rewards factor multiplier for the trades.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "was_eligible", - "description": "Indicates if the referral set was eligible to be part of the referral program.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer_taker_volume", - "description": "Taker volume of the referrer", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferrerRewardsGenerated", - "longName": "ReferrerRewardsGenerated", - "fullName": "vega.events.v1.ReferrerRewardsGenerated", - "description": "Rewards generated for referrers by each of their referees", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "referrer", - "description": "Referrer party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "generated_reward", - "description": "Amount of rewards generated per party.", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.events.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardPayoutEvent", - "longName": "RewardPayoutEvent", - "fullName": "vega.events.v1.RewardPayoutEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "percent_of_total_reward", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_type", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "locked_until_epoch", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum_amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "game_id", - "description": "", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_game_id", - "defaultValue": "" - } - ] - }, - { - "name": "SettleDistressed", - "longName": "SettleDistressed", - "fullName": "vega.events.v1.SettleDistressed", - "description": "Settle distressed event contains information on distressed trading parties who are closed out\n\nNote: Any PositionResolution event (market level) will most likely be followed by a number of these events", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID i.e. a party's public key for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin", - "description": "Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SettleMarket", - "longName": "SettleMarket", - "fullName": "vega.events.v1.SettleMarket", - "description": "Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price of settlement as a string", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "position_factor", - "description": "Position factor - 10 ^ number of position decimal places", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SettlePosition", - "longName": "SettlePosition", - "fullName": "vega.events.v1.SettlePosition", - "description": "Settle position event contains position settlement information for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID (public key) for the event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price of settlement as a string", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trade_settlements", - "description": "A collection of 1 or more trade settlements", - "label": "repeated", - "type": "TradeSettlement", - "longType": "TradeSettlement", - "fullType": "vega.events.v1.TradeSettlement", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "position_factor", - "description": "Position factor - 10 ^ number of position decimal places", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakeLinking", - "longName": "StakeLinking", - "fullName": "vega.events.v1.StakeLinking", - "description": "StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Internal ID for this staking event", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Stake linking event type.", - "label": "", - "type": "Type", - "longType": "StakeLinking.Type", - "fullType": "vega.events.v1.StakeLinking.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ts", - "description": "Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party", - "description": "Party to whom the event is directed at.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount of stake deposited or removed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the event.", - "label": "", - "type": "Status", - "longType": "StakeLinking.Status", - "fullType": "vega.events.v1.StakeLinking.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "finalized_at", - "description": "Time at which the Vega network finalised the state of the event.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "Hash of the transaction in which the event happened.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_height", - "description": "Block when the event happened.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "Block time.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log_index", - "description": "Log index.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_address", - "description": "Ethereum address from which the stake link was initiated.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StateVar", - "longName": "StateVar", - "fullName": "vega.events.v1.StateVar", - "description": "StateVar event updates on state changes in state variable consensus", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "event_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrderEvent", - "longName": "StopOrderEvent", - "fullName": "vega.events.v1.StopOrderEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "submission", - "description": "", - "label": "", - "type": "OrderSubmission", - "longType": "vega.commands.v1.OrderSubmission", - "fullType": "vega.commands.v1.OrderSubmission", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stop_order", - "description": "", - "label": "", - "type": "StopOrder", - "longType": "vega.StopOrder", - "fullType": "vega.StopOrder", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StreamStartEvent", - "longName": "StreamStartEvent", - "fullName": "vega.events.v1.StreamStartEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "chain_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamCreated", - "longName": "TeamCreated", - "fullName": "vega.events.v1.TeamCreated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "The unique identifier of the created team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "The party that created the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Name of the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team_url", - "description": "Link to the team's homepage.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_url", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "Link to an image of the team's avatar.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_avatar_url", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Time in Unix nanoseconds when the team is created.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "closed", - "description": "Tells if a party can join the team or not.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the team was created.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "allow_list", - "description": "List of public keys that are allowed to join the team.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamUpdated", - "longName": "TeamUpdated", - "fullName": "vega.events.v1.TeamUpdated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "The unique identifier for the updated team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Name of the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team_url", - "description": "Link to the team's homepage.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_url", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "Link to an image of the team's avatar.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_avatar_url", - "defaultValue": "" - }, - { - "name": "closed", - "description": "Tells if a party can join the team or not.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "allow_list", - "description": "List of public keys that are allowed to join the team.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TimeUpdate", - "longName": "TimeUpdate", - "fullName": "vega.events.v1.TimeUpdate", - "description": "Time update event contains the latest time update from Vega blockchain and indicates the start of a new block", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "timestamp", - "description": "Timestamp containing latest update from Vega blockchain aka Vega-time", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TradeSettlement", - "longName": "TradeSettlement", - "fullName": "vega.events.v1.TradeSettlement", - "description": "Trade settlement is part of the settle position event", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "size", - "description": "Size of trade settlement", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price of settlement as string (in asset decimals)", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_price", - "description": "Price of settlement as a string (in market decimals)", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TransactionResult", - "longName": "TransactionResult", - "fullName": "vega.events.v1.TransactionResult", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Unique party ID for the related party", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the transaction, did it succeed or an error was raised.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "Hash of the transaction\n\nTransaction itself as received by the network", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_submission", - "description": "", - "label": "", - "type": "OrderSubmission", - "longType": "vega.commands.v1.OrderSubmission", - "fullType": "vega.commands.v1.OrderSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "order_amendment", - "description": "", - "label": "", - "type": "OrderAmendment", - "longType": "vega.commands.v1.OrderAmendment", - "fullType": "vega.commands.v1.OrderAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "order_cancellation", - "description": "", - "label": "", - "type": "OrderCancellation", - "longType": "vega.commands.v1.OrderCancellation", - "fullType": "vega.commands.v1.OrderCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "proposal", - "description": "", - "label": "", - "type": "ProposalSubmission", - "longType": "vega.commands.v1.ProposalSubmission", - "fullType": "vega.commands.v1.ProposalSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "vote_submission", - "description": "", - "label": "", - "type": "VoteSubmission", - "longType": "vega.commands.v1.VoteSubmission", - "fullType": "vega.commands.v1.VoteSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "liquidity_provision_submission", - "description": "", - "label": "", - "type": "LiquidityProvisionSubmission", - "longType": "vega.commands.v1.LiquidityProvisionSubmission", - "fullType": "vega.commands.v1.LiquidityProvisionSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "withdraw_submission", - "description": "", - "label": "", - "type": "WithdrawSubmission", - "longType": "vega.commands.v1.WithdrawSubmission", - "fullType": "vega.commands.v1.WithdrawSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "delegate_submission", - "description": "", - "label": "", - "type": "DelegateSubmission", - "longType": "vega.commands.v1.DelegateSubmission", - "fullType": "vega.commands.v1.DelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "undelegate_submission", - "description": "", - "label": "", - "type": "UndelegateSubmission", - "longType": "vega.commands.v1.UndelegateSubmission", - "fullType": "vega.commands.v1.UndelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "liquidity_provision_cancellation", - "description": "", - "label": "", - "type": "LiquidityProvisionCancellation", - "longType": "vega.commands.v1.LiquidityProvisionCancellation", - "fullType": "vega.commands.v1.LiquidityProvisionCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "liquidity_provision_amendment", - "description": "", - "label": "", - "type": "LiquidityProvisionAmendment", - "longType": "vega.commands.v1.LiquidityProvisionAmendment", - "fullType": "vega.commands.v1.LiquidityProvisionAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "transfer", - "description": "", - "label": "", - "type": "Transfer", - "longType": "vega.commands.v1.Transfer", - "fullType": "vega.commands.v1.Transfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "cancel_transfer", - "description": "", - "label": "", - "type": "CancelTransfer", - "longType": "vega.commands.v1.CancelTransfer", - "fullType": "vega.commands.v1.CancelTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "announce_node", - "description": "", - "label": "", - "type": "AnnounceNode", - "longType": "vega.commands.v1.AnnounceNode", - "fullType": "vega.commands.v1.AnnounceNode", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "oracle_data_submission", - "description": "", - "label": "", - "type": "OracleDataSubmission", - "longType": "vega.commands.v1.OracleDataSubmission", - "fullType": "vega.commands.v1.OracleDataSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_proposal", - "description": "", - "label": "", - "type": "ProtocolUpgradeProposal", - "longType": "vega.commands.v1.ProtocolUpgradeProposal", - "fullType": "vega.commands.v1.ProtocolUpgradeProposal", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "issue_signatures", - "description": "", - "label": "", - "type": "IssueSignatures", - "longType": "vega.commands.v1.IssueSignatures", - "fullType": "vega.commands.v1.IssueSignatures", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "batch_market_instructions", - "description": "", - "label": "", - "type": "BatchMarketInstructions", - "longType": "vega.commands.v1.BatchMarketInstructions", - "fullType": "vega.commands.v1.BatchMarketInstructions", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "key_rotate_submission", - "description": "", - "label": "", - "type": "KeyRotateSubmission", - "longType": "vega.commands.v1.KeyRotateSubmission", - "fullType": "vega.commands.v1.KeyRotateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "ethereum_key_rotate_submission", - "description": "", - "label": "", - "type": "EthereumKeyRotateSubmission", - "longType": "vega.commands.v1.EthereumKeyRotateSubmission", - "fullType": "vega.commands.v1.EthereumKeyRotateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "stop_order_submission", - "description": "", - "label": "", - "type": "StopOrdersSubmission", - "longType": "vega.commands.v1.StopOrdersSubmission", - "fullType": "vega.commands.v1.StopOrdersSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "stop_order_cancellation", - "description": "", - "label": "", - "type": "StopOrdersCancellation", - "longType": "vega.commands.v1.StopOrdersCancellation", - "fullType": "vega.commands.v1.StopOrdersCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "create_referral_set", - "description": "", - "label": "", - "type": "CreateReferralSet", - "longType": "vega.commands.v1.CreateReferralSet", - "fullType": "vega.commands.v1.CreateReferralSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "update_referral_set", - "description": "", - "label": "", - "type": "UpdateReferralSet", - "longType": "vega.commands.v1.UpdateReferralSet", - "fullType": "vega.commands.v1.UpdateReferralSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "apply_referral_code", - "description": "", - "label": "", - "type": "ApplyReferralCode", - "longType": "vega.commands.v1.ApplyReferralCode", - "fullType": "vega.commands.v1.ApplyReferralCode", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "update_margin_mode", - "description": "", - "label": "", - "type": "UpdateMarginMode", - "longType": "vega.commands.v1.UpdateMarginMode", - "fullType": "vega.commands.v1.UpdateMarginMode", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "join_team", - "description": "", - "label": "", - "type": "JoinTeam", - "longType": "vega.commands.v1.JoinTeam", - "fullType": "vega.commands.v1.JoinTeam", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "batch_proposal", - "description": "", - "label": "", - "type": "BatchProposalSubmission", - "longType": "vega.commands.v1.BatchProposalSubmission", - "fullType": "vega.commands.v1.BatchProposalSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "update_party_profile", - "description": "", - "label": "", - "type": "UpdatePartyProfile", - "longType": "vega.commands.v1.UpdatePartyProfile", - "fullType": "vega.commands.v1.UpdatePartyProfile", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "success", - "description": "", - "label": "", - "type": "SuccessDetails", - "longType": "TransactionResult.SuccessDetails", - "fullType": "vega.events.v1.TransactionResult.SuccessDetails", - "ismap": false, - "isoneof": true, - "oneofdecl": "extra", - "defaultValue": "" - }, - { - "name": "failure", - "description": "", - "label": "", - "type": "FailureDetails", - "longType": "TransactionResult.FailureDetails", - "fullType": "vega.events.v1.TransactionResult.FailureDetails", - "ismap": false, - "isoneof": true, - "oneofdecl": "extra", - "defaultValue": "" - } - ] - }, - { - "name": "FailureDetails", - "longName": "TransactionResult.FailureDetails", - "fullName": "vega.events.v1.TransactionResult.FailureDetails", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "error", - "description": "Error message explaining the reason for the transaction failing processing", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SuccessDetails", - "longName": "TransactionResult.SuccessDetails", - "fullName": "vega.events.v1.TransactionResult.SuccessDetails", - "description": "TBD", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "Transfer", - "longName": "Transfer", - "fullName": "vega.events.v1.Transfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_account_type", - "description": "", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account_type", - "description": "", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "", - "label": "", - "type": "Status", - "longType": "Transfer.Status", - "fullType": "vega.events.v1.Transfer.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reason", - "description": "", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_reason", - "defaultValue": "" - }, - { - "name": "game_id", - "description": "ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_game_id", - "defaultValue": "" - }, - { - "name": "one_off", - "description": "", - "label": "", - "type": "OneOffTransfer", - "longType": "OneOffTransfer", - "fullType": "vega.events.v1.OneOffTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - }, - { - "name": "recurring", - "description": "", - "label": "", - "type": "RecurringTransfer", - "longType": "RecurringTransfer", - "fullType": "vega.events.v1.RecurringTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - }, - { - "name": "one_off_governance", - "description": "", - "label": "", - "type": "OneOffGovernanceTransfer", - "longType": "OneOffGovernanceTransfer", - "fullType": "vega.events.v1.OneOffGovernanceTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - }, - { - "name": "recurring_governance", - "description": "", - "label": "", - "type": "RecurringGovernanceTransfer", - "longType": "RecurringGovernanceTransfer", - "fullType": "vega.events.v1.RecurringGovernanceTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "kind", - "defaultValue": "" - } - ] - }, - { - "name": "TransferFees", - "longName": "TransferFees", - "fullName": "vega.events.v1.TransferFees", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfer_id", - "description": "Transfer that triggered the collection of fees.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount of fees paid.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "Epoch when the transfer was dispatched, and fees were paid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount_applied", - "description": "Amount that was subtracted from the transfer fee based on available discounts.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TransferFeesDiscount", - "longName": "TransferFeesDiscount", - "fullName": "vega.events.v1.TransferFeesDiscount", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "Party that the transfer fee discount applies to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset that the transfer fee discount is relevant to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount that the transfer fee was discounted by.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "Epoch in which the discount was first available.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TxErrorEvent", - "longName": "TxErrorEvent", - "fullName": "vega.events.v1.TxErrorEvent", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Unique party ID for the related party", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "err_msg", - "description": "Error message describing what went wrong", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_submission", - "description": "", - "label": "", - "type": "OrderSubmission", - "longType": "vega.commands.v1.OrderSubmission", - "fullType": "vega.commands.v1.OrderSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "order_amendment", - "description": "", - "label": "", - "type": "OrderAmendment", - "longType": "vega.commands.v1.OrderAmendment", - "fullType": "vega.commands.v1.OrderAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "order_cancellation", - "description": "", - "label": "", - "type": "OrderCancellation", - "longType": "vega.commands.v1.OrderCancellation", - "fullType": "vega.commands.v1.OrderCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "proposal", - "description": "", - "label": "", - "type": "ProposalSubmission", - "longType": "vega.commands.v1.ProposalSubmission", - "fullType": "vega.commands.v1.ProposalSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "vote_submission", - "description": "", - "label": "", - "type": "VoteSubmission", - "longType": "vega.commands.v1.VoteSubmission", - "fullType": "vega.commands.v1.VoteSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "liquidity_provision_submission", - "description": "", - "label": "", - "type": "LiquidityProvisionSubmission", - "longType": "vega.commands.v1.LiquidityProvisionSubmission", - "fullType": "vega.commands.v1.LiquidityProvisionSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "withdraw_submission", - "description": "", - "label": "", - "type": "WithdrawSubmission", - "longType": "vega.commands.v1.WithdrawSubmission", - "fullType": "vega.commands.v1.WithdrawSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "delegate_submission", - "description": "", - "label": "", - "type": "DelegateSubmission", - "longType": "vega.commands.v1.DelegateSubmission", - "fullType": "vega.commands.v1.DelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "undelegate_submission", - "description": "", - "label": "", - "type": "UndelegateSubmission", - "longType": "vega.commands.v1.UndelegateSubmission", - "fullType": "vega.commands.v1.UndelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "liquidity_provision_cancellation", - "description": "", - "label": "", - "type": "LiquidityProvisionCancellation", - "longType": "vega.commands.v1.LiquidityProvisionCancellation", - "fullType": "vega.commands.v1.LiquidityProvisionCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "liquidity_provision_amendment", - "description": "", - "label": "", - "type": "LiquidityProvisionAmendment", - "longType": "vega.commands.v1.LiquidityProvisionAmendment", - "fullType": "vega.commands.v1.LiquidityProvisionAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "transfer", - "description": "", - "label": "", - "type": "Transfer", - "longType": "vega.commands.v1.Transfer", - "fullType": "vega.commands.v1.Transfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "cancel_transfer", - "description": "", - "label": "", - "type": "CancelTransfer", - "longType": "vega.commands.v1.CancelTransfer", - "fullType": "vega.commands.v1.CancelTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "announce_node", - "description": "", - "label": "", - "type": "AnnounceNode", - "longType": "vega.commands.v1.AnnounceNode", - "fullType": "vega.commands.v1.AnnounceNode", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "oracle_data_submission", - "description": "", - "label": "", - "type": "OracleDataSubmission", - "longType": "vega.commands.v1.OracleDataSubmission", - "fullType": "vega.commands.v1.OracleDataSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_proposal", - "description": "", - "label": "", - "type": "ProtocolUpgradeProposal", - "longType": "vega.commands.v1.ProtocolUpgradeProposal", - "fullType": "vega.commands.v1.ProtocolUpgradeProposal", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "issue_signatures", - "description": "", - "label": "", - "type": "IssueSignatures", - "longType": "vega.commands.v1.IssueSignatures", - "fullType": "vega.commands.v1.IssueSignatures", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - }, - { - "name": "batch_market_instructions", - "description": "", - "label": "", - "type": "BatchMarketInstructions", - "longType": "vega.commands.v1.BatchMarketInstructions", - "fullType": "vega.commands.v1.BatchMarketInstructions", - "ismap": false, - "isoneof": true, - "oneofdecl": "transaction", - "defaultValue": "" - } - ] - }, - { - "name": "ValidatorRankingEvent", - "longName": "ValidatorRankingEvent", - "fullName": "vega.events.v1.ValidatorRankingEvent", - "description": "Event that explains the status of the validator for the coming epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake_score", - "description": "Stake based score - no anti-whaling", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "performance_score", - "description": "Performance base score", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ranking_score", - "description": "Final score", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "previous_status", - "description": "Status of the validator in the previous epoch", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_status", - "description": "Status of the validator in the next epoch", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch seq for which the status is valid", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tm_voting_power", - "description": "Tendermint voting power of the validator", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ValidatorScoreEvent", - "longName": "ValidatorScoreEvent", - "fullName": "vega.events.v1.ValidatorScoreEvent", - "description": "ValidatorScoreEvent is the score a validator gets for a given epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_score", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "normalised_score", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_performance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "raw_validator_score", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_status", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "multisig_score", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ValidatorUpdate", - "longName": "ValidatorUpdate", - "fullName": "vega.events.v1.ValidatorUpdate", - "description": "Validator update event contains information about validator node", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID of the validator node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_pub_key", - "description": "Vega public key of validator node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_address", - "description": "Ethereum public key of validator node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tm_pub_key", - "description": "Public key of Tendermint", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "info_url", - "description": "URL with more info on the node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "country", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Name of the validator", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "AvatarURL of the validator", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_pub_key_index", - "description": "Vega public key derivation index", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "added", - "description": "Flag indicating if the validator has been added to or removed from vega", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_epoch", - "description": "Epoch in which the announced pending node will start participating in the network", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter_address", - "description": "Ethereum public key being used as the submitter to allow automatic signature generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch in which the node was announced or removed from the network", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VestingBalancesSummary", - "longName": "VestingBalancesSummary", - "fullName": "vega.events.v1.VestingBalancesSummary", - "description": "Summary of the vesting and locked balances for an epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "epoch_seq", - "description": "Epoch for which these balances are valid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parties_vesting_summary", - "description": "Parties' summaries.", - "label": "repeated", - "type": "PartyVestingSummary", - "longType": "PartyVestingSummary", - "fullType": "vega.events.v1.PartyVestingSummary", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VestingStatsUpdated", - "longName": "VestingStatsUpdated", - "fullName": "vega.events.v1.VestingStatsUpdated", - "description": "Stats of all parties invested in the vesting program.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "at_epoch", - "description": "Epoch at which the vesting statistics are updated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stats", - "description": "All parties stats.", - "label": "repeated", - "type": "PartyVestingStats", - "longType": "PartyVestingStats", - "fullType": "vega.events.v1.PartyVestingStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountProgramEnded", - "longName": "VolumeDiscountProgramEnded", - "fullName": "vega.events.v1.VolumeDiscountProgramEnded", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Program update version.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "Unique ID of the volume discount program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ended_at", - "description": "Time in Unix nanoseconds when the referral program ended.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the referral program ended.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountProgramStarted", - "longName": "VolumeDiscountProgramStarted", - "fullName": "vega.events.v1.VolumeDiscountProgramStarted", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "program", - "description": "Volume discount program that has started.", - "label": "", - "type": "VolumeDiscountProgram", - "longType": "vega.VolumeDiscountProgram", - "fullType": "vega.VolumeDiscountProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "started_at", - "description": "Time in Unix nanoseconds when the volume discount program started.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the volume discount program started.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountProgramUpdated", - "longName": "VolumeDiscountProgramUpdated", - "fullName": "vega.events.v1.VolumeDiscountProgramUpdated", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "program", - "description": "The updated volume discount program.", - "label": "", - "type": "VolumeDiscountProgram", - "longType": "vega.VolumeDiscountProgram", - "fullType": "vega.VolumeDiscountProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Time in Unix nanoseconds when the volume discount program was updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the volume discount program was updated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountStatsUpdated", - "longName": "VolumeDiscountStatsUpdated", - "fullName": "vega.events.v1.VolumeDiscountStatsUpdated", - "description": "Stats of all parties eligible for volume discount.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "at_epoch", - "description": "Epoch at which the volume discount statistics are updated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stats", - "description": "All parties' stats.", - "label": "repeated", - "type": "PartyVolumeDiscountStats", - "longType": "PartyVolumeDiscountStats", - "fullType": "vega.events.v1.PartyVolumeDiscountStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "data-node/api/v2/trading_data.proto", - "description": "", - "package": "datanode.api.v2", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": true, - "enums": [ - { - "name": "AccountField", - "longName": "AccountField", - "fullName": "datanode.api.v2.AccountField", - "description": "List of the properties of an account, used for grouping", - "values": [ - { - "name": "ACCOUNT_FIELD_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "ACCOUNT_FIELD_ID", - "number": "1", - "description": "" - }, - { - "name": "ACCOUNT_FIELD_PARTY_ID", - "number": "2", - "description": "" - }, - { - "name": "ACCOUNT_FIELD_ASSET_ID", - "number": "3", - "description": "" - }, - { - "name": "ACCOUNT_FIELD_MARKET_ID", - "number": "4", - "description": "" - }, - { - "name": "ACCOUNT_FIELD_TYPE", - "number": "5", - "description": "" - } - ] - }, - { - "name": "LedgerEntryField", - "longName": "LedgerEntryField", - "fullName": "datanode.api.v2.LedgerEntryField", - "description": "List of fields for a ledger entry", - "values": [ - { - "name": "LEDGER_ENTRY_FIELD_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "LEDGER_ENTRY_FIELD_ACCOUNT_FROM_ID", - "number": "1", - "description": "" - }, - { - "name": "LEDGER_ENTRY_FIELD_ACCOUNT_TO_ID", - "number": "2", - "description": "" - }, - { - "name": "LEDGER_ENTRY_FIELD_TRANSFER_TYPE", - "number": "3", - "description": "" - } - ] - }, - { - "name": "Type", - "longName": "ListGovernanceDataRequest.Type", - "fullName": "datanode.api.v2.ListGovernanceDataRequest.Type", - "description": "Filter for the types of governance proposals to view", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "TYPE_ALL", - "number": "1", - "description": "List all proposals" - }, - { - "name": "TYPE_NEW_MARKET", - "number": "2", - "description": "List new market proposals" - }, - { - "name": "TYPE_UPDATE_MARKET", - "number": "3", - "description": "List update market proposals" - }, - { - "name": "TYPE_NETWORK_PARAMETERS", - "number": "4", - "description": "List change Vega network parameter proposals" - }, - { - "name": "TYPE_NEW_ASSET", - "number": "5", - "description": "New asset proposals" - }, - { - "name": "TYPE_NEW_FREE_FORM", - "number": "6", - "description": "Proposals for creating a new free form proposal" - }, - { - "name": "TYPE_UPDATE_ASSET", - "number": "7", - "description": "Update asset proposals" - }, - { - "name": "TYPE_NEW_SPOT_MARKET", - "number": "8", - "description": "Propose a new spot market" - }, - { - "name": "TYPE_UPDATE_SPOT_MARKET", - "number": "9", - "description": "Update an existing spot market" - }, - { - "name": "TYPE_NEW_TRANSFER", - "number": "10", - "description": "Propose a new transfer" - }, - { - "name": "TYPE_CANCEL_TRANSFER", - "number": "11", - "description": "Proposal to cancel a transfer" - }, - { - "name": "TYPE_UPDATE_MARKET_STATE", - "number": "12", - "description": "Proposal for updating the state of a market" - }, - { - "name": "TYPE_UPDATE_REFERRAL_PROGRAM", - "number": "13", - "description": "Proposal to update the referral program" - }, - { - "name": "TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM", - "number": "14", - "description": "Proposal to update the volume discount program" - } - ] - }, - { - "name": "Scope", - "longName": "ListTransfersRequest.Scope", - "fullName": "datanode.api.v2.ListTransfersRequest.Scope", - "description": "Defines the types of a dispatch strategy's scope the API can filter on.", - "values": [ - { - "name": "SCOPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "SCOPE_INDIVIDUAL", - "number": "1", - "description": "Matches transfers that have dispatch strategy scope of individual set." - }, - { - "name": "SCOPE_TEAM", - "number": "2", - "description": "Matches transfers that have dispatch strategy scope of team set." - } - ] - }, - { - "name": "Table", - "longName": "Table", - "fullName": "datanode.api.v2.Table", - "description": "", - "values": [ - { - "name": "TABLE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "TABLE_BALANCES", - "number": "1", - "description": "" - }, - { - "name": "TABLE_CHECKPOINTS", - "number": "2", - "description": "" - }, - { - "name": "TABLE_DELEGATIONS", - "number": "3", - "description": "" - }, - { - "name": "TABLE_LEDGER", - "number": "4", - "description": "" - }, - { - "name": "TABLE_ORDERS", - "number": "5", - "description": "" - }, - { - "name": "TABLE_TRADES", - "number": "6", - "description": "" - }, - { - "name": "TABLE_MARKET_DATA", - "number": "7", - "description": "" - }, - { - "name": "TABLE_MARGIN_LEVELS", - "number": "8", - "description": "" - }, - { - "name": "TABLE_POSITIONS", - "number": "9", - "description": "" - }, - { - "name": "TABLE_LIQUIDITY_PROVISIONS", - "number": "10", - "description": "" - }, - { - "name": "TABLE_MARKETS", - "number": "11", - "description": "" - }, - { - "name": "TABLE_DEPOSITS", - "number": "12", - "description": "" - }, - { - "name": "TABLE_WITHDRAWALS", - "number": "13", - "description": "" - }, - { - "name": "TABLE_BLOCKS", - "number": "14", - "description": "" - }, - { - "name": "TABLE_REWARDS", - "number": "15", - "description": "" - } - ] - }, - { - "name": "TransferDirection", - "longName": "TransferDirection", - "fullName": "datanode.api.v2.TransferDirection", - "description": "Direction of a transfer", - "values": [ - { - "name": "TRANSFER_DIRECTION_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "TRANSFER_DIRECTION_TRANSFER_FROM", - "number": "1", - "description": "" - }, - { - "name": "TRANSFER_DIRECTION_TRANSFER_TO", - "number": "2", - "description": "" - }, - { - "name": "TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM", - "number": "3", - "description": "" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "AccountBalance", - "longName": "AccountBalance", - "fullName": "datanode.api.v2.AccountBalance", - "description": "Represents the current balance of an account for an asset on Vega, for a particular owner or party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "owner", - "description": "Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset ID for the account.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID for the account, this field will be empty if the asset is in a general account.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Account type of this account.", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AccountEdge", - "longName": "AccountEdge", - "fullName": "datanode.api.v2.AccountEdge", - "description": "Account data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Account balance data.", - "label": "", - "type": "AccountBalance", - "longType": "AccountBalance", - "fullType": "datanode.api.v2.AccountBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages with reference to this account.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AccountFilter", - "longName": "AccountFilter", - "fullName": "datanode.api.v2.AccountFilter", - "description": "Account filter is used to filter account data.\n\nAn account is defined as a set of asset ID, type, party ID, and market ID.\n- Every account has an associated asset and type.\n- Certain account types such as the global reward pool for example, do not have an associated party.\n These are denoted by the special party ID 'network'.\n- Certain account types do not have an associated market such as the general party accounts, for example.\n These are denoted by the special market ID '' (an empty string).", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Restrict accounts to those holding balances in this asset ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_ids", - "description": "Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_ids", - "description": "Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "account_types", - "description": "Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.", - "label": "repeated", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AccountSnapshotPage", - "longName": "AccountSnapshotPage", - "fullName": "datanode.api.v2.AccountSnapshotPage", - "description": "'Initial image' snapshot containing current account balances - may be sent over several response messages", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accounts", - "description": "List of account balances.", - "label": "repeated", - "type": "AccountBalance", - "longType": "AccountBalance", - "fullType": "datanode.api.v2.AccountBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_page", - "description": "Indicator if the current page is the last one or not.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AccountUpdates", - "longName": "AccountUpdates", - "fullName": "datanode.api.v2.AccountUpdates", - "description": "List of account updates in the last block", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accounts", - "description": "List of account balances.", - "label": "repeated", - "type": "AccountBalance", - "longType": "AccountBalance", - "fullType": "datanode.api.v2.AccountBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AccountsConnection", - "longName": "AccountsConnection", - "fullName": "datanode.api.v2.AccountsConnection", - "description": "Page of accounts data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of accounts data and their corresponding cursors.", - "label": "repeated", - "type": "AccountEdge", - "longType": "AccountEdge", - "fullType": "datanode.api.v2.AccountEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AggregatedBalance", - "longName": "AggregatedBalance", - "fullName": "datanode.api.v2.AggregatedBalance", - "description": "AggregatedBalance data contains the balance of the set of requested accounts combined with corresponding\nparty ID, market ID and account type details", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds of the block in which the balance exists.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "Balance of the set of requested accounts at the time above.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "If grouping by party, the party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "If grouping by asset, the asset ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "If grouping by market, the market ID", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "account_type", - "description": "If grouping by account type, the account type.", - "label": "optional", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": true, - "oneofdecl": "_account_type", - "defaultValue": "" - } - ] - }, - { - "name": "AggregatedBalanceConnection", - "longName": "AggregatedBalanceConnection", - "fullName": "datanode.api.v2.AggregatedBalanceConnection", - "description": "Page of aggregated balance objects and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of aggregated balance data and their corresponding cursors.", - "label": "repeated", - "type": "AggregatedBalanceEdge", - "longType": "AggregatedBalanceEdge", - "fullType": "datanode.api.v2.AggregatedBalanceEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AggregatedBalanceEdge", - "longName": "AggregatedBalanceEdge", - "fullName": "datanode.api.v2.AggregatedBalanceEdge", - "description": "Aggregated balance data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Balance of the set of requested accounts.", - "label": "", - "type": "AggregatedBalance", - "longType": "AggregatedBalance", - "fullType": "datanode.api.v2.AggregatedBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AggregatedLedgerEntriesConnection", - "longName": "AggregatedLedgerEntriesConnection", - "fullName": "datanode.api.v2.AggregatedLedgerEntriesConnection", - "description": "Page of aggregated ledger entries data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of 'AggregatedLedgerEntry' data and their corresponding cursors.", - "label": "repeated", - "type": "AggregatedLedgerEntriesEdge", - "longType": "AggregatedLedgerEntriesEdge", - "fullType": "datanode.api.v2.AggregatedLedgerEntriesEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AggregatedLedgerEntriesEdge", - "longName": "AggregatedLedgerEntriesEdge", - "fullName": "datanode.api.v2.AggregatedLedgerEntriesEdge", - "description": "Represents the aggregated ledger entry data with corresponding cursor for it", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "'AggregatedLedgerEntry' data.", - "label": "", - "type": "AggregatedLedgerEntry", - "longType": "AggregatedLedgerEntry", - "fullType": "datanode.api.v2.AggregatedLedgerEntry", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AggregatedLedgerEntry", - "longName": "AggregatedLedgerEntry", - "fullName": "datanode.api.v2.AggregatedLedgerEntry", - "description": "Represents an aggregated view of ledger entry data, sender and receiver accounts,\ndetails and balances for both sides after the transfer has been made", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "timestamp", - "description": "Timestamp in Unix nanoseconds of the block in which the result is referring to.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantity", - "description": "Amount of ledger entries for the set of requested accounts at the time above.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfer_type", - "description": "Transfer type.", - "label": "", - "type": "TransferType", - "longType": "vega.TransferType", - "fullType": "vega.TransferType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Asset ID for the asset associated with the entry.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "from_account_type", - "description": "Type of account sent from.", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account_type", - "description": "Type of account received to.", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_account_party_id", - "description": "Sender's party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_from_account_party_id", - "defaultValue": "" - }, - { - "name": "to_account_party_id", - "description": "Receiver's party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_to_account_party_id", - "defaultValue": "" - }, - { - "name": "from_account_market_id", - "description": "Sender market ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_from_account_market_id", - "defaultValue": "" - }, - { - "name": "to_account_market_id", - "description": "Receiver market ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_to_account_market_id", - "defaultValue": "" - }, - { - "name": "from_account_balance", - "description": "Sender account balance after the transfer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account_balance", - "description": "Receiver account balance after the transfer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AssetEdge", - "longName": "AssetEdge", - "fullName": "datanode.api.v2.AssetEdge", - "description": "Assets data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Asset data returned.", - "label": "", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AssetsConnection", - "longName": "AssetsConnection", - "fullName": "datanode.api.v2.AssetsConnection", - "description": "Page of asset data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of assets data and their corresponding cursors.", - "label": "repeated", - "type": "AssetEdge", - "longType": "AssetEdge", - "fullType": "datanode.api.v2.AssetEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Candle", - "longName": "Candle", - "fullName": "datanode.api.v2.Candle", - "description": "Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "start", - "description": "Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_update", - "description": "Timestamp in Unix nanoseconds for the point in time when the candle was last updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "high", - "description": "Highest price for trading during the candle interval.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "low", - "description": "Lowest price for trading during the candle interval.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "open", - "description": "Open trade price.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "close", - "description": "Closing trade price.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "Total trading volume during the candle interval.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional", - "description": "Total notional value traded during the candle interval.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CandleDataConnection", - "longName": "CandleDataConnection", - "fullName": "datanode.api.v2.CandleDataConnection", - "description": "Page of candles data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of candle data items and their corresponding cursors.", - "label": "repeated", - "type": "CandleEdge", - "longType": "CandleEdge", - "fullType": "datanode.api.v2.CandleEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CandleEdge", - "longName": "CandleEdge", - "fullName": "datanode.api.v2.CandleEdge", - "description": "Candle data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Candlestick data, i.e. high, low, open, and closing prices for an interval of trading.", - "label": "", - "type": "Candle", - "longType": "Candle", - "fullType": "datanode.api.v2.Candle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Checkpoint", - "longName": "Checkpoint", - "fullName": "datanode.api.v2.Checkpoint", - "description": "Actual data regarding a checkpoint", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "hash", - "description": "Hash of the checkpoint.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_hash", - "description": "Block hash at which the checkpoint is made.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_block", - "description": "Block number at which the checkpoint is made.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CheckpointEdge", - "longName": "CheckpointEdge", - "fullName": "datanode.api.v2.CheckpointEdge", - "description": "Checkpoint data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data relating to a single checkpoint generated by the Vega network.", - "label": "", - "type": "Checkpoint", - "longType": "Checkpoint", - "fullType": "datanode.api.v2.Checkpoint", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CheckpointsConnection", - "longName": "CheckpointsConnection", - "fullName": "datanode.api.v2.CheckpointsConnection", - "description": "Page of checkpoints data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of checkpoints data and their corresponding cursors.", - "label": "repeated", - "type": "CheckpointEdge", - "longType": "CheckpointEdge", - "fullType": "datanode.api.v2.CheckpointEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CollateralIncreaseEstimate", - "longName": "CollateralIncreaseEstimate", - "fullName": "datanode.api.v2.CollateralIncreaseEstimate", - "description": "Estimates the additional funds needed to support the specified position", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "worst_case", - "description": "Estimate assuming slippage cap is applied", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_case", - "description": "Estimate assuming no slippage", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CoreSnapshotConnection", - "longName": "CoreSnapshotConnection", - "fullName": "datanode.api.v2.CoreSnapshotConnection", - "description": "Page of core snapshot data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of core snapshot data and their corresponding cursors.", - "label": "repeated", - "type": "CoreSnapshotEdge", - "longType": "CoreSnapshotEdge", - "fullType": "datanode.api.v2.CoreSnapshotEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CoreSnapshotEdge", - "longName": "CoreSnapshotEdge", - "fullName": "datanode.api.v2.CoreSnapshotEdge", - "description": "Core snapshot data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Core snapshot data.", - "label": "", - "type": "CoreSnapshotData", - "longType": "vega.events.v1.CoreSnapshotData", - "fullType": "vega.events.v1.CoreSnapshotData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DateRange", - "longName": "DateRange", - "fullName": "datanode.api.v2.DateRange", - "description": "Date range for queries that can return historical data\nTimestamps should be provided as unix time in Unix nanoseconds and are inclusive.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "start_timestamp", - "description": "Timestamp in Unix nanoseconds indicating the start of the date range.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_start_timestamp", - "defaultValue": "" - }, - { - "name": "end_timestamp", - "description": "Timestamp in Unix nanoseconds indicating the end of the date range.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_end_timestamp", - "defaultValue": "" - } - ] - }, - { - "name": "DelegationEdge", - "longName": "DelegationEdge", - "fullName": "datanode.api.v2.DelegationEdge", - "description": "Delegation data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "How much a party is delegating to a node and when.", - "label": "", - "type": "Delegation", - "longType": "vega.Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegationsConnection", - "longName": "DelegationsConnection", - "fullName": "datanode.api.v2.DelegationsConnection", - "description": "Page of delegations data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of delegations data and their corresponding cursors.", - "label": "repeated", - "type": "DelegationEdge", - "longType": "DelegationEdge", - "fullType": "datanode.api.v2.DelegationEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DepositEdge", - "longName": "DepositEdge", - "fullName": "datanode.api.v2.DepositEdge", - "description": "Deposits data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with a single deposit made on the Vega network.", - "label": "", - "type": "Deposit", - "longType": "vega.Deposit", - "fullType": "vega.Deposit", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DepositsConnection", - "longName": "DepositsConnection", - "fullName": "datanode.api.v2.DepositsConnection", - "description": "Page of deposits data received and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of deposits data and their corresponding cursors.", - "label": "repeated", - "type": "DepositEdge", - "longType": "DepositEdge", - "fullType": "datanode.api.v2.DepositEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerAddedBundle", - "longName": "ERC20MultiSigSignerAddedBundle", - "fullName": "datanode.api.v2.ERC20MultiSigSignerAddedBundle", - "description": "Signature bundle data to be added", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "new_signer", - "description": "Ethereum address of the signer to be removed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "Ethereum address of the submitter.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce used in the signing operation.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Unixnano timestamp for when the validator was added.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signatures", - "description": "Bundle of signatures from current validators to sign in the new signer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch in which the validator was added.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerAddedBundleEdge", - "longName": "ERC20MultiSigSignerAddedBundleEdge", - "fullName": "datanode.api.v2.ERC20MultiSigSignerAddedBundleEdge", - "description": "Signature bundle data that is to be added with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Signature bundle data to be added.", - "label": "", - "type": "ERC20MultiSigSignerAddedBundle", - "longType": "ERC20MultiSigSignerAddedBundle", - "fullType": "datanode.api.v2.ERC20MultiSigSignerAddedBundle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerAddedConnection", - "longName": "ERC20MultiSigSignerAddedConnection", - "fullName": "datanode.api.v2.ERC20MultiSigSignerAddedConnection", - "description": "Page of signature data items to be added and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of signature bundle data and their corresponding cursors.", - "label": "repeated", - "type": "ERC20MultiSigSignerAddedBundleEdge", - "longType": "ERC20MultiSigSignerAddedBundleEdge", - "fullType": "datanode.api.v2.ERC20MultiSigSignerAddedBundleEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerAddedEdge", - "longName": "ERC20MultiSigSignerAddedEdge", - "fullName": "datanode.api.v2.ERC20MultiSigSignerAddedEdge", - "description": "Signature data that is to be added with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Signature data to be added.", - "label": "", - "type": "ERC20MultiSigSignerAdded", - "longType": "vega.events.v1.ERC20MultiSigSignerAdded", - "fullType": "vega.events.v1.ERC20MultiSigSignerAdded", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerRemovedBundle", - "longName": "ERC20MultiSigSignerRemovedBundle", - "fullName": "datanode.api.v2.ERC20MultiSigSignerRemovedBundle", - "description": "Signature bundle data to be removed", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "old_signer", - "description": "Ethereum address of the signer to be removed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "Ethereum address of the submitter.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce used in the signing operation.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Unixnano timestamp for when the validator was added.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signatures", - "description": "Bundle of signatures from current validators to sign in the new signer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch in which the validator was removed.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerRemovedBundleEdge", - "longName": "ERC20MultiSigSignerRemovedBundleEdge", - "fullName": "datanode.api.v2.ERC20MultiSigSignerRemovedBundleEdge", - "description": "Signature bundle data to be removed, with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Signature bundle data to be added.", - "label": "", - "type": "ERC20MultiSigSignerRemovedBundle", - "longType": "ERC20MultiSigSignerRemovedBundle", - "fullType": "datanode.api.v2.ERC20MultiSigSignerRemovedBundle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerRemovedConnection", - "longName": "ERC20MultiSigSignerRemovedConnection", - "fullName": "datanode.api.v2.ERC20MultiSigSignerRemovedConnection", - "description": "Page of signature data items to be removed and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of signature bundle data and their corresponding cursors.", - "label": "repeated", - "type": "ERC20MultiSigSignerRemovedBundleEdge", - "longType": "ERC20MultiSigSignerRemovedBundleEdge", - "fullType": "datanode.api.v2.ERC20MultiSigSignerRemovedBundleEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigSignerRemovedEdge", - "longName": "ERC20MultiSigSignerRemovedEdge", - "fullName": "datanode.api.v2.ERC20MultiSigSignerRemovedEdge", - "description": "Signature data to be removed with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Signature data to be removed.", - "label": "", - "type": "ERC20MultiSigSignerRemoved", - "longType": "vega.events.v1.ERC20MultiSigSignerRemoved", - "fullType": "vega.events.v1.ERC20MultiSigSignerRemoved", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochRewardSummaryConnection", - "longName": "EpochRewardSummaryConnection", - "fullName": "datanode.api.v2.EpochRewardSummaryConnection", - "description": "Page of rewards summary data for epoch and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of rewards summary data for epochs and their corresponding cursors.", - "label": "repeated", - "type": "EpochRewardSummaryEdge", - "longType": "EpochRewardSummaryEdge", - "fullType": "datanode.api.v2.EpochRewardSummaryEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochRewardSummaryEdge", - "longName": "EpochRewardSummaryEdge", - "fullName": "datanode.api.v2.EpochRewardSummaryEdge", - "description": "Rewards summary data for epoch with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Rewards summary data for epoch.", - "label": "", - "type": "EpochRewardSummary", - "longType": "vega.EpochRewardSummary", - "fullType": "vega.EpochRewardSummary", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EstimateFeeRequest", - "longName": "EstimateFeeRequest", - "fullName": "datanode.api.v2.EstimateFeeRequest", - "description": "Request to fetch the estimated fee if an order were to trade immediately", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID, used to specify the fee factors.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price at which the potential order is expected to trade.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "Size at which the potential order is expected to trade.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EstimateFeeResponse", - "longName": "EstimateFeeResponse", - "fullName": "datanode.api.v2.EstimateFeeResponse", - "description": "Response that is received from EstimateFeeRequest, contains the estimated fees for a given order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "fee", - "description": "Summary of the estimated fees for this order if it were to trade now.", - "label": "", - "type": "Fee", - "longType": "vega.Fee", - "fullType": "vega.Fee", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EstimateMarginRequest", - "longName": "EstimateMarginRequest", - "fullName": "datanode.api.v2.EstimateMarginRequest", - "description": "Request to fetch the estimated MarginLevels if an order were to trade immediately", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID for the order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID of the order.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "side", - "description": "Order side - indicator for Seller or Buyer side.", - "label": "", - "type": "Side", - "longType": "vega.Side", - "fullType": "vega.Side", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of the order.", - "label": "", - "type": "Type", - "longType": "vega.Order.Type", - "fullType": "vega.Order.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "Size of order.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price of the asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ], - "options": { - "deprecated": true - } - }, - { - "name": "EstimateMarginResponse", - "longName": "EstimateMarginResponse", - "fullName": "datanode.api.v2.EstimateMarginResponse", - "description": "Response to an estimate margin request, containing the estimated margin levels for a given order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "margin_levels", - "description": "Summary of the estimated margins for this order if it were to trade now.", - "label": "", - "type": "MarginLevels", - "longType": "vega.MarginLevels", - "fullType": "vega.MarginLevels", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ], - "options": { - "deprecated": true - } - }, - { - "name": "EstimatePositionRequest", - "longName": "EstimatePositionRequest", - "fullName": "datanode.api.v2.EstimatePositionRequest", - "description": "Request for the estimated margin level, margin account balance change, and liquidation price for the specified position.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to estimate position for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "open_volume", - "description": "Open volume. This field is a signed integer scaled to the market's position decimal places.\nA negative number denotes a short position.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_entry_price", - "description": "Average entry price corresponding to the open volume. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "orders", - "description": "Open and/or hypothetical orders.", - "label": "repeated", - "type": "OrderInfo", - "longType": "OrderInfo", - "fullType": "datanode.api.v2.OrderInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_account_balance", - "description": "Margin account balance. Needs to be provided scaled to asset decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "general_account_balance", - "description": "General account balance. Needs to be provided scaled to asset decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_margin_account_balance", - "description": "Order margin account balance. Needs to be provided scaled to asset decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_mode", - "description": "Margin mode for the party, cross margin or isolated margin.", - "label": "", - "type": "MarginMode", - "longType": "vega.MarginMode", - "fullType": "vega.MarginMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_factor", - "description": "Margin factor to be used along with isolated margin mode", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_margin_factor", - "defaultValue": "" - }, - { - "name": "include_collateral_increase_in_available_collateral", - "description": "Whether the estimated collateral increase should be included in available collateral for liquidation price calculation in isolated margin mode.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_include_collateral_increase_in_available_collateral", - "defaultValue": "" - }, - { - "name": "scale_liquidation_price_to_market_decimals", - "description": "Whether the liquidation price estimates should be scaled to market decimal places or by asset decimal places. If not set, asset decimal places are used.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_scale_liquidation_price_to_market_decimals", - "defaultValue": "" - } - ] - }, - { - "name": "EstimatePositionResponse", - "longName": "EstimatePositionResponse", - "fullName": "datanode.api.v2.EstimatePositionResponse", - "description": "Response for the estimated margin level, margin account balance change, and liquidation price for the specified position.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "margin", - "description": "Margin level range estimate for the specified position.", - "label": "", - "type": "MarginEstimate", - "longType": "MarginEstimate", - "fullType": "datanode.api.v2.MarginEstimate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "collateral_increase_estimate", - "description": "Estimated margin account balance increase.", - "label": "", - "type": "CollateralIncreaseEstimate", - "longType": "CollateralIncreaseEstimate", - "fullType": "datanode.api.v2.CollateralIncreaseEstimate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidation", - "description": "Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request.", - "label": "", - "type": "LiquidationEstimate", - "longType": "LiquidationEstimate", - "fullType": "datanode.api.v2.LiquidationEstimate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EstimateTransferFeeRequest", - "longName": "EstimateTransferFeeRequest", - "fullName": "datanode.api.v2.EstimateTransferFeeRequest", - "description": "Request an estimation of transfer fee and discount", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_account", - "description": "Sender's ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_account_type", - "description": "Type of account sent from.", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account", - "description": "Receiver's ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to be transferred.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Asset ID for the asset associated with the transaction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EstimateTransferFeeResponse", - "longName": "EstimateTransferFeeResponse", - "fullName": "datanode.api.v2.EstimateTransferFeeResponse", - "description": "Results of estimation of transfer fee and the fee discount", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "fee", - "description": "Estimated fee for the transfer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount", - "description": "Discount applied to the fee.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumKeyRotationEdge", - "longName": "EthereumKeyRotationEdge", - "fullName": "datanode.api.v2.EthereumKeyRotationEdge", - "description": "Ethereum key rotation data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data relating to an Ethereum key rotation performed by a node on the Vega network.", - "label": "", - "type": "EthereumKeyRotation", - "longType": "vega.events.v1.EthereumKeyRotation", - "fullType": "vega.events.v1.EthereumKeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthereumKeyRotationsConnection", - "longName": "EthereumKeyRotationsConnection", - "fullName": "datanode.api.v2.EthereumKeyRotationsConnection", - "description": "Page of Ethereum key rotations data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of Ethereum key rotations data and their corresponding cursors.", - "label": "repeated", - "type": "EthereumKeyRotationEdge", - "longType": "EthereumKeyRotationEdge", - "fullType": "datanode.api.v2.EthereumKeyRotationEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ExportLedgerEntriesRequest", - "longName": "ExportLedgerEntriesRequest", - "fullName": "datanode.api.v2.ExportLedgerEntriesRequest", - "description": "Request that is sent when exporting ledger entries to csv", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict exported ledger entries to those relating to the given party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Restrict exported ledger entries to those relating to the given asset ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Date range to export ledger entries for.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - } - ] - }, - { - "name": "ExportNetworkHistoryRequest", - "longName": "ExportNetworkHistoryRequest", - "fullName": "datanode.api.v2.ExportNetworkHistoryRequest", - "description": "Request to export network history data in CSV format", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_block", - "description": "Block to begin exporting from. Must be the first block of a history segment,\nwhich by default are 1000 blocks each; in that case - 1, 1001, 2001 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_block", - "description": "Last block to export up to and including. Must be the last block of a history segment\nwhich by default are 1000 blocks each; in that case - 1000, 2000, 3000 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "table", - "description": "Table to export data from.", - "label": "", - "type": "Table", - "longType": "Table", - "fullType": "datanode.api.v2.Table", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FeesStatsForParty", - "longName": "FeesStatsForParty", - "fullName": "datanode.api.v2.FeesStatsForParty", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Settlement asset of the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_rewards_received", - "description": "Total referral rewards received by referrer of the referral set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referees_discount_applied", - "description": "Total referral discounts applied to referee fees.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume_discount_applied", - "description": "Total volume discounts applied to referee fees.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_maker_fees_received", - "description": "Total maker fees received by the maker side.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPayment", - "longName": "FundingPayment", - "fullName": "datanode.api.v2.FundingPayment", - "description": "A funding payment for a party on a perpetual market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party that received the funding payment.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market that produced the funding payment.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "funding_period_seq", - "description": "Funding period sequence this payment was calculated from.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "Timestamp, in Unix nanoseconds, at which this funding payment occured.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Funding payment amount, where a positive value indicates an earned payment received and a negative value a loss.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPaymentConnection", - "longName": "FundingPaymentConnection", - "fullName": "datanode.api.v2.FundingPaymentConnection", - "description": "Page of funding payment data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of funding payment data and their corresponding cursors.", - "label": "repeated", - "type": "FundingPaymentEdge", - "longType": "FundingPaymentEdge", - "fullType": "datanode.api.v2.FundingPaymentEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPaymentEdge", - "longName": "FundingPaymentEdge", - "fullName": "datanode.api.v2.FundingPaymentEdge", - "description": "Funding payment data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Funding payment data.", - "label": "", - "type": "FundingPayment", - "longType": "FundingPayment", - "fullType": "datanode.api.v2.FundingPayment", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPeriodConnection", - "longName": "FundingPeriodConnection", - "fullName": "datanode.api.v2.FundingPeriodConnection", - "description": "Page of funding period data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of funding period data and their corresponding cursors.", - "label": "repeated", - "type": "FundingPeriodEdge", - "longType": "FundingPeriodEdge", - "fullType": "datanode.api.v2.FundingPeriodEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPeriodDataPointConnection", - "longName": "FundingPeriodDataPointConnection", - "fullName": "datanode.api.v2.FundingPeriodDataPointConnection", - "description": "Page of funding period data points and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of funding period data points and their corresponding cursors.", - "label": "repeated", - "type": "FundingPeriodDataPointEdge", - "longType": "FundingPeriodDataPointEdge", - "fullType": "datanode.api.v2.FundingPeriodDataPointEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPeriodDataPointEdge", - "longName": "FundingPeriodDataPointEdge", - "fullName": "datanode.api.v2.FundingPeriodDataPointEdge", - "description": "Funding period data point with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Funding period data point.", - "label": "", - "type": "FundingPeriodDataPoint", - "longType": "vega.events.v1.FundingPeriodDataPoint", - "fullType": "vega.events.v1.FundingPeriodDataPoint", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FundingPeriodEdge", - "longName": "FundingPeriodEdge", - "fullName": "datanode.api.v2.FundingPeriodEdge", - "description": "Funding period data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Funding period data.", - "label": "", - "type": "FundingPeriod", - "longType": "vega.events.v1.FundingPeriod", - "fullType": "vega.events.v1.FundingPeriod", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Game", - "longName": "Game", - "fullName": "datanode.api.v2.Game", - "description": "Data relating to a game.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID of the game", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "Epoch at which the last game metrics were captured.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "participants", - "description": "The number of participants in the game.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team", - "description": "Team entities that are participating in the game", - "label": "", - "type": "TeamGameEntities", - "longType": "TeamGameEntities", - "fullType": "datanode.api.v2.TeamGameEntities", - "ismap": false, - "isoneof": true, - "oneofdecl": "entities", - "defaultValue": "" - }, - { - "name": "individual", - "description": "Individual entities that are participating in the game", - "label": "", - "type": "IndividualGameEntities", - "longType": "IndividualGameEntities", - "fullType": "datanode.api.v2.IndividualGameEntities", - "ismap": false, - "isoneof": true, - "oneofdecl": "entities", - "defaultValue": "" - } - ] - }, - { - "name": "GameEdge", - "longName": "GameEdge", - "fullName": "datanode.api.v2.GameEdge", - "description": "Game information and corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Game data.", - "label": "", - "type": "Game", - "longType": "Game", - "fullType": "datanode.api.v2.Game", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GamesConnection", - "longName": "GamesConnection", - "fullName": "datanode.api.v2.GamesConnection", - "description": "Page of games data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of games data and their corresponding cursors.", - "label": "repeated", - "type": "GameEdge", - "longType": "GameEdge", - "fullType": "datanode.api.v2.GameEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetActiveNetworkHistoryPeerAddressesRequest", - "longName": "GetActiveNetworkHistoryPeerAddressesRequest", - "fullName": "datanode.api.v2.GetActiveNetworkHistoryPeerAddressesRequest", - "description": "Request to get the addresses of active network history peers", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetActiveNetworkHistoryPeerAddressesResponse", - "longName": "GetActiveNetworkHistoryPeerAddressesResponse", - "fullName": "datanode.api.v2.GetActiveNetworkHistoryPeerAddressesResponse", - "description": "Response containing the addresses of active network history peers", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ip_addresses", - "description": "List of IP addresses for the active peers.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetAssetRequest", - "longName": "GetAssetRequest", - "fullName": "datanode.api.v2.GetAssetRequest", - "description": "Request for obtaining asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Asset ID to get data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetAssetResponse", - "longName": "GetAssetResponse", - "fullName": "datanode.api.v2.GetAssetResponse", - "description": "Response from getting an asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "Asset information that is returned.", - "label": "", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetBalanceHistoryRequest", - "longName": "GetBalanceHistoryRequest", - "fullName": "datanode.api.v2.GetBalanceHistoryRequest", - "description": "Request that is used when querying balance history", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "filter", - "description": "Account filter contains values that can be set in order to limit balance history data to them.", - "label": "", - "type": "AccountFilter", - "longType": "AccountFilter", - "fullType": "datanode.api.v2.AccountFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "group_by", - "description": "By default the net balances of all the accounts specified by the filter are returned.\nIf a list of fields is given in group_by, split out those balances by the supplied criteria.", - "label": "repeated", - "type": "AccountField", - "longType": "AccountField", - "fullType": "datanode.api.v2.AccountField", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - } - ] - }, - { - "name": "GetBalanceHistoryResponse", - "longName": "GetBalanceHistoryResponse", - "fullName": "datanode.api.v2.GetBalanceHistoryResponse", - "description": "Response that is received when querying for balance history", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "balances", - "description": "Page of aggregated balances with the corresponding page information.", - "label": "", - "type": "AggregatedBalanceConnection", - "longType": "AggregatedBalanceConnection", - "fullType": "datanode.api.v2.AggregatedBalanceConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetCurrentReferralProgramRequest", - "longName": "GetCurrentReferralProgramRequest", - "fullName": "datanode.api.v2.GetCurrentReferralProgramRequest", - "description": "Request to get the current referral program", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetCurrentReferralProgramResponse", - "longName": "GetCurrentReferralProgramResponse", - "fullName": "datanode.api.v2.GetCurrentReferralProgramResponse", - "description": "Response containing the current referral program", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "current_referral_program", - "description": "Referral program currently activated on the network.", - "label": "", - "type": "ReferralProgram", - "longType": "ReferralProgram", - "fullType": "datanode.api.v2.ReferralProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetCurrentVolumeDiscountProgramRequest", - "longName": "GetCurrentVolumeDiscountProgramRequest", - "fullName": "datanode.api.v2.GetCurrentVolumeDiscountProgramRequest", - "description": "Request to get the current referral program", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetCurrentVolumeDiscountProgramResponse", - "longName": "GetCurrentVolumeDiscountProgramResponse", - "fullName": "datanode.api.v2.GetCurrentVolumeDiscountProgramResponse", - "description": "Response containing the current referral program", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "current_volume_discount_program", - "description": "Volume discount program currently activated on the network.", - "label": "", - "type": "VolumeDiscountProgram", - "longType": "VolumeDiscountProgram", - "fullType": "datanode.api.v2.VolumeDiscountProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetDepositRequest", - "longName": "GetDepositRequest", - "fullName": "datanode.api.v2.GetDepositRequest", - "description": "Request to get data about a specific deposit by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Deposit ID to return data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetDepositResponse", - "longName": "GetDepositResponse", - "fullName": "datanode.api.v2.GetDepositResponse", - "description": "Response that is received from getting deposit data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deposit", - "description": "Deposit matching the ID from the request.", - "label": "", - "type": "Deposit", - "longType": "vega.Deposit", - "fullType": "vega.Deposit", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetERC20ListAssetBundleRequest", - "longName": "GetERC20ListAssetBundleRequest", - "fullName": "datanode.api.v2.GetERC20ListAssetBundleRequest", - "description": "Request for listing the signature bundle to an ERC-20 token in the collateral bridge", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Asset ID of the asset bundle requested.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetERC20ListAssetBundleResponse", - "longName": "GetERC20ListAssetBundleResponse", - "fullName": "datanode.api.v2.GetERC20ListAssetBundleResponse", - "description": "Response from listing the signature bundle to an ERC-20 token in the collateral bridge", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_source", - "description": "Address of the asset on Ethereum.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_asset_id", - "description": "Asset ID for the underlying Vega asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signatures", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetERC20SetAssetLimitsBundleRequest", - "longName": "GetERC20SetAssetLimitsBundleRequest", - "fullName": "datanode.api.v2.GetERC20SetAssetLimitsBundleRequest", - "description": "Request for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal_id", - "description": "Proposal ID of the asset update proposal.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetERC20SetAssetLimitsBundleResponse", - "longName": "GetERC20SetAssetLimitsBundleResponse", - "fullName": "datanode.api.v2.GetERC20SetAssetLimitsBundleResponse", - "description": "Response for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_source", - "description": "Address of the asset on Ethereum.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_asset_id", - "description": "Asset ID for the underlying Vega asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lifetime_limit", - "description": "Lifetime limit deposit for this asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "threshold", - "description": "Threshold withdraw for this asset.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signatures", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetERC20WithdrawalApprovalRequest", - "longName": "GetERC20WithdrawalApprovalRequest", - "fullName": "datanode.api.v2.GetERC20WithdrawalApprovalRequest", - "description": "Request to get all information required to bundle the call to finalise the withdrawal on the erc20 bridge", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "withdrawal_id", - "description": "Withdrawal ID to retrieve.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetERC20WithdrawalApprovalResponse", - "longName": "GetERC20WithdrawalApprovalResponse", - "fullName": "datanode.api.v2.GetERC20WithdrawalApprovalResponse", - "description": "Response with all information required to bundle the call to finalise the withdrawal on the erc20 bridge\nfunction withdraw_asset(address asset_source, uint256 asset_id, uint256 amount, uint256 expiry, uint256 nonce, bytes memory signatures)", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_source", - "description": "Address of asset on Ethereum.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "Amount to be withdrawn.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signatures", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: 0x + sig1 + sig2 + ... + sixN.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "target_address", - "description": "Ethereum address, prefixed with `0x`, that will receive the withdrawn assets.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "creation", - "description": "Creation timestamps.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetEpochRequest", - "longName": "GetEpochRequest", - "fullName": "datanode.api.v2.GetEpochRequest", - "description": "Request to fetch epoch data\nProvide either the epoch ID or the block height to get the epoch for. If both are provided, the epoch ID will be used.\nIf both are omitted, the current epoch will be returned.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Epoch ID. If provided, returns the epoch with the given ID.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_id", - "defaultValue": "" - }, - { - "name": "block", - "description": "Block height. If provided, returns the epoch that the given block is in.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_block", - "defaultValue": "" - } - ] - }, - { - "name": "GetEpochResponse", - "longName": "GetEpochResponse", - "fullName": "datanode.api.v2.GetEpochResponse", - "description": "Response from getting epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "epoch", - "description": "Data specific to a single epoch on the Vega network. This includes the epoch number,\nstart and end times, and the nodes that participated in the epoch.", - "label": "", - "type": "Epoch", - "longType": "vega.Epoch", - "fullType": "vega.Epoch", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetFeesStatsForPartyRequest", - "longName": "GetFeesStatsForPartyRequest", - "fullName": "datanode.api.v2.GetFeesStatsForPartyRequest", - "description": "Request that is sent to retrieve fees statistics for a given party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict fees statistics to those for the given party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Restrict fees statistics to those related to the given asset.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "from_epoch", - "description": "Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_from_epoch", - "defaultValue": "" - }, - { - "name": "to_epoch", - "description": "Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_to_epoch", - "defaultValue": "" - } - ] - }, - { - "name": "GetFeesStatsForPartyResponse", - "longName": "GetFeesStatsForPartyResponse", - "fullName": "datanode.api.v2.GetFeesStatsForPartyResponse", - "description": "Response that is sent when requesting fees statistics for a given party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "fees_stats_for_party", - "description": "Fees statistics for the given request.", - "label": "repeated", - "type": "FeesStatsForParty", - "longType": "FeesStatsForParty", - "fullType": "datanode.api.v2.FeesStatsForParty", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetFeesStatsRequest", - "longName": "GetFeesStatsRequest", - "fullName": "datanode.api.v2.GetFeesStatsRequest", - "description": "Request that is sent to retrieve fees statistics.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Restrict fee statistics to those related for the given market.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Restrict fee statistics to those related for the given asset.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch to get referral fee statistics for. If not set, the last complete epoch is used.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch_seq", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Restrict fee statistics to those for the given party.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - } - ] - }, - { - "name": "GetFeesStatsResponse", - "longName": "GetFeesStatsResponse", - "fullName": "datanode.api.v2.GetFeesStatsResponse", - "description": "Response that is sent when requesting fees statistics.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "fees_stats", - "description": "Fees statistics for the given request.", - "label": "", - "type": "FeesStats", - "longType": "vega.events.v1.FeesStats", - "fullType": "vega.events.v1.FeesStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetGovernanceDataRequest", - "longName": "GetGovernanceDataRequest", - "fullName": "datanode.api.v2.GetGovernanceDataRequest", - "description": "Request to get governance data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "proposal_id", - "description": "Proposal ID to get governance data for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_proposal_id", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Reference to get proposal data for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_reference", - "defaultValue": "" - } - ] - }, - { - "name": "GetGovernanceDataResponse", - "longName": "GetGovernanceDataResponse", - "fullName": "datanode.api.v2.GetGovernanceDataResponse", - "description": "Response from getting governance data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "data", - "description": "Governance data content, i.e. proposal and votes for and against.", - "label": "", - "type": "GovernanceData", - "longType": "vega.GovernanceData", - "fullType": "vega.GovernanceData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetLastTradeRequest", - "longName": "GetLastTradeRequest", - "fullName": "datanode.api.v2.GetLastTradeRequest", - "description": "Request for the latest trade that occurred on Vega for a given market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to retrieve the last trade for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetLastTradeResponse", - "longName": "GetLastTradeResponse", - "fullName": "datanode.api.v2.GetLastTradeResponse", - "description": "Response for the latest trade that occurred on Vega for a given market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "trade", - "description": "Information about the trade, if one is found.", - "label": "", - "type": "Trade", - "longType": "vega.Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetLatestMarketDataRequest", - "longName": "GetLatestMarketDataRequest", - "fullName": "datanode.api.v2.GetLatestMarketDataRequest", - "description": "Request that is sent when listing the latest market data for a given market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to retrieve market data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetLatestMarketDataResponse", - "longName": "GetLatestMarketDataResponse", - "fullName": "datanode.api.v2.GetLatestMarketDataResponse", - "description": "Response that is received when listing the latest market data for a given market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_data", - "description": "Market data that was requested.", - "label": "", - "type": "MarketData", - "longType": "vega.MarketData", - "fullType": "vega.MarketData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetLatestMarketDepthRequest", - "longName": "GetLatestMarketDepthRequest", - "fullName": "datanode.api.v2.GetLatestMarketDepthRequest", - "description": "Request that is sent when requesting latest market depth data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to request market depth for, required field.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_depth", - "description": "Maximum market depth.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_max_depth", - "defaultValue": "" - } - ] - }, - { - "name": "GetLatestMarketDepthResponse", - "longName": "GetLatestMarketDepthResponse", - "fullName": "datanode.api.v2.GetLatestMarketDepthResponse", - "description": "Response that is received when latest market depth data is queried", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID of the depth levels returned.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buy", - "description": "Zero or more price levels for the buy side of the market depth data.", - "label": "repeated", - "type": "PriceLevel", - "longType": "vega.PriceLevel", - "fullType": "vega.PriceLevel", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sell", - "description": "Zero or more price levels for the sell side of the market depth data.", - "label": "repeated", - "type": "PriceLevel", - "longType": "vega.PriceLevel", - "fullType": "vega.PriceLevel", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_trade", - "description": "Last trade recorded on Vega.", - "label": "", - "type": "Trade", - "longType": "vega.Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sequence_number", - "description": "Sequence number incremented after each update.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetMarketDataHistoryByIDRequest", - "longName": "GetMarketDataHistoryByIDRequest", - "fullName": "datanode.api.v2.GetMarketDataHistoryByIDRequest", - "description": "Request that is sent for getting Market Data History", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to request data history for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start_timestamp", - "description": "Timestamp in Unix nanoseconds indicating the start of the date range.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_start_timestamp", - "defaultValue": "" - }, - { - "name": "end_timestamp", - "description": "Timestamp in Unix nanoseconds indicating the end of the date range.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_end_timestamp", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "GetMarketDataHistoryByIDResponse", - "longName": "GetMarketDataHistoryByIDResponse", - "fullName": "datanode.api.v2.GetMarketDataHistoryByIDResponse", - "description": "Response that is received when querying Market Data History", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_data", - "description": "Page of market data history with the corresponding page information.", - "label": "", - "type": "MarketDataConnection", - "longType": "MarketDataConnection", - "fullType": "datanode.api.v2.MarketDataConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetMarketRequest", - "longName": "GetMarketRequest", - "fullName": "datanode.api.v2.GetMarketRequest", - "description": "Request for getting a market by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID of the market to retrieve data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetMarketResponse", - "longName": "GetMarketResponse", - "fullName": "datanode.api.v2.GetMarketResponse", - "description": "Response from getting a market by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "Information about the market requested.", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetMostRecentNetworkHistorySegmentRequest", - "longName": "GetMostRecentNetworkHistorySegmentRequest", - "fullName": "datanode.api.v2.GetMostRecentNetworkHistorySegmentRequest", - "description": "Request to get the most recent history segment", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetMostRecentNetworkHistorySegmentResponse", - "longName": "GetMostRecentNetworkHistorySegmentResponse", - "fullName": "datanode.api.v2.GetMostRecentNetworkHistorySegmentResponse", - "description": "Response from getting most recent history segment", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "segment", - "description": "Data relating to a history segment created by a Vega data node.", - "label": "", - "type": "HistorySegment", - "longType": "HistorySegment", - "fullType": "datanode.api.v2.HistorySegment", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "swarm_key_seed", - "description": "Key seed for the swarm section.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNetworkDataRequest", - "longName": "GetNetworkDataRequest", - "fullName": "datanode.api.v2.GetNetworkDataRequest", - "description": "Request to get network data", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetNetworkDataResponse", - "longName": "GetNetworkDataResponse", - "fullName": "datanode.api.v2.GetNetworkDataResponse", - "description": "Response from getting network data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_data", - "description": "Summary of information with respect to nodes on the Vega network.", - "label": "", - "type": "NodeData", - "longType": "vega.NodeData", - "fullType": "vega.NodeData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNetworkHistoryBootstrapPeersRequest", - "longName": "GetNetworkHistoryBootstrapPeersRequest", - "fullName": "datanode.api.v2.GetNetworkHistoryBootstrapPeersRequest", - "description": "Request to get the nodes network history bootstrap peers", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetNetworkHistoryBootstrapPeersResponse", - "longName": "GetNetworkHistoryBootstrapPeersResponse", - "fullName": "datanode.api.v2.GetNetworkHistoryBootstrapPeersResponse", - "description": "Response containing the nodes network history bootstrap peers", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "bootstrap_peers", - "description": "List of peers that can be used to bootstrap a Vega data node.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNetworkHistoryStatusRequest", - "longName": "GetNetworkHistoryStatusRequest", - "fullName": "datanode.api.v2.GetNetworkHistoryStatusRequest", - "description": "Request to get the status of network history", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetNetworkHistoryStatusResponse", - "longName": "GetNetworkHistoryStatusResponse", - "fullName": "datanode.api.v2.GetNetworkHistoryStatusResponse", - "description": "Response containing the status of network history", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ipfs_address", - "description": "IPFS address of the data node currently connected to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "swarm_key", - "description": "Swarm key used by the IPFS swarm.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "swarm_key_seed", - "description": "Swarm key seed used by the IPFS swarm.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "connected_peers", - "description": "List of peers connected to the IPFS swarm.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNetworkLimitsRequest", - "longName": "GetNetworkLimitsRequest", - "fullName": "datanode.api.v2.GetNetworkLimitsRequest", - "description": "Request that is used to query current network limits", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetNetworkLimitsResponse", - "longName": "GetNetworkLimitsResponse", - "fullName": "datanode.api.v2.GetNetworkLimitsResponse", - "description": "Response received when querying the current network limits", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "limits", - "description": "List of received network limits.", - "label": "", - "type": "NetworkLimits", - "longType": "vega.NetworkLimits", - "fullType": "vega.NetworkLimits", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNetworkParameterRequest", - "longName": "GetNetworkParameterRequest", - "fullName": "datanode.api.v2.GetNetworkParameterRequest", - "description": "Request for a single network parameter", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "Key identifying the network parameter.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNetworkParameterResponse", - "longName": "GetNetworkParameterResponse", - "fullName": "datanode.api.v2.GetNetworkParameterResponse", - "description": "Response that is received when getting a network parameter", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "network_parameter", - "description": "Network parameter key and value.", - "label": "", - "type": "NetworkParameter", - "longType": "vega.NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNodeRequest", - "longName": "GetNodeRequest", - "fullName": "datanode.api.v2.GetNodeRequest", - "description": "Request to get node data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Node ID to get data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetNodeResponse", - "longName": "GetNodeResponse", - "fullName": "datanode.api.v2.GetNodeResponse", - "description": "Response from getting node", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data specific to a single node on the Vega network.", - "label": "", - "type": "Node", - "longType": "vega.Node", - "fullType": "vega.Node", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetOracleSpecRequest", - "longName": "GetOracleSpecRequest", - "fullName": "datanode.api.v2.GetOracleSpecRequest", - "description": "Request to get a specific oracle spec by its ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "oracle_spec_id", - "description": "Oracle spec ID to request data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetOracleSpecResponse", - "longName": "GetOracleSpecResponse", - "fullName": "datanode.api.v2.GetOracleSpecResponse", - "description": "Response for a oracle spec", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "oracle_spec", - "description": "External data spec matching the ID.", - "label": "", - "type": "OracleSpec", - "longType": "vega.OracleSpec", - "fullType": "vega.OracleSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetOrderRequest", - "longName": "GetOrderRequest", - "fullName": "datanode.api.v2.GetOrderRequest", - "description": "Request that is sent when executing the query for getting a single order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "order_id", - "description": "Order ID to retrieve order information for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "version", - "description": "Historic version number of the order to return. If not set, the most current version will be returned.", - "label": "optional", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": true, - "oneofdecl": "_version", - "defaultValue": "" - } - ] - }, - { - "name": "GetOrderResponse", - "longName": "GetOrderResponse", - "fullName": "datanode.api.v2.GetOrderResponse", - "description": "Response received from the query for getting a single order", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "order", - "description": "Order details, if one was found.", - "label": "", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetPartyActivityStreakRequest", - "longName": "GetPartyActivityStreakRequest", - "fullName": "datanode.api.v2.GetPartyActivityStreakRequest", - "description": "Request to get a party's activity streaks across epochs", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID to get the activity streak for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "Epoch to get the activity streak for. If not set, the last complete epoch is used.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch", - "defaultValue": "" - } - ] - }, - { - "name": "GetPartyActivityStreakResponse", - "longName": "GetPartyActivityStreakResponse", - "fullName": "datanode.api.v2.GetPartyActivityStreakResponse", - "description": "Response when getting a party's activity streaks across epochs", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "activity_streak", - "description": "Party's activity streak in a given epoch.", - "label": "", - "type": "PartyActivityStreak", - "longType": "vega.events.v1.PartyActivityStreak", - "fullType": "vega.events.v1.PartyActivityStreak", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetPartyRequest", - "longName": "GetPartyRequest", - "fullName": "datanode.api.v2.GetPartyRequest", - "description": "Request to get party by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID to retrieve party information for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetPartyResponse", - "longName": "GetPartyResponse", - "fullName": "datanode.api.v2.GetPartyResponse", - "description": "Response from getting party by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "Data for the party requested.", - "label": "", - "type": "Party", - "longType": "vega.Party", - "fullType": "vega.Party", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetPartyVestingStatsRequest", - "longName": "GetPartyVestingStatsRequest", - "fullName": "datanode.api.v2.GetPartyVestingStatsRequest", - "description": "Request sent to get statistics about the vesting rewards for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID to query the vesting stats for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetPartyVestingStatsResponse", - "longName": "GetPartyVestingStatsResponse", - "fullName": "datanode.api.v2.GetPartyVestingStatsResponse", - "description": "Vesting reward statistics for a given party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_bonus_multiplier", - "description": "Reward bonus multiplier.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch for which this information is valid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum_balance", - "description": "The balance of the party, in quantum.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetProtocolUpgradeStatusRequest", - "longName": "GetProtocolUpgradeStatusRequest", - "fullName": "datanode.api.v2.GetProtocolUpgradeStatusRequest", - "description": "Request to get protocol upgrade status", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetProtocolUpgradeStatusResponse", - "longName": "GetProtocolUpgradeStatusResponse", - "fullName": "datanode.api.v2.GetProtocolUpgradeStatusResponse", - "description": "Response from getting protocol upgrade status", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ready", - "description": "Indicator if the upgrade is ready or not.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetReferralSetStatsRequest", - "longName": "GetReferralSetStatsRequest", - "fullName": "datanode.api.v2.GetReferralSetStatsRequest", - "description": "Request to get a referral set's stats", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "referral_set_id", - "description": "Restrict referral set statistics to those for the given referral set.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referral_set_id", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch to get referral set statistics for. If not set, the last complete epoch is used.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_at_epoch", - "defaultValue": "" - }, - { - "name": "referee", - "description": "Restrict referral set statistics to those for the given referee.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referee", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "GetReferralSetStatsResponse", - "longName": "GetReferralSetStatsResponse", - "fullName": "datanode.api.v2.GetReferralSetStatsResponse", - "description": "Response containing the volume discount statistics for the given epoch.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "stats", - "description": "Referral set statistics for the epoch.", - "label": "", - "type": "ReferralSetStatsConnection", - "longType": "ReferralSetStatsConnection", - "fullType": "datanode.api.v2.ReferralSetStatsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetRiskFactorsRequest", - "longName": "GetRiskFactorsRequest", - "fullName": "datanode.api.v2.GetRiskFactorsRequest", - "description": "Request to get risk factor", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to get the risk factor for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetRiskFactorsResponse", - "longName": "GetRiskFactorsResponse", - "fullName": "datanode.api.v2.GetRiskFactorsResponse", - "description": "Response that is received from getting a risk factor", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "risk_factor", - "description": "Risk factor emitted by the risk model for a given market.", - "label": "", - "type": "RiskFactor", - "longType": "vega.RiskFactor", - "fullType": "vega.RiskFactor", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetStakeRequest", - "longName": "GetStakeRequest", - "fullName": "datanode.api.v2.GetStakeRequest", - "description": "Request to get stake", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID for which the stake information is requested.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "GetStakeResponse", - "longName": "GetStakeResponse", - "fullName": "datanode.api.v2.GetStakeResponse", - "description": "Response that is received from requesting stake information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "current_stake_available", - "description": "Current stake available information.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake_linkings", - "description": "Paged list of stake data with corresponding page information.", - "label": "", - "type": "StakesConnection", - "longType": "StakesConnection", - "fullType": "datanode.api.v2.StakesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetStopOrderRequest", - "longName": "GetStopOrderRequest", - "fullName": "datanode.api.v2.GetStopOrderRequest", - "description": "Request that is sent when executing the query for getting a single stop order.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "order_id", - "description": "Order ID to retrieve order information for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetStopOrderResponse", - "longName": "GetStopOrderResponse", - "fullName": "datanode.api.v2.GetStopOrderResponse", - "description": "Response received from the query for getting a single stop order.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "order", - "description": "Order details, if one was found.", - "label": "", - "type": "StopOrderEvent", - "longType": "vega.events.v1.StopOrderEvent", - "fullType": "vega.events.v1.StopOrderEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetTotalTransferFeeDiscountRequest", - "longName": "GetTotalTransferFeeDiscountRequest", - "fullName": "datanode.api.v2.GetTotalTransferFeeDiscountRequest", - "description": "Get total transfer fee discount available", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "ID of party eligible for the discount.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "ID of asset to associated with the discount.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetTotalTransferFeeDiscountResponse", - "longName": "GetTotalTransferFeeDiscountResponse", - "fullName": "datanode.api.v2.GetTotalTransferFeeDiscountResponse", - "description": "Returns total transfer fee discount available", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "total_discount", - "description": "Total per party per asset discount available.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetTransferRequest", - "longName": "GetTransferRequest", - "fullName": "datanode.api.v2.GetTransferRequest", - "description": "Request that is sent for getting a transfer by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfer_id", - "description": "Transfer ID to request data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetTransferResponse", - "longName": "GetTransferResponse", - "fullName": "datanode.api.v2.GetTransferResponse", - "description": "Response that is received when querying transfers by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfer_node", - "description": "Transfer and its fees requested by ID.", - "label": "", - "type": "TransferNode", - "longType": "TransferNode", - "fullType": "datanode.api.v2.TransferNode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetVegaTimeRequest", - "longName": "GetVegaTimeRequest", - "fullName": "datanode.api.v2.GetVegaTimeRequest", - "description": "Request to get the current time of the Vega network", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetVegaTimeResponse", - "longName": "GetVegaTimeResponse", - "fullName": "datanode.api.v2.GetVegaTimeResponse", - "description": "Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "timestamp", - "description": "Timestamp representation of current VegaTime as represented in Unix nanoseconds, for example\n`1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetVestingBalancesSummaryRequest", - "longName": "GetVestingBalancesSummaryRequest", - "fullName": "datanode.api.v2.GetVestingBalancesSummaryRequest", - "description": "Request sent to list the vesting and locked balances for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID to query vesting balances for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Optional asset ID, all asset balances returned if not set.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - } - ] - }, - { - "name": "GetVestingBalancesSummaryResponse", - "longName": "GetVestingBalancesSummaryResponse", - "fullName": "datanode.api.v2.GetVestingBalancesSummaryResponse", - "description": "List of vesting and locked balances for a party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch for which these balances are valid.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch_seq", - "defaultValue": "" - }, - { - "name": "locked_balances", - "description": "List of locked balances for the party.", - "label": "repeated", - "type": "PartyLockedBalance", - "longType": "vega.events.v1.PartyLockedBalance", - "fullType": "vega.events.v1.PartyLockedBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vesting_balances", - "description": "List of vesting balances for the party.", - "label": "repeated", - "type": "PartyVestingBalance", - "longType": "vega.events.v1.PartyVestingBalance", - "fullType": "vega.events.v1.PartyVestingBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetVolumeDiscountStatsRequest", - "longName": "GetVolumeDiscountStatsRequest", - "fullName": "datanode.api.v2.GetVolumeDiscountStatsRequest", - "description": "Request to get the volume discount statistics for a given epoch.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "at_epoch", - "description": "Epoch to get volume discount statistics for. If not set, last epoch is used.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_at_epoch", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Restrict volume discount statistics to those for the given party.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "GetVolumeDiscountStatsResponse", - "longName": "GetVolumeDiscountStatsResponse", - "fullName": "datanode.api.v2.GetVolumeDiscountStatsResponse", - "description": "Response containing the volume discount statistics for the given epoch.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "stats", - "description": "Volume discount statistics for an epoch.", - "label": "", - "type": "VolumeDiscountStatsConnection", - "longType": "VolumeDiscountStatsConnection", - "fullType": "datanode.api.v2.VolumeDiscountStatsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetWithdrawalRequest", - "longName": "GetWithdrawalRequest", - "fullName": "datanode.api.v2.GetWithdrawalRequest", - "description": "Request to get a specific withdrawal by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Withdrawal ID to retrieve data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetWithdrawalResponse", - "longName": "GetWithdrawalResponse", - "fullName": "datanode.api.v2.GetWithdrawalResponse", - "description": "Response for a withdrawal request", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "withdrawal", - "description": "Withdrawal matching the ID from the request.", - "label": "", - "type": "Withdrawal", - "longType": "vega.Withdrawal", - "fullType": "vega.Withdrawal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceDataConnection", - "longName": "GovernanceDataConnection", - "fullName": "datanode.api.v2.GovernanceDataConnection", - "description": "Page of governance data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of governance data and their corresponding cursors.", - "label": "repeated", - "type": "GovernanceDataEdge", - "longType": "GovernanceDataEdge", - "fullType": "datanode.api.v2.GovernanceDataEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceDataEdge", - "longName": "GovernanceDataEdge", - "fullName": "datanode.api.v2.GovernanceDataEdge", - "description": "Governance data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Governance data content, i.e. proposal and votes for and against.", - "label": "", - "type": "GovernanceData", - "longType": "vega.GovernanceData", - "fullType": "vega.GovernanceData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "HistorySegment", - "longName": "HistorySegment", - "fullName": "datanode.api.v2.HistorySegment", - "description": "Describes a network history segment", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_height", - "description": "Starting height of the history segment.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_height", - "description": "Ending height of the history segment.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "history_segment_id", - "description": "History segment ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "previous_history_segment_id", - "description": "Previous history segment ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "database_version", - "description": "Database schema version of the history segment.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_id", - "description": "Chain ID of the history segment.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "IndividualGameEntities", - "longName": "IndividualGameEntities", - "fullName": "datanode.api.v2.IndividualGameEntities", - "description": "List of individuals that are participating in a game", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "individual", - "description": "List of individual party IDs, and the metrics associated with each participant.", - "label": "repeated", - "type": "IndividualGameEntity", - "longType": "IndividualGameEntity", - "fullType": "datanode.api.v2.IndividualGameEntity", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "IndividualGameEntity", - "longName": "IndividualGameEntity", - "fullName": "datanode.api.v2.IndividualGameEntity", - "description": "Data relating to an individual participating in a game.\nThis can be used for both team members who are participating in a team game,\nor individuals participating in an individual entity game.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "individual", - "description": "Party ID of the individual participating", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rank", - "description": "Rank of the individual either in the game or within their team.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "Volume traded by the individual", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_metric", - "description": "Reward metric applied to the individual", - "label": "", - "type": "DispatchMetric", - "longType": "vega.DispatchMetric", - "fullType": "vega.DispatchMetric", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_earned", - "description": "Reward earned by the individual during the epoch", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_rewards_earned", - "description": "Total rewards earned by the individual for the game", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "InfoRequest", - "longName": "InfoRequest", - "fullName": "datanode.api.v2.InfoRequest", - "description": "Request that is sent when querying node information", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "InfoResponse", - "longName": "InfoResponse", - "fullName": "datanode.api.v2.InfoResponse", - "description": "Response that is received from the node information query", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Semver formatted version of the data node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "commit_hash", - "description": "Commit hash from which the data node was built.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "IntervalToCandleId", - "longName": "IntervalToCandleId", - "fullName": "datanode.api.v2.IntervalToCandleId", - "description": "Maps an interval for a given market to its corresponding candle ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "interval", - "description": "Interval for the candle.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "candle_id", - "description": "Unique id of the candle.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "KeyRotationConnection", - "longName": "KeyRotationConnection", - "fullName": "datanode.api.v2.KeyRotationConnection", - "description": "Page of key rotations data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of key rotation data and their corresponding cursors.", - "label": "repeated", - "type": "KeyRotationEdge", - "longType": "KeyRotationEdge", - "fullType": "datanode.api.v2.KeyRotationEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "KeyRotationEdge", - "longName": "KeyRotationEdge", - "fullName": "datanode.api.v2.KeyRotationEdge", - "description": "Key rotation data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data relating to a key rotation that was performed by a node on the Vega network.", - "label": "", - "type": "KeyRotation", - "longType": "vega.events.v1.KeyRotation", - "fullType": "vega.events.v1.KeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LedgerEntryFilter", - "longName": "LedgerEntryFilter", - "fullName": "datanode.api.v2.LedgerEntryFilter", - "description": "Ledger entry filter sets filters on returned set of ledger entries.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "close_on_account_filters", - "description": "Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_account_filter", - "description": "Used to set values for filtering sender accounts. Party must be provided in this filter or 'to' account filter, or both.", - "label": "", - "type": "AccountFilter", - "longType": "AccountFilter", - "fullType": "datanode.api.v2.AccountFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_account_filter", - "description": "Used to set values for filtering receiver accounts. Party must be provided in this filter or 'from' account filter, or both.", - "label": "", - "type": "AccountFilter", - "longType": "AccountFilter", - "fullType": "datanode.api.v2.AccountFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfer_types", - "description": "List of transfer types that is used for filtering sender and receiver accounts.", - "label": "repeated", - "type": "TransferType", - "longType": "vega.TransferType", - "fullType": "vega.TransferType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfer_id", - "description": "List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_transfer_id", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidationEstimate", - "longName": "LiquidationEstimate", - "fullName": "datanode.api.v2.LiquidationEstimate", - "description": "Liquidation estimate for both worst and best case possible.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "worst_case", - "description": "Liquidation price estimate assuming slippage cap is applied.", - "label": "", - "type": "LiquidationPrice", - "longType": "LiquidationPrice", - "fullType": "datanode.api.v2.LiquidationPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_case", - "description": "Liquidation price estimate assuming no slippage.", - "label": "", - "type": "LiquidationPrice", - "longType": "LiquidationPrice", - "fullType": "datanode.api.v2.LiquidationPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidationPrice", - "longName": "LiquidationPrice", - "fullName": "datanode.api.v2.LiquidationPrice", - "description": "Liquidation price estimate for either only the current open volume and position given some or all buy orders get filled, or position given some or all sell orders get filled.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "open_volume_only", - "description": "Liquidation price for current open volume ignoring any active orders.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "including_buy_orders", - "description": "Liquidation price assuming buy orders start getting filled.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "including_sell_orders", - "description": "Liquidation price assuming sell orders start getting filled.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvider", - "longName": "LiquidityProvider", - "fullName": "datanode.api.v2.LiquidityProvider", - "description": "Liquidity provider information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID of the liquidity provider.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "ID of the market the liquidity provider is active in.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee_share", - "description": "Information used for calculating an LP's fee share, such as the equity like share,\naverage entry valuation and liquidity score for the liquidity provider for the specified market.", - "label": "", - "type": "LiquidityProviderFeeShare", - "longType": "vega.LiquidityProviderFeeShare", - "fullType": "vega.LiquidityProviderFeeShare", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sla", - "description": "Information about LP's SLA performance.", - "label": "", - "type": "LiquidityProviderSLA", - "longType": "vega.LiquidityProviderSLA", - "fullType": "vega.LiquidityProviderSLA", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProviderConnection", - "longName": "LiquidityProviderConnection", - "fullName": "datanode.api.v2.LiquidityProviderConnection", - "description": "Page of liquidity provider data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of liquidity provider data.", - "label": "repeated", - "type": "LiquidityProviderEdge", - "longType": "LiquidityProviderEdge", - "fullType": "datanode.api.v2.LiquidityProviderEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProviderEdge", - "longName": "LiquidityProviderEdge", - "fullName": "datanode.api.v2.LiquidityProviderEdge", - "description": "Liquidity provider data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Liquidity provider information returned by the API.", - "label": "", - "type": "LiquidityProvider", - "longType": "LiquidityProvider", - "fullType": "datanode.api.v2.LiquidityProvider", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further data.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvision", - "longName": "LiquidityProvision", - "fullName": "datanode.api.v2.LiquidityProvision", - "description": "Liquidity provider commitment. For API purposes this can report a pending liquidity provision,\nthe current live provision or both in the event that an update has been accepted on the network, but has yet\nto go live and thus there is still a pending provision that will become active in the next epoch.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "current", - "description": "Liquidity provision that is currently live.", - "label": "", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending", - "description": "Liquidity provision that is currently pending and will go live in the next epoch.", - "label": "optional", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pending", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisionWithPendingEdge", - "longName": "LiquidityProvisionWithPendingEdge", - "fullName": "datanode.api.v2.LiquidityProvisionWithPendingEdge", - "description": "Liquidity provision data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data corresponding to a liquidity provider's commitment.", - "label": "", - "type": "LiquidityProvision", - "longType": "LiquidityProvision", - "fullType": "datanode.api.v2.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisionsConnection", - "longName": "LiquidityProvisionsConnection", - "fullName": "datanode.api.v2.LiquidityProvisionsConnection", - "description": "Page of liquidity provisions data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of liquidity provisions data and their corresponding cursors.", - "label": "repeated", - "type": "LiquidityProvisionsEdge", - "longType": "LiquidityProvisionsEdge", - "fullType": "datanode.api.v2.LiquidityProvisionsEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisionsEdge", - "longName": "LiquidityProvisionsEdge", - "fullName": "datanode.api.v2.LiquidityProvisionsEdge", - "description": "Liquidity provision data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data corresponding to a liquidity provider's commitment.", - "label": "", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisionsWithPendingConnection", - "longName": "LiquidityProvisionsWithPendingConnection", - "fullName": "datanode.api.v2.LiquidityProvisionsWithPendingConnection", - "description": "Page of liquidity provisions data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of liquidity provisions data and their corresponding cursors.", - "label": "repeated", - "type": "LiquidityProvisionWithPendingEdge", - "longType": "LiquidityProvisionWithPendingEdge", - "fullType": "datanode.api.v2.LiquidityProvisionWithPendingEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used to fetch further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAccountsRequest", - "longName": "ListAccountsRequest", - "fullName": "datanode.api.v2.ListAccountsRequest", - "description": "Request that is sent when listing accounts.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "filter", - "description": "Account filter contains all filter conditions and values that can be applied to the listing.", - "label": "", - "type": "AccountFilter", - "longType": "AccountFilter", - "fullType": "datanode.api.v2.AccountFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListAccountsResponse", - "longName": "ListAccountsResponse", - "fullName": "datanode.api.v2.ListAccountsResponse", - "description": "Response that is received from listing accounts query.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accounts", - "description": "Page of accounts data and corresponding page information.", - "label": "", - "type": "AccountsConnection", - "longType": "AccountsConnection", - "fullType": "datanode.api.v2.AccountsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAllLiquidityProvisionsRequest", - "longName": "ListAllLiquidityProvisionsRequest", - "fullName": "datanode.api.v2.ListAllLiquidityProvisionsRequest", - "description": "Request for listing liquidity provisions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Restrict liquidity provisions to those placed on the given market.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Restrict liquidity provisions to those placed by the given party.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Restrict liquidity provisions to those with the given order reference.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_reference", - "defaultValue": "" - }, - { - "name": "live", - "description": "Whether to include live liquidity provisions. If not set, live orders will not be included.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_live", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListAllLiquidityProvisionsResponse", - "longName": "ListAllLiquidityProvisionsResponse", - "fullName": "datanode.api.v2.ListAllLiquidityProvisionsResponse", - "description": "Response from listing liquidity provisions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "liquidity_provisions", - "description": "Page of liquidity provisions data and corresponding page information.", - "label": "", - "type": "LiquidityProvisionsWithPendingConnection", - "longType": "LiquidityProvisionsWithPendingConnection", - "fullType": "datanode.api.v2.LiquidityProvisionsWithPendingConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAllNetworkHistorySegmentsRequest", - "longName": "ListAllNetworkHistorySegmentsRequest", - "fullName": "datanode.api.v2.ListAllNetworkHistorySegmentsRequest", - "description": "Request to list all the nodes history segments", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "ListAllNetworkHistorySegmentsResponse", - "longName": "ListAllNetworkHistorySegmentsResponse", - "fullName": "datanode.api.v2.ListAllNetworkHistorySegmentsResponse", - "description": "Response with a list of all the nodes history segments", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "segments", - "description": "Page of history segments data and corresponding page information.", - "label": "repeated", - "type": "HistorySegment", - "longType": "HistorySegment", - "fullType": "datanode.api.v2.HistorySegment", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAllPositionsRequest", - "longName": "ListAllPositionsRequest", - "fullName": "datanode.api.v2.ListAllPositionsRequest", - "description": "Request to list positions, given the position filter is supplied.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "filter", - "description": "Filter to apply to the positions.", - "label": "", - "type": "PositionsFilter", - "longType": "PositionsFilter", - "fullType": "datanode.api.v2.PositionsFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListAllPositionsResponse", - "longName": "ListAllPositionsResponse", - "fullName": "datanode.api.v2.ListAllPositionsResponse", - "description": "Response to query for listing of positions, given the filter is supplied", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "positions", - "description": "Page of positions data and corresponding page information.", - "label": "", - "type": "PositionConnection", - "longType": "PositionConnection", - "fullType": "datanode.api.v2.PositionConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAssetsRequest", - "longName": "ListAssetsRequest", - "fullName": "datanode.api.v2.ListAssetsRequest", - "description": "Request for listing assets data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Optional asset ID to list data for.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListAssetsResponse", - "longName": "ListAssetsResponse", - "fullName": "datanode.api.v2.ListAssetsResponse", - "description": "Response from listing assets", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "assets", - "description": "Page of assets data and corresponding page information.", - "label": "", - "type": "AssetsConnection", - "longType": "AssetsConnection", - "fullType": "datanode.api.v2.AssetsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListBalanceChangesRequest", - "longName": "ListBalanceChangesRequest", - "fullName": "datanode.api.v2.ListBalanceChangesRequest", - "description": "Request to use when querying balances changes.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "filter", - "description": "Limit the accounts considered according to the filter supplied.", - "label": "", - "type": "AccountFilter", - "longType": "AccountFilter", - "fullType": "datanode.api.v2.AccountFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Date range over which to query.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - } - ] - }, - { - "name": "ListBalanceChangesResponse", - "longName": "ListBalanceChangesResponse", - "fullName": "datanode.api.v2.ListBalanceChangesResponse", - "description": "Response that is received from querying balances changes.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "balances", - "description": "Page of aggregated balances data and corresponding page information.", - "label": "", - "type": "AggregatedBalanceConnection", - "longType": "AggregatedBalanceConnection", - "fullType": "datanode.api.v2.AggregatedBalanceConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListCandleDataRequest", - "longName": "ListCandleDataRequest", - "fullName": "datanode.api.v2.ListCandleDataRequest", - "description": "Request that is used when listing candles for a market at an interval", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "candle_id", - "description": "Candle ID to retrieve candle data for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_timestamp", - "description": "Timestamp in Unix nanoseconds to retrieve candles from.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_timestamp", - "description": "Timestamp in Unix nanoseconds to retrieve candles to.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListCandleDataResponse", - "longName": "ListCandleDataResponse", - "fullName": "datanode.api.v2.ListCandleDataResponse", - "description": "Response for list of candles for a market at an interval", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "candles", - "description": "Page of candle data and corresponding page information.", - "label": "", - "type": "CandleDataConnection", - "longType": "CandleDataConnection", - "fullType": "datanode.api.v2.CandleDataConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListCandleIntervalsRequest", - "longName": "ListCandleIntervalsRequest", - "fullName": "datanode.api.v2.ListCandleIntervalsRequest", - "description": "Request that is used to fetch a list of supported intervals for the given market along with the corresponding candle ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Unique ID for the market to list candle intervals for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListCandleIntervalsResponse", - "longName": "ListCandleIntervalsResponse", - "fullName": "datanode.api.v2.ListCandleIntervalsResponse", - "description": "List of mapped pairs `interval` -\u003e `candle ID` for a given market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "interval_to_candle_id", - "description": "List of the mappings.", - "label": "repeated", - "type": "IntervalToCandleId", - "longType": "IntervalToCandleId", - "fullType": "datanode.api.v2.IntervalToCandleId", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListCheckpointsRequest", - "longName": "ListCheckpointsRequest", - "fullName": "datanode.api.v2.ListCheckpointsRequest", - "description": "Request to get all checkpoints. Currently no fields, probably will be expanded to allow filtering data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListCheckpointsResponse", - "longName": "ListCheckpointsResponse", - "fullName": "datanode.api.v2.ListCheckpointsResponse", - "description": "Response message containing all checkpoints requested", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "checkpoints", - "description": "Page of checkpoints data and corresponding page information.", - "label": "", - "type": "CheckpointsConnection", - "longType": "CheckpointsConnection", - "fullType": "datanode.api.v2.CheckpointsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListCoreSnapshotsRequest", - "longName": "ListCoreSnapshotsRequest", - "fullName": "datanode.api.v2.ListCoreSnapshotsRequest", - "description": "Request type for ListCoreSnapshots; fetches a paginated list of the core snapshots.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListCoreSnapshotsResponse", - "longName": "ListCoreSnapshotsResponse", - "fullName": "datanode.api.v2.ListCoreSnapshotsResponse", - "description": "Response from a ListCoreSnapshots RPC call; a paginated list of the core snapshots.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "core_snapshots", - "description": "Page of core snapshot data and corresponding page information.", - "label": "", - "type": "CoreSnapshotConnection", - "longType": "CoreSnapshotConnection", - "fullType": "datanode.api.v2.CoreSnapshotConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListDelegationsRequest", - "longName": "ListDelegationsRequest", - "fullName": "datanode.api.v2.ListDelegationsRequest", - "description": "Request for listing delegations", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict delegations to those made by the given party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "Restrict delegations to those made to the given node ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_node_id", - "defaultValue": "" - }, - { - "name": "epoch_id", - "description": "Return delegations made in the given epoch. If not set, delegations for the current epoch will be returned.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListDelegationsResponse", - "longName": "ListDelegationsResponse", - "fullName": "datanode.api.v2.ListDelegationsResponse", - "description": "Response from listing delegations", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "delegations", - "description": "Page of delegations data and corresponding page information.", - "label": "", - "type": "DelegationsConnection", - "longType": "DelegationsConnection", - "fullType": "datanode.api.v2.DelegationsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListDepositsRequest", - "longName": "ListDepositsRequest", - "fullName": "datanode.api.v2.ListDepositsRequest", - "description": "Request to list all deposits for a given party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict deposits to those made by the given party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Date range of the requested data, if provided.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - } - ] - }, - { - "name": "ListDepositsResponse", - "longName": "ListDepositsResponse", - "fullName": "datanode.api.v2.ListDepositsResponse", - "description": "Response from listing deposits", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deposits", - "description": "Page of deposits data and corresponding page information.", - "label": "", - "type": "DepositsConnection", - "longType": "DepositsConnection", - "fullType": "datanode.api.v2.DepositsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListERC20MultiSigSignerAddedBundlesRequest", - "longName": "ListERC20MultiSigSignerAddedBundlesRequest", - "fullName": "datanode.api.v2.ListERC20MultiSigSignerAddedBundlesRequest", - "description": "Request for adding a signature bundle to the signer list of a multisig contract for a particular validator", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID of the validator for which a signature bundle is required.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "Ethereum address of the validator that will submit the bundle.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch in which the bundle was generated, i.e. the epoch in which the node was promoted to consensus validator.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListERC20MultiSigSignerAddedBundlesResponse", - "longName": "ListERC20MultiSigSignerAddedBundlesResponse", - "fullName": "datanode.api.v2.ListERC20MultiSigSignerAddedBundlesResponse", - "description": "Response from adding a signature bundle to the signer list of a multisig contract for a particular validator", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "bundles", - "description": "Page of bundles for that validator - it may have been added multiple times if removed in between - and corresponding page information.", - "label": "", - "type": "ERC20MultiSigSignerAddedConnection", - "longType": "ERC20MultiSigSignerAddedConnection", - "fullType": "datanode.api.v2.ERC20MultiSigSignerAddedConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListERC20MultiSigSignerRemovedBundlesRequest", - "longName": "ListERC20MultiSigSignerRemovedBundlesRequest", - "fullName": "datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesRequest", - "description": "Request for removing a signature bundle from the signer list of the multisig contract for a particular validator", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID of the validator of which a signature bundle is required.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "Ethereum address of the validator that will submit the bundle.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch in which the bundle was generated, i.e. the epoch in which the node was demoted from a consensus validator.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListERC20MultiSigSignerRemovedBundlesResponse", - "longName": "ListERC20MultiSigSignerRemovedBundlesResponse", - "fullName": "datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesResponse", - "description": "Response when removing a signature bundle from the signer list of the multisig contract for a particular validator", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "bundles", - "description": "Page of signer bundle data items for that validator and corresponding page information.", - "label": "", - "type": "ERC20MultiSigSignerRemovedConnection", - "longType": "ERC20MultiSigSignerRemovedConnection", - "fullType": "datanode.api.v2.ERC20MultiSigSignerRemovedConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListEntitiesRequest", - "longName": "ListEntitiesRequest", - "fullName": "datanode.api.v2.ListEntitiesRequest", - "description": "Request to list all entities that were created by the given transaction hash", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transaction_hash", - "description": "Transaction hash to match against", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListEntitiesResponse", - "longName": "ListEntitiesResponse", - "fullName": "datanode.api.v2.ListEntitiesResponse", - "description": "Response from listing entities that were created for a given transaction hash", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accounts", - "description": "", - "label": "repeated", - "type": "Account", - "longType": "vega.Account", - "fullType": "vega.Account", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "orders", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "positions", - "description": "", - "label": "repeated", - "type": "Position", - "longType": "vega.Position", - "fullType": "vega.Position", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ledger_entries", - "description": "", - "label": "repeated", - "type": "LedgerEntry", - "longType": "vega.LedgerEntry", - "fullType": "vega.LedgerEntry", - "ismap": true, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance_changes", - "description": "", - "label": "repeated", - "type": "AccountBalance", - "longType": "AccountBalance", - "fullType": "datanode.api.v2.AccountBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfers", - "description": "", - "label": "repeated", - "type": "Transfer", - "longType": "vega.events.v1.Transfer", - "fullType": "vega.events.v1.Transfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "votes", - "description": "", - "label": "repeated", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "erc20_multi_sig_signer_added_bundles", - "description": "", - "label": "repeated", - "type": "ERC20MultiSigSignerAddedBundle", - "longType": "ERC20MultiSigSignerAddedBundle", - "fullType": "datanode.api.v2.ERC20MultiSigSignerAddedBundle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "erc20_multi_sig_signer_removed_bundles", - "description": "", - "label": "repeated", - "type": "ERC20MultiSigSignerRemovedBundle", - "longType": "ERC20MultiSigSignerRemovedBundle", - "fullType": "datanode.api.v2.ERC20MultiSigSignerRemovedBundle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trades", - "description": "", - "label": "repeated", - "type": "Trade", - "longType": "vega.Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "oracle_specs", - "description": "", - "label": "repeated", - "type": "OracleSpec", - "longType": "vega.OracleSpec", - "fullType": "vega.OracleSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "oracle_data", - "description": "", - "label": "repeated", - "type": "OracleData", - "longType": "vega.OracleData", - "fullType": "vega.OracleData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "markets", - "description": "", - "label": "repeated", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parties", - "description": "", - "label": "repeated", - "type": "Party", - "longType": "vega.Party", - "fullType": "vega.Party", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_levels", - "description": "", - "label": "repeated", - "type": "MarginLevels", - "longType": "vega.MarginLevels", - "fullType": "vega.MarginLevels", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards", - "description": "", - "label": "repeated", - "type": "Reward", - "longType": "vega.Reward", - "fullType": "vega.Reward", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "deposits", - "description": "", - "label": "repeated", - "type": "Deposit", - "longType": "vega.Deposit", - "fullType": "vega.Deposit", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "withdrawals", - "description": "", - "label": "repeated", - "type": "Withdrawal", - "longType": "vega.Withdrawal", - "fullType": "vega.Withdrawal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "assets", - "description": "", - "label": "repeated", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_provisions", - "description": "", - "label": "repeated", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposals", - "description": "", - "label": "repeated", - "type": "Proposal", - "longType": "vega.Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "delegations", - "description": "", - "label": "repeated", - "type": "Delegation", - "longType": "vega.Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nodes", - "description": "", - "label": "repeated", - "type": "NodeBasic", - "longType": "NodeBasic", - "fullType": "datanode.api.v2.NodeBasic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_signatures", - "description": "", - "label": "repeated", - "type": "NodeSignature", - "longType": "vega.commands.v1.NodeSignature", - "fullType": "vega.commands.v1.NodeSignature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "network_parameters", - "description": "", - "label": "repeated", - "type": "NetworkParameter", - "longType": "vega.NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "key_rotations", - "description": "", - "label": "repeated", - "type": "KeyRotation", - "longType": "vega.events.v1.KeyRotation", - "fullType": "vega.events.v1.KeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_key_rotations", - "description": "", - "label": "repeated", - "type": "EthereumKeyRotation", - "longType": "vega.events.v1.EthereumKeyRotation", - "fullType": "vega.events.v1.EthereumKeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_proposals", - "description": "", - "label": "repeated", - "type": "ProtocolUpgradeEvent", - "longType": "vega.events.v1.ProtocolUpgradeEvent", - "fullType": "vega.events.v1.ProtocolUpgradeEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListEpochRewardSummariesRequest", - "longName": "ListEpochRewardSummariesRequest", - "fullName": "datanode.api.v2.ListEpochRewardSummariesRequest", - "description": "Request to get summary of reward per epoch for a given range of epochs", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "filter", - "description": "Limit the results considered according to the filter supplied.", - "label": "", - "type": "RewardSummaryFilter", - "longType": "RewardSummaryFilter", - "fullType": "datanode.api.v2.RewardSummaryFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListEpochRewardSummariesResponse", - "longName": "ListEpochRewardSummariesResponse", - "fullName": "datanode.api.v2.ListEpochRewardSummariesResponse", - "description": "Return message with reward details in for a single party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "summaries", - "description": "Page of rewards details for a single party and corresponding page information.", - "label": "", - "type": "EpochRewardSummaryConnection", - "longType": "EpochRewardSummaryConnection", - "fullType": "datanode.api.v2.EpochRewardSummaryConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListEthereumKeyRotationsRequest", - "longName": "ListEthereumKeyRotationsRequest", - "fullName": "datanode.api.v2.ListEthereumKeyRotationsRequest", - "description": "Request to list ethereum key rotations for nodes, optionally filtered by node", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID to get the rotation for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_node_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListEthereumKeyRotationsResponse", - "longName": "ListEthereumKeyRotationsResponse", - "fullName": "datanode.api.v2.ListEthereumKeyRotationsResponse", - "description": "Response message containing Ethereum key rotations", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key_rotations", - "description": "Page of Ethereum key rotations data and corresponding page information.", - "label": "", - "type": "EthereumKeyRotationsConnection", - "longType": "EthereumKeyRotationsConnection", - "fullType": "datanode.api.v2.EthereumKeyRotationsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListFundingPaymentsRequest", - "longName": "ListFundingPaymentsRequest", - "fullName": "datanode.api.v2.ListFundingPaymentsRequest", - "description": "Request to list a a party's funding payments", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID to get funding payment for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Restrict funding payments returned to those generated by the given market.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListFundingPaymentsResponse", - "longName": "ListFundingPaymentsResponse", - "fullName": "datanode.api.v2.ListFundingPaymentsResponse", - "description": "Response from listing funding payments", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "funding_payments", - "description": "Page of funding period data and corresponding page information.", - "label": "", - "type": "FundingPaymentConnection", - "longType": "FundingPaymentConnection", - "fullType": "datanode.api.v2.FundingPaymentConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListFundingPeriodDataPointsRequest", - "longName": "ListFundingPeriodDataPointsRequest", - "fullName": "datanode.api.v2.ListFundingPeriodDataPointsRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to get funding period data points for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Restrict the data points to those within the given date range.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - }, - { - "name": "source", - "description": "Restrict the data points to those with the given source type.", - "label": "optional", - "type": "Source", - "longType": "vega.events.v1.FundingPeriodDataPoint.Source", - "fullType": "vega.events.v1.FundingPeriodDataPoint.Source", - "ismap": false, - "isoneof": true, - "oneofdecl": "_source", - "defaultValue": "" - }, - { - "name": "seq", - "description": "Restrict the data points to those that contributed to the given funding period sequence.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_seq", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListFundingPeriodDataPointsResponse", - "longName": "ListFundingPeriodDataPointsResponse", - "fullName": "datanode.api.v2.ListFundingPeriodDataPointsResponse", - "description": "Response from listing funding period data points.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "funding_period_data_points", - "description": "Page of funding period data points and corresponding page information.", - "label": "", - "type": "FundingPeriodDataPointConnection", - "longType": "FundingPeriodDataPointConnection", - "fullType": "datanode.api.v2.FundingPeriodDataPointConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListFundingPeriodsRequest", - "longName": "ListFundingPeriodsRequest", - "fullName": "datanode.api.v2.ListFundingPeriodsRequest", - "description": "Request to list a perpetual market's funding periods", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to get funding periods for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Restrict the funding periods to those within the given date range.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListFundingPeriodsResponse", - "longName": "ListFundingPeriodsResponse", - "fullName": "datanode.api.v2.ListFundingPeriodsResponse", - "description": "Response from listing funding periods", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "funding_periods", - "description": "Page of funding period data and corresponding page information.", - "label": "", - "type": "FundingPeriodConnection", - "longType": "FundingPeriodConnection", - "fullType": "datanode.api.v2.FundingPeriodConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListGamesRequest", - "longName": "ListGamesRequest", - "fullName": "datanode.api.v2.ListGamesRequest", - "description": "Request to retrieve games data.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "game_id", - "description": "Game ID to filter for.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_game_id", - "defaultValue": "" - }, - { - "name": "epoch_from", - "description": "First epoch to retrieve game data from. If not provided, defaults to the last epoch minus 30,\nor the first epoch available if not enough epochs have passed.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch_from", - "defaultValue": "" - }, - { - "name": "epoch_to", - "description": "Last epoch to retrieve game data to (inclusive). If not provided, defaults to the last epoch.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch_to", - "defaultValue": "" - }, - { - "name": "entity_scope", - "description": "Entity scope to filter games for, i.e. team games or individual games only", - "label": "optional", - "type": "EntityScope", - "longType": "vega.EntityScope", - "fullType": "vega.EntityScope", - "ismap": false, - "isoneof": true, - "oneofdecl": "_entity_scope", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListGamesResponse", - "longName": "ListGamesResponse", - "fullName": "datanode.api.v2.ListGamesResponse", - "description": "Response containing games data.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "games", - "description": "Page of games data and corresponding page information.", - "label": "", - "type": "GamesConnection", - "longType": "GamesConnection", - "fullType": "datanode.api.v2.GamesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListGovernanceDataRequest", - "longName": "ListGovernanceDataRequest", - "fullName": "datanode.api.v2.ListGovernanceDataRequest", - "description": "Request to list governance data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "proposal_state", - "description": "Restrict proposals to those with the given state.", - "label": "optional", - "type": "State", - "longType": "vega.Proposal.State", - "fullType": "vega.Proposal.State", - "ismap": false, - "isoneof": true, - "oneofdecl": "_proposal_state", - "defaultValue": "" - }, - { - "name": "proposal_type", - "description": "Restrict proposals to those with the given type.", - "label": "optional", - "type": "Type", - "longType": "ListGovernanceDataRequest.Type", - "fullType": "datanode.api.v2.ListGovernanceDataRequest.Type", - "ismap": false, - "isoneof": true, - "oneofdecl": "_proposal_type", - "defaultValue": "" - }, - { - "name": "proposer_party_id", - "description": "Restrict proposals to those proposed by the given party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_proposer_party_id", - "defaultValue": "" - }, - { - "name": "proposal_reference", - "description": "Restrict proposals to those with the given reference.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_proposal_reference", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListGovernanceDataResponse", - "longName": "ListGovernanceDataResponse", - "fullName": "datanode.api.v2.ListGovernanceDataResponse", - "description": "Response from listing governance data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "connection", - "description": "Page of governance data and corresponding page information.", - "label": "", - "type": "GovernanceDataConnection", - "longType": "GovernanceDataConnection", - "fullType": "datanode.api.v2.GovernanceDataConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListKeyRotationsRequest", - "longName": "ListKeyRotationsRequest", - "fullName": "datanode.api.v2.ListKeyRotationsRequest", - "description": "Request to list all key rotations", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "Node ID to get key rotations for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_node_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListKeyRotationsResponse", - "longName": "ListKeyRotationsResponse", - "fullName": "datanode.api.v2.ListKeyRotationsResponse", - "description": "Response message containing Vega key rotations", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "rotations", - "description": "Page of key rotations data and corresponding page information.", - "label": "", - "type": "KeyRotationConnection", - "longType": "KeyRotationConnection", - "fullType": "datanode.api.v2.KeyRotationConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListLatestMarketDataRequest", - "longName": "ListLatestMarketDataRequest", - "fullName": "datanode.api.v2.ListLatestMarketDataRequest", - "description": "Request that is sent when listing the latest market data for every market", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "ListLatestMarketDataResponse", - "longName": "ListLatestMarketDataResponse", - "fullName": "datanode.api.v2.ListLatestMarketDataResponse", - "description": "Response that is received when listing the latest market data for every market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "markets_data", - "description": "", - "label": "repeated", - "type": "MarketData", - "longType": "vega.MarketData", - "fullType": "vega.MarketData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListLedgerEntriesRequest", - "longName": "ListLedgerEntriesRequest", - "fullName": "datanode.api.v2.ListLedgerEntriesRequest", - "description": "Request that is sent when listing ledger entries.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "filter", - "description": "Ledger entry filter that contains all values and conditions according to which\nthe listing of ledger entries is filtered.You must provide at least one party in\n'from' account filter, or 'to' account filter.", - "label": "", - "type": "LedgerEntryFilter", - "longType": "LedgerEntryFilter", - "fullType": "datanode.api.v2.LedgerEntryFilter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Date range for which to list ledger entries.\nIf not set, the date range is restricted to the last 5 days.\nIf a start and end date is provided, but the range is more than 5 days, the end date will be restricted to 5 days from the start.\nIf a start date is provided, but no end date, the end date will be set to 5 days from the start.\nIf an end date is provided, but no start date, the start date will be set to 5 days before the end.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - } - ] - }, - { - "name": "ListLedgerEntriesResponse", - "longName": "ListLedgerEntriesResponse", - "fullName": "datanode.api.v2.ListLedgerEntriesResponse", - "description": "Response that is received when listing ledger entries", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ledger_entries", - "description": "Page of aggregated ledger entries data and corresponding page information.", - "label": "", - "type": "AggregatedLedgerEntriesConnection", - "longType": "AggregatedLedgerEntriesConnection", - "fullType": "datanode.api.v2.AggregatedLedgerEntriesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListLiquidityProvidersRequest", - "longName": "ListLiquidityProvidersRequest", - "fullName": "datanode.api.v2.ListLiquidityProvidersRequest", - "description": "Request for listing active liquidity providers for a given market.\nEither market ID or party ID or both, must be provided.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to retrieve liquidity providers for. If omitted, you must provide a party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to retrieve data for. If omitted, you must provide a market ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListLiquidityProvidersResponse", - "longName": "ListLiquidityProvidersResponse", - "fullName": "datanode.api.v2.ListLiquidityProvidersResponse", - "description": "Response for listing liquidity providers.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "liquidity_providers", - "description": "Page of liquidity providers and corresponding page information.", - "label": "", - "type": "LiquidityProviderConnection", - "longType": "LiquidityProviderConnection", - "fullType": "datanode.api.v2.LiquidityProviderConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListLiquidityProvisionsRequest", - "longName": "ListLiquidityProvisionsRequest", - "fullName": "datanode.api.v2.ListLiquidityProvisionsRequest", - "description": "Request for listing liquidity provisions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Restrict liquidity provisions to those placed on the given market.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Restrict liquidity provisions to those placed by the given party.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Restrict liquidity provisions to those with the given order reference.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_reference", - "defaultValue": "" - }, - { - "name": "live", - "description": "Whether to include live liquidity provisions. If not set, live orders will not be included.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_live", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListLiquidityProvisionsResponse", - "longName": "ListLiquidityProvisionsResponse", - "fullName": "datanode.api.v2.ListLiquidityProvisionsResponse", - "description": "Response from listing liquidity provisions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "liquidity_provisions", - "description": "Page of liquidity provisions data and corresponding page information.", - "label": "", - "type": "LiquidityProvisionsConnection", - "longType": "LiquidityProvisionsConnection", - "fullType": "datanode.api.v2.LiquidityProvisionsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarginLevelsRequest", - "longName": "ListMarginLevelsRequest", - "fullName": "datanode.api.v2.ListMarginLevelsRequest", - "description": "Request for listing margin levels", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID for which to list the margin levels", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID for which to list the margin levels", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination control", - "label": "", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarginLevelsResponse", - "longName": "ListMarginLevelsResponse", - "fullName": "datanode.api.v2.ListMarginLevelsResponse", - "description": "Response from listing margin levels", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "margin_levels", - "description": "Page of margin levels data and corresponding page information.", - "label": "", - "type": "MarginConnection", - "longType": "MarginConnection", - "fullType": "datanode.api.v2.MarginConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarketsRequest", - "longName": "ListMarketsRequest", - "fullName": "datanode.api.v2.ListMarketsRequest", - "description": "Request for listing markets", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pagination", - "description": "Pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "include_settled", - "description": "Whether to include settled markets. If not set, settled markets will be included.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_include_settled", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarketsResponse", - "longName": "ListMarketsResponse", - "fullName": "datanode.api.v2.ListMarketsResponse", - "description": "Response from listing markets", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "markets", - "description": "Page of markets and corresponding page information.", - "label": "", - "type": "MarketConnection", - "longType": "MarketConnection", - "fullType": "datanode.api.v2.MarketConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListNetworkParametersRequest", - "longName": "ListNetworkParametersRequest", - "fullName": "datanode.api.v2.ListNetworkParametersRequest", - "description": "Message requesting for the list of all network parameters", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListNetworkParametersResponse", - "longName": "ListNetworkParametersResponse", - "fullName": "datanode.api.v2.ListNetworkParametersResponse", - "description": "Response containing all of the Vega network parameters", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "network_parameters", - "description": "Page of network parameters and corresponding page information.", - "label": "", - "type": "NetworkParameterConnection", - "longType": "NetworkParameterConnection", - "fullType": "datanode.api.v2.NetworkParameterConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListNodeSignaturesRequest", - "longName": "ListNodeSignaturesRequest", - "fullName": "datanode.api.v2.ListNodeSignaturesRequest", - "description": "Request to specify the ID of the resource to retrieve aggregated signatures for", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Resource ID to list signatures for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination information to limit the data that is returned.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListNodeSignaturesResponse", - "longName": "ListNodeSignaturesResponse", - "fullName": "datanode.api.v2.ListNodeSignaturesResponse", - "description": "Response to specify the ID of the resource to retrieve aggregated signatures for", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signatures", - "description": "Page of nodes signatures and corresponding page information.", - "label": "", - "type": "NodeSignaturesConnection", - "longType": "NodeSignaturesConnection", - "fullType": "datanode.api.v2.NodeSignaturesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListNodesRequest", - "longName": "ListNodesRequest", - "fullName": "datanode.api.v2.ListNodesRequest", - "description": "Request to list nodes", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "epoch_seq", - "description": "Return the node list for the given epoch. If not set, the node list for the current epoch will be returned.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch_seq", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListNodesResponse", - "longName": "ListNodesResponse", - "fullName": "datanode.api.v2.ListNodesResponse", - "description": "Response from listing nodes", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "nodes", - "description": "Page of node data and corresponding page information.", - "label": "", - "type": "NodesConnection", - "longType": "NodesConnection", - "fullType": "datanode.api.v2.NodesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListOracleDataRequest", - "longName": "ListOracleDataRequest", - "fullName": "datanode.api.v2.ListOracleDataRequest", - "description": "Request to get all seen oracle data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "oracle_spec_id", - "description": "Oracle spec ID to list data for.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_oracle_spec_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListOracleDataResponse", - "longName": "ListOracleDataResponse", - "fullName": "datanode.api.v2.ListOracleDataResponse", - "description": "Response to get all seen oracle data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "oracle_data", - "description": "Page of seen oracle data and corresponding page information.", - "label": "", - "type": "OracleDataConnection", - "longType": "OracleDataConnection", - "fullType": "datanode.api.v2.OracleDataConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListOracleSpecsRequest", - "longName": "ListOracleSpecsRequest", - "fullName": "datanode.api.v2.ListOracleSpecsRequest", - "description": "Request to get all active oracle specs", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListOracleSpecsResponse", - "longName": "ListOracleSpecsResponse", - "fullName": "datanode.api.v2.ListOracleSpecsResponse", - "description": "Response to get all active oracle specs", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "oracle_specs", - "description": "Page of active oracle specs and corresponding page information.", - "label": "", - "type": "OracleSpecsConnection", - "longType": "OracleSpecsConnection", - "fullType": "datanode.api.v2.OracleSpecsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListOrderVersionsRequest", - "longName": "ListOrderVersionsRequest", - "fullName": "datanode.api.v2.ListOrderVersionsRequest", - "description": "Request that is sent when listing possible order versions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "order_id", - "description": "Order ID to list versions for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListOrderVersionsResponse", - "longName": "ListOrderVersionsResponse", - "fullName": "datanode.api.v2.ListOrderVersionsResponse", - "description": "Response that is received when listing possible order versions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "orders", - "description": "Page of order versions and corresponding page information.", - "label": "", - "type": "OrderConnection", - "longType": "OrderConnection", - "fullType": "datanode.api.v2.OrderConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListOrdersRequest", - "longName": "ListOrdersRequest", - "fullName": "datanode.api.v2.ListOrdersRequest", - "description": "Request that is sent when executing a query for a list of orders", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pagination", - "description": "Optional pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "filter", - "description": "Order filter contains all filtering conditions and values that are applied to the orders listing.", - "label": "optional", - "type": "OrderFilter", - "longType": "OrderFilter", - "fullType": "datanode.api.v2.OrderFilter", - "ismap": false, - "isoneof": true, - "oneofdecl": "_filter", - "defaultValue": "" - } - ] - }, - { - "name": "ListOrdersResponse", - "longName": "ListOrdersResponse", - "fullName": "datanode.api.v2.ListOrdersResponse", - "description": "Response that is received from the query to list orders", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "orders", - "description": "Page of orders data and corresponding page information.", - "label": "", - "type": "OrderConnection", - "longType": "OrderConnection", - "fullType": "datanode.api.v2.OrderConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPaidLiquidityFeesRequest", - "longName": "ListPaidLiquidityFeesRequest", - "fullName": "datanode.api.v2.ListPaidLiquidityFeesRequest", - "description": "Paid liquidity fees request.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Restrict fee data to those fees generated in the given market.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Restrict fee statistics to those paid in the given asset.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch to get paid liquidity fee statistics for. If omitted, the last complete epoch is used.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_epoch_seq", - "defaultValue": "" - }, - { - "name": "party_ids", - "description": "Restrict fee data to those fees paid to the given parties.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListPaidLiquidityFeesResponse", - "longName": "ListPaidLiquidityFeesResponse", - "fullName": "datanode.api.v2.ListPaidLiquidityFeesResponse", - "description": "Paid liquidity fees response.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "paid_liquidity_fees", - "description": "Page of paid liquidity fees and corresponding page information.", - "label": "", - "type": "PaidLiquidityFeesConnection", - "longType": "PaidLiquidityFeesConnection", - "fullType": "datanode.api.v2.PaidLiquidityFeesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartiesProfilesRequest", - "longName": "ListPartiesProfilesRequest", - "fullName": "datanode.api.v2.ListPartiesProfilesRequest", - "description": "Request to list profiles by party ID.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties", - "description": "Restrict the returned profiles to only the given party IDs. If not set,\nall parties' profiles will be returned.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination control.", - "label": "", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartiesProfilesResponse", - "longName": "ListPartiesProfilesResponse", - "fullName": "datanode.api.v2.ListPartiesProfilesResponse", - "description": "Response from listing parties' profiles.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "profiles", - "description": "Page of profile data and corresponding page information.", - "label": "", - "type": "PartiesProfilesConnection", - "longType": "PartiesProfilesConnection", - "fullType": "datanode.api.v2.PartiesProfilesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartiesRequest", - "longName": "ListPartiesRequest", - "fullName": "datanode.api.v2.ListPartiesRequest", - "description": "Request to list parties by ID", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict the returned party to only the given party ID. If not set, all parties will be returned.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination control.", - "label": "", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartiesResponse", - "longName": "ListPartiesResponse", - "fullName": "datanode.api.v2.ListPartiesResponse", - "description": "Response from listing parties", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties", - "description": "Page of parties data and corresponding page information.", - "label": "", - "type": "PartyConnection", - "longType": "PartyConnection", - "fullType": "datanode.api.v2.PartyConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartyMarginModesRequest", - "longName": "ListPartyMarginModesRequest", - "fullName": "datanode.api.v2.ListPartyMarginModesRequest", - "description": "Request to retrieve party margin modes.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to filter for.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to filter for.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartyMarginModesResponse", - "longName": "ListPartyMarginModesResponse", - "fullName": "datanode.api.v2.ListPartyMarginModesResponse", - "description": "Response containing party margin modes.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_margin_modes", - "description": "Page of party margin modes data and corresponding page information.", - "label": "", - "type": "PartyMarginModesConnection", - "longType": "PartyMarginModesConnection", - "fullType": "datanode.api.v2.PartyMarginModesConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPositionsRequest", - "longName": "ListPositionsRequest", - "fullName": "datanode.api.v2.ListPositionsRequest", - "description": "Request used to list all positions for a party.\nOptionally, if a market ID is set, the results will be filtered for that market only.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID to list positions for, required field.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID to filter for. If empty, no markets will be filtered.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ], - "options": { - "deprecated": true - } - }, - { - "name": "ListPositionsResponse", - "longName": "ListPositionsResponse", - "fullName": "datanode.api.v2.ListPositionsResponse", - "description": "Response for a list of positions for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "positions", - "description": "Page of positions data and corresponding page information.", - "label": "", - "type": "PositionConnection", - "longType": "PositionConnection", - "fullType": "datanode.api.v2.PositionConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ], - "options": { - "deprecated": true - } - }, - { - "name": "ListProtocolUpgradeProposalsRequest", - "longName": "ListProtocolUpgradeProposalsRequest", - "fullName": "datanode.api.v2.ListProtocolUpgradeProposalsRequest", - "description": "Request type for ListProtocolUpgradeProposals; fetches a paginated list of protocol upgrade proposals", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "status", - "description": "Restrict protocol upgrade proposals to those with the given status.", - "label": "optional", - "type": "ProtocolUpgradeProposalStatus", - "longType": "vega.events.v1.ProtocolUpgradeProposalStatus", - "fullType": "vega.events.v1.ProtocolUpgradeProposalStatus", - "ismap": false, - "isoneof": true, - "oneofdecl": "_status", - "defaultValue": "" - }, - { - "name": "approved_by", - "description": "Restrict protocol upgrade proposals to those approved by the given node ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_approved_by", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListProtocolUpgradeProposalsResponse", - "longName": "ListProtocolUpgradeProposalsResponse", - "fullName": "datanode.api.v2.ListProtocolUpgradeProposalsResponse", - "description": "Response type from a ListProtocolUpgradeProposals RPC call; a paginated list of protocol upgrade proposals", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "protocol_upgrade_proposals", - "description": "Page of protocol upgrade proposals and corresponding page information.", - "label": "", - "type": "ProtocolUpgradeProposalConnection", - "longType": "ProtocolUpgradeProposalConnection", - "fullType": "datanode.api.v2.ProtocolUpgradeProposalConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListReferralSetRefereesRequest", - "longName": "ListReferralSetRefereesRequest", - "fullName": "datanode.api.v2.ListReferralSetRefereesRequest", - "description": "Request to retrieve information about a referral set's referees", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "referral_set_id", - "description": "Referral set ID to retrieve information for", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referral_set_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "Referrer to filter by. If referrer set ID is provided, this field is ignored.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referrer", - "defaultValue": "" - }, - { - "name": "referee", - "description": "Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referee", - "defaultValue": "" - }, - { - "name": "aggregation_epochs", - "description": "Epochs to aggregate party volume and rewards over. If omitted, 30 epochs will be used.", - "label": "optional", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": true, - "oneofdecl": "_aggregation_epochs", - "defaultValue": "" - } - ] - }, - { - "name": "ListReferralSetRefereesResponse", - "longName": "ListReferralSetRefereesResponse", - "fullName": "datanode.api.v2.ListReferralSetRefereesResponse", - "description": "Response containing information about a referral set's referees", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "referral_set_referees", - "description": "Page of referral set referee data and corresponding page information.", - "label": "", - "type": "ReferralSetRefereeConnection", - "longType": "ReferralSetRefereeConnection", - "fullType": "datanode.api.v2.ReferralSetRefereeConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListReferralSetsRequest", - "longName": "ListReferralSetsRequest", - "fullName": "datanode.api.v2.ListReferralSetsRequest", - "description": "Request to retrieve information about a referral set or sets", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "referral_set_id", - "description": "Referral set ID to retrieve information for", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referral_set_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "Referrer to filter by. If referrer set ID is provided, this field is ignored.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referrer", - "defaultValue": "" - }, - { - "name": "referee", - "description": "Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_referee", - "defaultValue": "" - } - ] - }, - { - "name": "ListReferralSetsResponse", - "longName": "ListReferralSetsResponse", - "fullName": "datanode.api.v2.ListReferralSetsResponse", - "description": "Response containing information about a referral set or sets", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "referral_sets", - "description": "Page of referral set data and corresponding page information.", - "label": "", - "type": "ReferralSetConnection", - "longType": "ReferralSetConnection", - "fullType": "datanode.api.v2.ReferralSetConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListRewardSummariesRequest", - "longName": "ListRewardSummariesRequest", - "fullName": "datanode.api.v2.ListRewardSummariesRequest", - "description": "Request to get reward details for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict the reward summary to rewards paid to the given parties.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Restrict the reward summary to rewards paid in the given assets.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListRewardSummariesResponse", - "longName": "ListRewardSummariesResponse", - "fullName": "datanode.api.v2.ListRewardSummariesResponse", - "description": "Response from listing reward details in for a single party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "summaries", - "description": "Page of rewards details data and corresponding page information.", - "label": "repeated", - "type": "RewardSummary", - "longType": "vega.RewardSummary", - "fullType": "vega.RewardSummary", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListRewardsRequest", - "longName": "ListRewardsRequest", - "fullName": "datanode.api.v2.ListRewardsRequest", - "description": "Request to get reward details for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict rewards data to those that were received by the given party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_id", - "description": "Restrict rewards data to those that were paid with the given asset ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "from_epoch", - "description": "Restrict rewards data to those that were paid after and including the given epoch ID.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_from_epoch", - "defaultValue": "" - }, - { - "name": "to_epoch", - "description": "Restrict rewards data to those that were paid up to and including the given epoch ID.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_to_epoch", - "defaultValue": "" - }, - { - "name": "team_id", - "description": "Filter for rewards paid if the party is a member of the given team", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_id", - "defaultValue": "" - }, - { - "name": "game_id", - "description": "Filter for rewards paid if the party participated in the given game", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_game_id", - "defaultValue": "" - } - ] - }, - { - "name": "ListRewardsResponse", - "longName": "ListRewardsResponse", - "fullName": "datanode.api.v2.ListRewardsResponse", - "description": "Response for listing reward details for a single party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "rewards", - "description": "Page of rewards data and corresponding page information.", - "label": "", - "type": "RewardsConnection", - "longType": "RewardsConnection", - "fullType": "datanode.api.v2.RewardsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListStopOrdersRequest", - "longName": "ListStopOrdersRequest", - "fullName": "datanode.api.v2.ListStopOrdersRequest", - "description": "Request that is sent when executing a query for a list of stop orders.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pagination", - "description": "Optional pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "filter", - "description": "Order filter contains all filtering conditions and values that are applied to the orders listing.", - "label": "optional", - "type": "StopOrderFilter", - "longType": "StopOrderFilter", - "fullType": "datanode.api.v2.StopOrderFilter", - "ismap": false, - "isoneof": true, - "oneofdecl": "_filter", - "defaultValue": "" - } - ] - }, - { - "name": "ListStopOrdersResponse", - "longName": "ListStopOrdersResponse", - "fullName": "datanode.api.v2.ListStopOrdersResponse", - "description": "Response that is received from the query to list stop orders.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "orders", - "description": "Page of stop orders data and corresponding page information.", - "label": "", - "type": "StopOrderConnection", - "longType": "StopOrderConnection", - "fullType": "datanode.api.v2.StopOrderConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListSuccessorMarketsRequest", - "longName": "ListSuccessorMarketsRequest", - "fullName": "datanode.api.v2.ListSuccessorMarketsRequest", - "description": "Request for listing successor markets.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID that is a member of the succession line. This can be the original market\nor any subsequent child market that succeeded it.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "include_full_history", - "description": "Flag to indicate whether or not to include the full succession line, or only list\nthe children of the given market ID. If true, the full succession line is included.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination control.", - "label": "", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListSuccessorMarketsResponse", - "longName": "ListSuccessorMarketsResponse", - "fullName": "datanode.api.v2.ListSuccessorMarketsResponse", - "description": "Response from a list successor markets request.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "successor_markets", - "description": "List of markets in the succession line.", - "label": "", - "type": "SuccessorMarketConnection", - "longType": "SuccessorMarketConnection", - "fullType": "datanode.api.v2.SuccessorMarketConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamMembersStatisticsRequest", - "longName": "ListTeamMembersStatisticsRequest", - "fullName": "datanode.api.v2.ListTeamMembersStatisticsRequest", - "description": "Request to list all team members' statistics.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "Restrict team statistics to those with the given team ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Restrict team members' statistics to those with the given party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "aggregation_epochs", - "description": "Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_aggregation_epochs", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamMembersStatisticsResponse", - "longName": "ListTeamMembersStatisticsResponse", - "fullName": "datanode.api.v2.ListTeamMembersStatisticsResponse", - "description": "Response for the list team members' statistics request containing the statistics.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "statistics", - "description": "Page of team members' statistics data and corresponding page information.", - "label": "", - "type": "TeamMembersStatisticsConnection", - "longType": "TeamMembersStatisticsConnection", - "fullType": "datanode.api.v2.TeamMembersStatisticsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamRefereeHistoryRequest", - "longName": "ListTeamRefereeHistoryRequest", - "fullName": "datanode.api.v2.ListTeamRefereeHistoryRequest", - "description": "Request that is sent when listing the referee history for a given team.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "referee", - "description": "Party ID to list referee history for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamRefereeHistoryResponse", - "longName": "ListTeamRefereeHistoryResponse", - "fullName": "datanode.api.v2.ListTeamRefereeHistoryResponse", - "description": "Response that is sent when listing the referee history for a given team.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_referee_history", - "description": "Page of team referee history data and corresponding page information.", - "label": "", - "type": "TeamRefereeHistoryConnection", - "longType": "TeamRefereeHistoryConnection", - "fullType": "datanode.api.v2.TeamRefereeHistoryConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamRefereesRequest", - "longName": "ListTeamRefereesRequest", - "fullName": "datanode.api.v2.ListTeamRefereesRequest", - "description": "Request that is sent when listing the referees for a given team.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "Team ID to list referees for.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamRefereesResponse", - "longName": "ListTeamRefereesResponse", - "fullName": "datanode.api.v2.ListTeamRefereesResponse", - "description": "Response that is sent when listing the referees for a given team.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_referees", - "description": "Page of team referee data and corresponding page information.", - "label": "", - "type": "TeamRefereeConnection", - "longType": "TeamRefereeConnection", - "fullType": "datanode.api.v2.TeamRefereeConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamsRequest", - "longName": "ListTeamsRequest", - "fullName": "datanode.api.v2.ListTeamsRequest", - "description": "Request to list all teams", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "Restrict teams to those with the given team ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_id", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Restrict teams to those where the given party is a referrer or a referee.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamsResponse", - "longName": "ListTeamsResponse", - "fullName": "datanode.api.v2.ListTeamsResponse", - "description": "Response for the list teams request containing the team information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "teams", - "description": "Page of team data and corresponding page information.", - "label": "", - "type": "TeamConnection", - "longType": "TeamConnection", - "fullType": "datanode.api.v2.TeamConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamsStatisticsRequest", - "longName": "ListTeamsStatisticsRequest", - "fullName": "datanode.api.v2.ListTeamsStatisticsRequest", - "description": "Request to list all teams' statistics.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "Restrict team statistics to those with the given team ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_id", - "defaultValue": "" - }, - { - "name": "aggregation_epochs", - "description": "Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_aggregation_epochs", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListTeamsStatisticsResponse", - "longName": "ListTeamsStatisticsResponse", - "fullName": "datanode.api.v2.ListTeamsStatisticsResponse", - "description": "Response for the list teams' statistics request containing the statistics.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "statistics", - "description": "Page of teams' statistics data and corresponding page information.", - "label": "", - "type": "TeamsStatisticsConnection", - "longType": "TeamsStatisticsConnection", - "fullType": "datanode.api.v2.TeamsStatisticsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTradesRequest", - "longName": "ListTradesRequest", - "fullName": "datanode.api.v2.ListTradesRequest", - "description": "Request to list trades", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_ids", - "description": "Restrict trades to those that occurred on the given markets.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_ids", - "description": "Restrict trades to those that were caused by the given orders.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_ids", - "description": "Restrict trades to those that were caused by orders placed by the given parties.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Restrict trades to those made during the given date range. If not set, all trades will be returned.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - } - ] - }, - { - "name": "ListTradesResponse", - "longName": "ListTradesResponse", - "fullName": "datanode.api.v2.ListTradesResponse", - "description": "Response from listing trades", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "trades", - "description": "Page of trades data and corresponding page information.", - "label": "", - "type": "TradeConnection", - "longType": "TradeConnection", - "fullType": "datanode.api.v2.TradeConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListTransfersRequest", - "longName": "ListTransfersRequest", - "fullName": "datanode.api.v2.ListTransfersRequest", - "description": "Request that is sent to list transfers", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pubkey", - "description": "Restrict transfer to those where the given public key is a sender or receiver.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pubkey", - "defaultValue": "" - }, - { - "name": "direction", - "description": "Restrict transfers to those in the given direction from the supplied public key.\nWhen is_reward is true, and pubkey is set, then direction MUST be TRANSFER_DIRECTION_DIRECTION_FROM.", - "label": "", - "type": "TransferDirection", - "longType": "TransferDirection", - "fullType": "datanode.api.v2.TransferDirection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "is_reward", - "description": "Restrict transfers to those related to reward transfers.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_is_reward", - "defaultValue": "" - }, - { - "name": "from_epoch", - "description": "Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_from_epoch", - "defaultValue": "" - }, - { - "name": "to_epoch", - "description": "Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_to_epoch", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status to filter on.", - "label": "optional", - "type": "Status", - "longType": "vega.events.v1.Transfer.Status", - "fullType": "vega.events.v1.Transfer.Status", - "ismap": false, - "isoneof": true, - "oneofdecl": "_status", - "defaultValue": "" - }, - { - "name": "scope", - "description": "Dispatch strategy's scope to filter for.", - "label": "optional", - "type": "Scope", - "longType": "ListTransfersRequest.Scope", - "fullType": "datanode.api.v2.ListTransfersRequest.Scope", - "ismap": false, - "isoneof": true, - "oneofdecl": "_scope", - "defaultValue": "" - } - ] - }, - { - "name": "ListTransfersResponse", - "longName": "ListTransfersResponse", - "fullName": "datanode.api.v2.ListTransfersResponse", - "description": "Response that is received when listing transfers", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfers", - "description": "Page of transfers data and corresponding page information.", - "label": "", - "type": "TransferConnection", - "longType": "TransferConnection", - "fullType": "datanode.api.v2.TransferConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListVotesRequest", - "longName": "ListVotesRequest", - "fullName": "datanode.api.v2.ListVotesRequest", - "description": "Request that is used to list governance votes", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party for which the votes are requested.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "proposal_id", - "description": "Proposal ID to list votes for.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_proposal_id", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Optional pagination control.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - } - ] - }, - { - "name": "ListVotesResponse", - "longName": "ListVotesResponse", - "fullName": "datanode.api.v2.ListVotesResponse", - "description": "Response that is received when listing Votes", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "votes", - "description": "Page of votes data received and corresponding page information.", - "label": "", - "type": "VoteConnection", - "longType": "VoteConnection", - "fullType": "datanode.api.v2.VoteConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListWithdrawalsRequest", - "longName": "ListWithdrawalsRequest", - "fullName": "datanode.api.v2.ListWithdrawalsRequest", - "description": "List all withdrawals for a given party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict withdrawals to those made by this party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pagination", - "description": "Pagination controls.", - "label": "optional", - "type": "Pagination", - "longType": "Pagination", - "fullType": "datanode.api.v2.Pagination", - "ismap": false, - "isoneof": true, - "oneofdecl": "_pagination", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Date range of the requested data, if provided.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - } - ] - }, - { - "name": "ListWithdrawalsResponse", - "longName": "ListWithdrawalsResponse", - "fullName": "datanode.api.v2.ListWithdrawalsResponse", - "description": "Response from listing withdrawals data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "withdrawals", - "description": "Page of withdrawals data and corresponding page information.", - "label": "", - "type": "WithdrawalsConnection", - "longType": "WithdrawalsConnection", - "fullType": "datanode.api.v2.WithdrawalsConnection", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarginConnection", - "longName": "MarginConnection", - "fullName": "datanode.api.v2.MarginConnection", - "description": "Page of margins data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of margins data and their corresponding cursors.", - "label": "repeated", - "type": "MarginEdge", - "longType": "MarginEdge", - "fullType": "datanode.api.v2.MarginEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarginEdge", - "longName": "MarginEdge", - "fullName": "datanode.api.v2.MarginEdge", - "description": "Margin data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Margin levels data that satisfy a list margin levels request.", - "label": "", - "type": "MarginLevels", - "longType": "vega.MarginLevels", - "fullType": "vega.MarginLevels", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarginEstimate", - "longName": "MarginEstimate", - "fullName": "datanode.api.v2.MarginEstimate", - "description": "Margin level estimate for both worst and best case possible.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "worst_case", - "description": "Margin level estimate assuming slippage cap is applied.", - "label": "", - "type": "MarginLevels", - "longType": "vega.MarginLevels", - "fullType": "vega.MarginLevels", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "best_case", - "description": "Margin level estimate assuming no slippage.", - "label": "", - "type": "MarginLevels", - "longType": "vega.MarginLevels", - "fullType": "vega.MarginLevels", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketConnection", - "longName": "MarketConnection", - "fullName": "datanode.api.v2.MarketConnection", - "description": "Page of markets and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of markets and their corresponding cursors.", - "label": "repeated", - "type": "MarketEdge", - "longType": "MarketEdge", - "fullType": "datanode.api.v2.MarketEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketDataConnection", - "longName": "MarketDataConnection", - "fullName": "datanode.api.v2.MarketDataConnection", - "description": "Page of market data items and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of market data items and their corresponding cursors.", - "label": "repeated", - "type": "MarketDataEdge", - "longType": "MarketDataEdge", - "fullType": "datanode.api.v2.MarketDataEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketDataEdge", - "longName": "MarketDataEdge", - "fullName": "datanode.api.v2.MarketDataEdge", - "description": "Market data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data generated by a market when open.", - "label": "", - "type": "MarketData", - "longType": "vega.MarketData", - "fullType": "vega.MarketData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketEdge", - "longName": "MarketEdge", - "fullName": "datanode.api.v2.MarketEdge", - "description": "Market information with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Information about the market.", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NetworkParameterConnection", - "longName": "NetworkParameterConnection", - "fullName": "datanode.api.v2.NetworkParameterConnection", - "description": "Page of network parameters and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of network parameters data and their corresponding cursors.", - "label": "repeated", - "type": "NetworkParameterEdge", - "longType": "NetworkParameterEdge", - "fullType": "datanode.api.v2.NetworkParameterEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NetworkParameterEdge", - "longName": "NetworkParameterEdge", - "fullName": "datanode.api.v2.NetworkParameterEdge", - "description": "Network parameter with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Name and associated value of a network parameter.", - "label": "", - "type": "NetworkParameter", - "longType": "vega.NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeBasic", - "longName": "NodeBasic", - "fullName": "datanode.api.v2.NodeBasic", - "description": "Represents a basic node without any epoch specific details like delegations, staking, rewards etc.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID identifying the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pub_key", - "description": "Node operator's public key.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tm_pub_key", - "description": "Tendermint public key of the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_address", - "description": "Ethereum public key of the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "info_url", - "description": "URL that provides more information about the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "location", - "description": "Country code for the location of the node.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Node status.", - "label": "", - "type": "NodeStatus", - "longType": "vega.NodeStatus", - "fullType": "vega.NodeStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Node name.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "Avatar URL.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeEdge", - "longName": "NodeEdge", - "fullName": "datanode.api.v2.NodeEdge", - "description": "Node data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data specific to a single node on the Vega network.", - "label": "", - "type": "Node", - "longType": "vega.Node", - "fullType": "vega.Node", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeSignatureEdge", - "longName": "NodeSignatureEdge", - "fullName": "datanode.api.v2.NodeSignatureEdge", - "description": "Nodes signature edge with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Node signature data.", - "label": "", - "type": "NodeSignature", - "longType": "vega.commands.v1.NodeSignature", - "fullType": "vega.commands.v1.NodeSignature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeSignaturesConnection", - "longName": "NodeSignaturesConnection", - "fullName": "datanode.api.v2.NodeSignaturesConnection", - "description": "Page of node signatures and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of node signatures and their corresponding cursors.", - "label": "repeated", - "type": "NodeSignatureEdge", - "longType": "NodeSignatureEdge", - "fullType": "datanode.api.v2.NodeSignatureEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodesConnection", - "longName": "NodesConnection", - "fullName": "datanode.api.v2.NodesConnection", - "description": "Page of node data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of node data and their corresponding cursors.", - "label": "repeated", - "type": "NodeEdge", - "longType": "NodeEdge", - "fullType": "datanode.api.v2.NodeEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveAccountsRequest", - "longName": "ObserveAccountsRequest", - "fullName": "datanode.api.v2.ObserveAccountsRequest", - "description": "Request that is sent when getting a subscription to a stream of accounts.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID to filter accounts by. If empty, no markets will be filtered.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to filter accounts by. If empty, no parties will be filtered.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "Asset ID to filter accounts by. If empty, no assets will be filtered.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Account type to subscribe to, required field.", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveAccountsResponse", - "longName": "ObserveAccountsResponse", - "fullName": "datanode.api.v2.ObserveAccountsResponse", - "description": "Response that is received when subscribing to a stream of accounts.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "snapshot", - "description": "'Initial image' snapshot containing current account balances.", - "label": "", - "type": "AccountSnapshotPage", - "longType": "AccountSnapshotPage", - "fullType": "datanode.api.v2.AccountSnapshotPage", - "ismap": false, - "isoneof": true, - "oneofdecl": "response", - "defaultValue": "" - }, - { - "name": "updates", - "description": "List of account updates in the last block.", - "label": "", - "type": "AccountUpdates", - "longType": "AccountUpdates", - "fullType": "datanode.api.v2.AccountUpdates", - "ismap": false, - "isoneof": true, - "oneofdecl": "response", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveCandleDataRequest", - "longName": "ObserveCandleDataRequest", - "fullName": "datanode.api.v2.ObserveCandleDataRequest", - "description": "Request that is used to subscribe to a stream of candles", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "candle_id", - "description": "Unique ID for the candle.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveCandleDataResponse", - "longName": "ObserveCandleDataResponse", - "fullName": "datanode.api.v2.ObserveCandleDataResponse", - "description": "Response that is received when subscribing to a stream of candles", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "candle", - "description": "Candle data.", - "label": "", - "type": "Candle", - "longType": "Candle", - "fullType": "datanode.api.v2.Candle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveDelegationsRequest", - "longName": "ObserveDelegationsRequest", - "fullName": "datanode.api.v2.ObserveDelegationsRequest", - "description": "Request to subscribe to all event related to delegations, with the given filters", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID to get delegations for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "Node ID to get delegations for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_node_id", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveDelegationsResponse", - "longName": "ObserveDelegationsResponse", - "fullName": "datanode.api.v2.ObserveDelegationsResponse", - "description": "Response with all events related to delegations, with the given filters", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "delegation", - "description": "How much a party is delegating to a node and when.", - "label": "", - "type": "Delegation", - "longType": "vega.Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveEventBusRequest", - "longName": "ObserveEventBusRequest", - "fullName": "datanode.api.v2.ObserveEventBusRequest", - "description": "Request to subscribe to a stream of one or more event types from the Vega event bus", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "type", - "description": "One or more types of event, required field.", - "label": "repeated", - "type": "BusEventType", - "longType": "vega.events.v1.BusEventType", - "fullType": "vega.events.v1.BusEventType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID to filter for, optional field. If empty, no markets will be excluded from the stream.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to filter for, optional field. If empty, no parties will be excluded from the stream.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "batch_size", - "description": "Batch size,\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveEventBusResponse", - "longName": "ObserveEventBusResponse", - "fullName": "datanode.api.v2.ObserveEventBusResponse", - "description": "Response to a subscribed stream of events from the Vega event bus", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "events", - "description": "List of events that occurred on the Vega event bus.", - "label": "repeated", - "type": "BusEvent", - "longType": "vega.events.v1.BusEvent", - "fullType": "vega.events.v1.BusEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveGovernanceRequest", - "longName": "ObserveGovernanceRequest", - "fullName": "datanode.api.v2.ObserveGovernanceRequest", - "description": "Request for governance subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict proposal updates to those proposed by the given party ID.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveGovernanceResponse", - "longName": "ObserveGovernanceResponse", - "fullName": "datanode.api.v2.ObserveGovernanceResponse", - "description": "Response from governance subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "data", - "description": "Governance data, i.e. proposal and votes for and against.", - "label": "", - "type": "GovernanceData", - "longType": "vega.GovernanceData", - "fullType": "vega.GovernanceData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveLedgerMovementsRequest", - "longName": "ObserveLedgerMovementsRequest", - "fullName": "datanode.api.v2.ObserveLedgerMovementsRequest", - "description": "Request to subscribe to ledger movements", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "ObserveLedgerMovementsResponse", - "longName": "ObserveLedgerMovementsResponse", - "fullName": "datanode.api.v2.ObserveLedgerMovementsResponse", - "description": "Response from ledger movements subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ledger_movement", - "description": "Ledger movements data with list of ledger entries and and post-transfer balances.", - "label": "", - "type": "LedgerMovement", - "longType": "vega.LedgerMovement", - "fullType": "vega.LedgerMovement", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveLiquidityProvisionsRequest", - "longName": "ObserveLiquidityProvisionsRequest", - "fullName": "datanode.api.v2.ObserveLiquidityProvisionsRequest", - "description": "Request sent to subscribe to liquidity provisions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Target market to observe for liquidity provisions.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Target party to observe for submitted liquidity provisions.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveLiquidityProvisionsResponse", - "longName": "ObserveLiquidityProvisionsResponse", - "fullName": "datanode.api.v2.ObserveLiquidityProvisionsResponse", - "description": "Response from liquidity provisions subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "liquidity_provisions", - "description": "", - "label": "repeated", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarginLevelsRequest", - "longName": "ObserveMarginLevelsRequest", - "fullName": "datanode.api.v2.ObserveMarginLevelsRequest", - "description": "Request to subscribe to a stream of MarginLevels data.\nIf a party ID is provided, the stream will contain margin levels for that party only.\nOptionally, the list can be additionally filtered by market", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict margin level updates to those relating to the given party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Restrict margin level updates to those relating to the given market.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarginLevelsResponse", - "longName": "ObserveMarginLevelsResponse", - "fullName": "datanode.api.v2.ObserveMarginLevelsResponse", - "description": "Response from subscribing to margin levels data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "margin_levels", - "description": "Margin levels data that match the subscription request filters.", - "label": "", - "type": "MarginLevels", - "longType": "vega.MarginLevels", - "fullType": "vega.MarginLevels", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarketsDataRequest", - "longName": "ObserveMarketsDataRequest", - "fullName": "datanode.api.v2.ObserveMarketsDataRequest", - "description": "Request that is sent for market data subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_ids", - "description": "Restrict updates to market data by the given market IDs.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarketsDataResponse", - "longName": "ObserveMarketsDataResponse", - "fullName": "datanode.api.v2.ObserveMarketsDataResponse", - "description": "Response that is received for market data subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_data", - "description": "List of market data.", - "label": "repeated", - "type": "MarketData", - "longType": "vega.MarketData", - "fullType": "vega.MarketData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarketsDepthRequest", - "longName": "ObserveMarketsDepthRequest", - "fullName": "datanode.api.v2.ObserveMarketsDepthRequest", - "description": "Request that is sent to get market depth subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_ids", - "description": "Restrict market depth data by the given market IDs.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarketsDepthResponse", - "longName": "ObserveMarketsDepthResponse", - "fullName": "datanode.api.v2.ObserveMarketsDepthResponse", - "description": "Response that is received for MarketDepth subscription.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_depth", - "description": "List of market depth data.", - "label": "repeated", - "type": "MarketDepth", - "longType": "vega.MarketDepth", - "fullType": "vega.MarketDepth", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarketsDepthUpdatesRequest", - "longName": "ObserveMarketsDepthUpdatesRequest", - "fullName": "datanode.api.v2.ObserveMarketsDepthUpdatesRequest", - "description": "Request that is sent for market depth update subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_ids", - "description": "Restrict updates to market depth by the given market IDs.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveMarketsDepthUpdatesResponse", - "longName": "ObserveMarketsDepthUpdatesResponse", - "fullName": "datanode.api.v2.ObserveMarketsDepthUpdatesResponse", - "description": "Response that is received for market depth update subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "update", - "description": "List of market depth update data.", - "label": "repeated", - "type": "MarketDepthUpdate", - "longType": "vega.MarketDepthUpdate", - "fullType": "vega.MarketDepthUpdate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveOrdersRequest", - "longName": "ObserveOrdersRequest", - "fullName": "datanode.api.v2.ObserveOrdersRequest", - "description": "Request to subscribe to a stream of orders.\n\nRequest fields market ID and party ID are both optional filters:\nIf omitted all orders, for all parties on all markets will be returned on the stream\nBoth filters can be combined", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_ids", - "description": "Restrict orders to those placed on the given markets.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_ids", - "description": "Restrict orders to those placed on the by the given parties.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "exclude_liquidity", - "description": "Whether liquidity orders should be excluded from the stream. If not set, liquidity orders will be included.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_exclude_liquidity", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveOrdersResponse", - "longName": "ObserveOrdersResponse", - "fullName": "datanode.api.v2.ObserveOrdersResponse", - "description": "Response that is received from an orders subscription.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "snapshot", - "description": "An 'initial image' snapshot containing current live orders.", - "label": "", - "type": "OrderSnapshotPage", - "longType": "OrderSnapshotPage", - "fullType": "datanode.api.v2.OrderSnapshotPage", - "ismap": false, - "isoneof": true, - "oneofdecl": "response", - "defaultValue": "" - }, - { - "name": "updates", - "description": "List of order updates in the last block.", - "label": "", - "type": "OrderUpdates", - "longType": "OrderUpdates", - "fullType": "datanode.api.v2.OrderUpdates", - "ismap": false, - "isoneof": true, - "oneofdecl": "response", - "defaultValue": "" - } - ] - }, - { - "name": "ObservePositionsRequest", - "longName": "ObservePositionsRequest", - "fullName": "datanode.api.v2.ObservePositionsRequest", - "description": "Request that is used to subscribe to a stream of positions", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict position updates to those related to the given parties.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Restrict position updates to those related to the given markets.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_market_id", - "defaultValue": "" - } - ] - }, - { - "name": "ObservePositionsResponse", - "longName": "ObservePositionsResponse", - "fullName": "datanode.api.v2.ObservePositionsResponse", - "description": "Response received from a positions subscription request", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "snapshot", - "description": "An 'initial image' snapshot containing current positions.", - "label": "", - "type": "PositionSnapshotPage", - "longType": "PositionSnapshotPage", - "fullType": "datanode.api.v2.PositionSnapshotPage", - "ismap": false, - "isoneof": true, - "oneofdecl": "response", - "defaultValue": "" - }, - { - "name": "updates", - "description": "List of position updates in the last block.", - "label": "", - "type": "PositionUpdates", - "longType": "PositionUpdates", - "fullType": "datanode.api.v2.PositionUpdates", - "ismap": false, - "isoneof": true, - "oneofdecl": "response", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveRewardsRequest", - "longName": "ObserveRewardsRequest", - "fullName": "datanode.api.v2.ObserveRewardsRequest", - "description": "Request sent for subscribing to rewards", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "asset_id", - "description": "Asset ID to get rewards data for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_asset_id", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to get rewards data for, if provided.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveRewardsResponse", - "longName": "ObserveRewardsResponse", - "fullName": "datanode.api.v2.ObserveRewardsResponse", - "description": "Response that is received from subscribing to rewards data", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "reward", - "description": "Rewards data received.", - "label": "", - "type": "Reward", - "longType": "vega.Reward", - "fullType": "vega.Reward", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveTradesRequest", - "longName": "ObserveTradesRequest", - "fullName": "datanode.api.v2.ObserveTradesRequest", - "description": "Request to subscribe to a stream of trades\n\nRequest fields market ID and party ID are both optional filters:\nIf omitted all trades, for all parties on all markets will be returned on the stream\nIf market ID is given, trades from that market will be returned on the stream\nIf party ID is given, trades from that party will be returned on the stream\nBoth filters can be combined.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_ids", - "description": "Restrict the trades streamed to those made on the given markets.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_ids", - "description": "Restrict the trades streamed to those made by the given parties.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveTradesResponse", - "longName": "ObserveTradesResponse", - "fullName": "datanode.api.v2.ObserveTradesResponse", - "description": "Stream of trades", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "trades", - "description": "List of 0 or more trades.", - "label": "repeated", - "type": "Trade", - "longType": "vega.Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveTransactionResultsRequest", - "longName": "ObserveTransactionResultsRequest", - "fullName": "datanode.api.v2.ObserveTransactionResultsRequest", - "description": "Request to subscribe to a stream of users' transaction results\n\nRequest fields party ID, hash and status are all optional filters:\nIf omitted all transaction results, for all parties with all hashes and states will be returned on the stream\nIf party ID is given, transaction results from that party will be returned on the stream\nIf hash is given, transaction result with that hash will be returned on the stream\nIf status is given, transaction result with that status (true/false - success failure) will be returned on the stream\nAll filters can be combined.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_ids", - "description": "Restrict the transaction results streamed to those made by the given parties.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hashes", - "description": "Restrict the transaction results streamed to those with given hashes.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Restrict the transaction results streamed to those with given status true/false (success/failure).", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_status", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveTransactionResultsResponse", - "longName": "ObserveTransactionResultsResponse", - "fullName": "datanode.api.v2.ObserveTransactionResultsResponse", - "description": "Stream of transaction results", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transaction_results", - "description": "List of 0 or more transaction results.", - "label": "repeated", - "type": "TransactionResult", - "longType": "vega.events.v1.TransactionResult", - "fullType": "vega.events.v1.TransactionResult", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveVotesRequest", - "longName": "ObserveVotesRequest", - "fullName": "datanode.api.v2.ObserveVotesRequest", - "description": "Request that is sent to subscribe to votes", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Restrict vote updates to those made by the given party.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_party_id", - "defaultValue": "" - }, - { - "name": "proposal_id", - "description": "Restrict vote updates to those made on the given proposal.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_proposal_id", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveVotesResponse", - "longName": "ObserveVotesResponse", - "fullName": "datanode.api.v2.ObserveVotesResponse", - "description": "Response that is received from votes subscription", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "vote", - "description": "Data associated with governance votes that are published to the stream.", - "label": "", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleDataConnection", - "longName": "OracleDataConnection", - "fullName": "datanode.api.v2.OracleDataConnection", - "description": "Page of oracle data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of oracle data and their corresponding cursors.", - "label": "repeated", - "type": "OracleDataEdge", - "longType": "OracleDataEdge", - "fullType": "datanode.api.v2.OracleDataEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleDataEdge", - "longName": "OracleDataEdge", - "fullName": "datanode.api.v2.OracleDataEdge", - "description": "Oracle data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data that was received from an external oracle.", - "label": "", - "type": "OracleData", - "longType": "vega.OracleData", - "fullType": "vega.OracleData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleSpecEdge", - "longName": "OracleSpecEdge", - "fullName": "datanode.api.v2.OracleSpecEdge", - "description": "Oracle specs data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "External spec data that satisfies the list request.", - "label": "", - "type": "OracleSpec", - "longType": "vega.OracleSpec", - "fullType": "vega.OracleSpec", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleSpecsConnection", - "longName": "OracleSpecsConnection", - "fullName": "datanode.api.v2.OracleSpecsConnection", - "description": "Page of oracle specs and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of oracle specs data and their corresponding cursors.", - "label": "repeated", - "type": "OracleSpecEdge", - "longType": "OracleSpecEdge", - "fullType": "datanode.api.v2.OracleSpecEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderConnection", - "longName": "OrderConnection", - "fullName": "datanode.api.v2.OrderConnection", - "description": "Page of orders data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of orders and their corresponding cursors.", - "label": "repeated", - "type": "OrderEdge", - "longType": "OrderEdge", - "fullType": "datanode.api.v2.OrderEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderEdge", - "longName": "OrderEdge", - "fullName": "datanode.api.v2.OrderEdge", - "description": "Order data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with an order submitted to a Vega node.", - "label": "", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderFilter", - "longName": "OrderFilter", - "fullName": "datanode.api.v2.OrderFilter", - "description": "Order filter that contains all filtering conditions and values that are applied to the orders listing", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "statuses", - "description": "Restrict orders to those with the given statuses.", - "label": "repeated", - "type": "Status", - "longType": "vega.Order.Status", - "fullType": "vega.Order.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "types", - "description": "Restrict orders to those with the given types.", - "label": "repeated", - "type": "Type", - "longType": "vega.Order.Type", - "fullType": "vega.Order.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_in_forces", - "description": "Restrict orders to those with the given Time In Force.", - "label": "repeated", - "type": "TimeInForce", - "longType": "vega.Order.TimeInForce", - "fullType": "vega.Order.TimeInForce", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "exclude_liquidity", - "description": "Indicator if liquidity provisions should be included or not in the list.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_ids", - "description": "Restrict orders to those placed by the given party IDs.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_ids", - "description": "Restrict orders to those placed on the given market IDs.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "Restrict orders to those with the given reference.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_reference", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Restrict orders to those placed during the given date range. If not set, all orders will be returned.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - }, - { - "name": "live_only", - "description": "Restrict orders to those that are live. If not set, it is treated as being false.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_live_only", - "defaultValue": "" - } - ] - }, - { - "name": "OrderInfo", - "longName": "OrderInfo", - "fullName": "datanode.api.v2.OrderInfo", - "description": "Basic description of an order.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "side", - "description": "Side for the order, e.g. buy or sell.", - "label": "", - "type": "Side", - "longType": "vega.Side", - "fullType": "vega.Side", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "Price for the order. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "remaining", - "description": "Size remaining.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "is_market_order", - "description": "Boolean that indicates if it is a market order.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderSnapshotPage", - "longName": "OrderSnapshotPage", - "fullName": "datanode.api.v2.OrderSnapshotPage", - "description": "'Initial image' of live orders, may be sent over multiple response messages.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "orders", - "description": "List of order data parts.", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_page", - "description": "Indicator if the last page is reached or not.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderUpdates", - "longName": "OrderUpdates", - "fullName": "datanode.api.v2.OrderUpdates", - "description": "List of order updates in the last block.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "orders", - "description": "List of orders data.", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PageInfo", - "longName": "PageInfo", - "fullName": "datanode.api.v2.PageInfo", - "description": "Page information for cursor based pagination", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "has_next_page", - "description": "Indicator if there is a next page.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "has_previous_page", - "description": "Indicator if there is a previous page.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start_cursor", - "description": "Start cursor.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_cursor", - "description": "End cursor.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Pagination", - "longName": "Pagination", - "fullName": "datanode.api.v2.Pagination", - "description": "All data returned from the API is ordered in a well-defined manner.\nThe specific columns and the order in which the sorting is performed\ndepend on the API endpoint being called. However, the primary sorting\ncolumn is usually the timestamp of the block in which the data was last updated.\n\nTo prevent excessively large response messages and to avoid overloading\ndatabase resources, the API employs a cursor-based pagination mechanism.\n\nThis Pagination message can be optionally provided as part of the request to specify:\n- The starting point within the total result set for beginning the page\n- The size of the returned page\n- The ordering of the data within that page\n\nIf no Pagination message is provided, the API will return the first page of\ndata using the default page size. The default page size is 1000.\n\nTo retrieve subsequent pages, the caller must examine the PageInfo structure\nreturned in the response to find a cursor string that uniquely identifies the\nlast row of that page. This cursor should then be passed in the 'after' field\nof the Pagination message in a subsequent request.\n\nFor paging backward, take the cursor for the first row of the page from PageInfo\nand pass it in the 'before' field of the Pagination message.\n\nPagination message that uses both first/after and last/before is considered invalid.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "first", - "description": "Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.", - "label": "optional", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": true, - "oneofdecl": "_first", - "defaultValue": "" - }, - { - "name": "after", - "description": "If paging forwards, the cursor string for the last row of the previous page.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_after", - "defaultValue": "" - }, - { - "name": "last", - "description": "Number of records to be returned that sort less than row identified by cursor supplied in 'before'.", - "label": "optional", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": true, - "oneofdecl": "_last", - "defaultValue": "" - }, - { - "name": "before", - "description": "If paging forwards, the cursor string for the first row of the previous page.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_before", - "defaultValue": "" - }, - { - "name": "newest_first", - "description": "Whether to order the results with the newest records first. If not set, the default value is true.", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_newest_first", - "defaultValue": "" - } - ] - }, - { - "name": "PaidLiquidityFeesConnection", - "longName": "PaidLiquidityFeesConnection", - "fullName": "datanode.api.v2.PaidLiquidityFeesConnection", - "description": "Paid liquidity fees data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of paid liquidity fees data.", - "label": "repeated", - "type": "PaidLiquidityFeesEdge", - "longType": "PaidLiquidityFeesEdge", - "fullType": "datanode.api.v2.PaidLiquidityFeesEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PaidLiquidityFeesEdge", - "longName": "PaidLiquidityFeesEdge", - "fullName": "datanode.api.v2.PaidLiquidityFeesEdge", - "description": "Paid liquidity fees data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Paid liquidity fees data returned by the API.", - "label": "", - "type": "PaidLiquidityFeesStats", - "longType": "vega.events.v1.PaidLiquidityFeesStats", - "fullType": "vega.events.v1.PaidLiquidityFeesStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further data.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartiesProfilesConnection", - "longName": "PartiesProfilesConnection", - "fullName": "datanode.api.v2.PartiesProfilesConnection", - "description": "Page of profile data per party and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of profiles and their corresponding cursors.", - "label": "repeated", - "type": "PartyProfileEdge", - "longType": "PartyProfileEdge", - "fullType": "datanode.api.v2.PartyProfileEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyConnection", - "longName": "PartyConnection", - "fullName": "datanode.api.v2.PartyConnection", - "description": "Page of parties data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of parties and their corresponding cursors.", - "label": "repeated", - "type": "PartyEdge", - "longType": "PartyEdge", - "fullType": "datanode.api.v2.PartyEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyEdge", - "longName": "PartyEdge", - "fullName": "datanode.api.v2.PartyEdge", - "description": "Party data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with a party.", - "label": "", - "type": "Party", - "longType": "vega.Party", - "fullType": "vega.Party", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyMarginMode", - "longName": "PartyMarginMode", - "fullName": "datanode.api.v2.PartyMarginMode", - "description": "Margin mode selected for the given party and market.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Unique ID of the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Unique ID of the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_mode", - "description": "Selected margin mode.", - "label": "", - "type": "MarginMode", - "longType": "vega.MarginMode", - "fullType": "vega.MarginMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_factor", - "description": "Margin factor for the market. Isolated mode only.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_margin_factor", - "defaultValue": "" - }, - { - "name": "min_theoretical_margin_factor", - "description": "Minimum theoretical margin factor for the market. Isolated mode only.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_min_theoretical_margin_factor", - "defaultValue": "" - }, - { - "name": "max_theoretical_leverage", - "description": "Maximum theoretical leverage for the market. Isolated mode only.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_max_theoretical_leverage", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the update happened.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyMarginModeEdge", - "longName": "PartyMarginModeEdge", - "fullName": "datanode.api.v2.PartyMarginModeEdge", - "description": "Party margin mode information and corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Party margin mode data.", - "label": "", - "type": "PartyMarginMode", - "longType": "PartyMarginMode", - "fullType": "datanode.api.v2.PartyMarginMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyMarginModesConnection", - "longName": "PartyMarginModesConnection", - "fullName": "datanode.api.v2.PartyMarginModesConnection", - "description": "Page of party margin modes data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of party margin modes data and their corresponding cursors.", - "label": "repeated", - "type": "PartyMarginModeEdge", - "longType": "PartyMarginModeEdge", - "fullType": "datanode.api.v2.PartyMarginModeEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyProfileEdge", - "longName": "PartyProfileEdge", - "fullName": "datanode.api.v2.PartyProfileEdge", - "description": "Party's profile data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with a party's profile.", - "label": "", - "type": "PartyProfile", - "longType": "vega.PartyProfile", - "fullType": "vega.PartyProfile", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PingRequest", - "longName": "PingRequest", - "fullName": "datanode.api.v2.PingRequest", - "description": "Request to ping the data node", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "PingResponse", - "longName": "PingResponse", - "fullName": "datanode.api.v2.PingResponse", - "description": "Ping response from the data node", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "PositionConnection", - "longName": "PositionConnection", - "fullName": "datanode.api.v2.PositionConnection", - "description": "Page of positions and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of positions data and their corresponding cursors.", - "label": "repeated", - "type": "PositionEdge", - "longType": "PositionEdge", - "fullType": "datanode.api.v2.PositionEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PositionEdge", - "longName": "PositionEdge", - "fullName": "datanode.api.v2.PositionEdge", - "description": "Position data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Position data for a party on a market.", - "label": "", - "type": "Position", - "longType": "vega.Position", - "fullType": "vega.Position", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PositionSnapshotPage", - "longName": "PositionSnapshotPage", - "fullName": "datanode.api.v2.PositionSnapshotPage", - "description": "'Initial image' of current positions, may be sent over multiple response messages", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "positions", - "description": "List of positions data.", - "label": "repeated", - "type": "Position", - "longType": "vega.Position", - "fullType": "vega.Position", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_page", - "description": "Indicator if last page is reached or not.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PositionUpdates", - "longName": "PositionUpdates", - "fullName": "datanode.api.v2.PositionUpdates", - "description": "List of position updates in the last block", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "positions", - "description": "List of positions data.", - "label": "repeated", - "type": "Position", - "longType": "vega.Position", - "fullType": "vega.Position", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PositionsFilter", - "longName": "PositionsFilter", - "fullName": "datanode.api.v2.PositionsFilter", - "description": "Filter to apply to the ListAllPositionsRequest", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_ids", - "description": "Restrict positions to those related to the given parties.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_ids", - "description": "Restrict positions to those on the given markets.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProtocolUpgradeProposalConnection", - "longName": "ProtocolUpgradeProposalConnection", - "fullName": "datanode.api.v2.ProtocolUpgradeProposalConnection", - "description": "Page of protocol upgrade proposals and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of protocol upgrade proposals data and their corresponding cursors.", - "label": "repeated", - "type": "ProtocolUpgradeProposalEdge", - "longType": "ProtocolUpgradeProposalEdge", - "fullType": "datanode.api.v2.ProtocolUpgradeProposalEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProtocolUpgradeProposalEdge", - "longName": "ProtocolUpgradeProposalEdge", - "fullName": "datanode.api.v2.ProtocolUpgradeProposalEdge", - "description": "Protocol upgrade proposal data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Protocol upgrade proposal data.", - "label": "", - "type": "ProtocolUpgradeEvent", - "longType": "vega.events.v1.ProtocolUpgradeEvent", - "fullType": "vega.events.v1.ProtocolUpgradeEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "QuantumRewardsPerEpoch", - "longName": "QuantumRewardsPerEpoch", - "fullName": "datanode.api.v2.QuantumRewardsPerEpoch", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "epoch", - "description": "Epoch for which this information is valid.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_quantum_rewards", - "description": "Total rewards accumulated over the epoch period, expressed in quantum value.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralProgram", - "longName": "ReferralProgram", - "fullName": "datanode.api.v2.ReferralProgram", - "description": "Referral program details.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Incremental version of the program. It is incremented after each program\nupdate.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "Unique ID generated from the proposal that created this program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "benefit_tiers", - "description": "Defined tiers in increasing order. First element will give Tier 1, second\nelement will give Tier 2, and so on.", - "label": "repeated", - "type": "BenefitTier", - "longType": "vega.BenefitTier", - "fullType": "vega.BenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_of_program_timestamp", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends, the\nprogram will end and benefits will be disabled.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window_length", - "description": "Number of epochs over which the referral set's running volume is evaluated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staking_tiers", - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.", - "label": "repeated", - "type": "StakingTier", - "longType": "vega.StakingTier", - "fullType": "vega.StakingTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ended_at", - "description": "Timestamp, in Unix nanoseconds, when the program ended.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_ended_at", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSet", - "longName": "ReferralSet", - "fullName": "datanode.api.v2.ReferralSet", - "description": "Data relating to a referral set.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID of the created set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "Party that created the set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Timestamp, in Unix nanoseconds, when the set was created.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "Timestamp, in Unix nanoseconds, when the set was updated.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetConnection", - "longName": "ReferralSetConnection", - "fullName": "datanode.api.v2.ReferralSetConnection", - "description": "Page of referral set data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of referral set data and their corresponding cursors.", - "label": "repeated", - "type": "ReferralSetEdge", - "longType": "ReferralSetEdge", - "fullType": "datanode.api.v2.ReferralSetEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetEdge", - "longName": "ReferralSetEdge", - "fullName": "datanode.api.v2.ReferralSetEdge", - "description": "Referral set data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Referral set data.", - "label": "", - "type": "ReferralSet", - "longType": "ReferralSet", - "fullType": "datanode.api.v2.ReferralSet", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetReferee", - "longName": "ReferralSetReferee", - "fullName": "datanode.api.v2.ReferralSetReferee", - "description": "Data relating to referees that have joined a referral set", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "referral_set_id", - "description": "Unique ID of the referral set the referee joined.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referee", - "description": "Party that joined the set.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at", - "description": "Timestamp, in Unix nanoseconds, when the party joined the set.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "at_epoch", - "description": "Epoch at which the party joined the set.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_referee_notional_taker_volume", - "description": "Total notional volume of the referee's aggressive trades over the aggregation period.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_referee_generated_rewards", - "description": "Total rewards generated by the referee over the aggregation period.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetRefereeConnection", - "longName": "ReferralSetRefereeConnection", - "fullName": "datanode.api.v2.ReferralSetRefereeConnection", - "description": "Page of data about the referral set's referees and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of referral set referee data and their corresponding cursors.", - "label": "repeated", - "type": "ReferralSetRefereeEdge", - "longType": "ReferralSetRefereeEdge", - "fullType": "datanode.api.v2.ReferralSetRefereeEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetRefereeEdge", - "longName": "ReferralSetRefereeEdge", - "fullName": "datanode.api.v2.ReferralSetRefereeEdge", - "description": "Data about the Referral set's referees with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Referral set referee data.", - "label": "", - "type": "ReferralSetReferee", - "longType": "ReferralSetReferee", - "fullType": "datanode.api.v2.ReferralSetReferee", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetStats", - "longName": "ReferralSetStats", - "fullName": "datanode.api.v2.ReferralSetStats", - "description": "Referral set statistics for a given epoch for a party.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "at_epoch", - "description": "Epoch at which the set's statistics were updated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referral_set_running_notional_taker_volume", - "description": "Running volume for the set based on the window length of the current\nreferral program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount_factor", - "description": "Discount factor applied to the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_factor", - "description": "Reward factor applied to the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_notional_taker_volume", - "description": "Current referee notional taker volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards_multiplier", - "description": "Multiplier applied to the referral reward factor when calculating referral rewards due to the referrer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards_factor_multiplier", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "was_eligible", - "description": "Indicates if the referral set was eligible to be part of the referral program.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer_taker_volume", - "description": "Referrer's taker volume", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetStatsConnection", - "longName": "ReferralSetStatsConnection", - "fullName": "datanode.api.v2.ReferralSetStatsConnection", - "description": "Page of volume discount stats data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of volume discount statistics data and their corresponding cursors.", - "label": "repeated", - "type": "ReferralSetStatsEdge", - "longType": "ReferralSetStatsEdge", - "fullType": "datanode.api.v2.ReferralSetStatsEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSetStatsEdge", - "longName": "ReferralSetStatsEdge", - "fullName": "datanode.api.v2.ReferralSetStatsEdge", - "description": "Referral set stats data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Referral set stats data.", - "label": "", - "type": "ReferralSetStats", - "longType": "ReferralSetStats", - "fullType": "datanode.api.v2.ReferralSetStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardEdge", - "longName": "RewardEdge", - "fullName": "datanode.api.v2.RewardEdge", - "description": "Rewards data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Details for a single reward payment.", - "label": "", - "type": "Reward", - "longType": "vega.Reward", - "fullType": "vega.Reward", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardSummaryFilter", - "longName": "RewardSummaryFilter", - "fullName": "datanode.api.v2.RewardSummaryFilter", - "description": "Filter to restrict the results returned by the ListEpochRewardSummaries", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "asset_ids", - "description": "Restrict reward summaries to those connected to the assets in the given list.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_ids", - "description": "Restrict reward summaries to those connected to the markets in the given list.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_epoch", - "description": "Restrict rewards summaries to those that were paid after and including the given epoch ID.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_from_epoch", - "defaultValue": "" - }, - { - "name": "to_epoch", - "description": "Restrict rewards summaries to those that were paid up to and including the given epoch ID.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_to_epoch", - "defaultValue": "" - } - ] - }, - { - "name": "RewardsConnection", - "longName": "RewardsConnection", - "fullName": "datanode.api.v2.RewardsConnection", - "description": "Page of rewards data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of rewards data items and their corresponding cursors.", - "label": "repeated", - "type": "RewardEdge", - "longType": "RewardEdge", - "fullType": "datanode.api.v2.RewardEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakeLinkingEdge", - "longName": "StakeLinkingEdge", - "fullName": "datanode.api.v2.StakeLinkingEdge", - "description": "Stake linking data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Stake linking represent the intent from a party to deposit.", - "label": "", - "type": "StakeLinking", - "longType": "vega.events.v1.StakeLinking", - "fullType": "vega.events.v1.StakeLinking", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakesConnection", - "longName": "StakesConnection", - "fullName": "datanode.api.v2.StakesConnection", - "description": "Page of stake data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of stake data and their corresponding cursors.", - "label": "repeated", - "type": "StakeLinkingEdge", - "longType": "StakeLinkingEdge", - "fullType": "datanode.api.v2.StakeLinkingEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrderConnection", - "longName": "StopOrderConnection", - "fullName": "datanode.api.v2.StopOrderConnection", - "description": "Page of stop orders data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of stop orders and their corresponding cursors.", - "label": "repeated", - "type": "StopOrderEdge", - "longType": "StopOrderEdge", - "fullType": "datanode.api.v2.StopOrderEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrderEdge", - "longName": "StopOrderEdge", - "fullName": "datanode.api.v2.StopOrderEdge", - "description": "Order data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with an order submitted to a Vega node.", - "label": "", - "type": "StopOrderEvent", - "longType": "vega.events.v1.StopOrderEvent", - "fullType": "vega.events.v1.StopOrderEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrderFilter", - "longName": "StopOrderFilter", - "fullName": "datanode.api.v2.StopOrderFilter", - "description": "Stop order filter\n\nStop order filter that contains all filtering conditions and values that are applied to the stop orders listing.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "statuses", - "description": "Restrict orders to those with the given statuses.", - "label": "repeated", - "type": "Status", - "longType": "vega.StopOrder.Status", - "fullType": "vega.StopOrder.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expiry_strategies", - "description": "Restrict orders to those with the given expiry strategies.", - "label": "repeated", - "type": "ExpiryStrategy", - "longType": "vega.StopOrder.ExpiryStrategy", - "fullType": "vega.StopOrder.ExpiryStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "date_range", - "description": "Restrict orders to those placed during the given date range. If not set, all orders will be returned.", - "label": "optional", - "type": "DateRange", - "longType": "DateRange", - "fullType": "datanode.api.v2.DateRange", - "ismap": false, - "isoneof": true, - "oneofdecl": "_date_range", - "defaultValue": "" - }, - { - "name": "party_ids", - "description": "Restrict orders to those placed by the given party IDs.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_ids", - "description": "Restrict orders to those placed on the given market IDs.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "live_only", - "description": "Live stop orders only", - "label": "optional", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": true, - "oneofdecl": "_live_only", - "defaultValue": "" - } - ] - }, - { - "name": "SuccessorMarket", - "longName": "SuccessorMarket", - "fullName": "datanode.api.v2.SuccessorMarket", - "description": "Successor market information includes the market that is a member of the succession line\nand any governance data that is associated with proposals for child markets\nwhether enacted or not.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "The market that is a member of the succession line.", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposals", - "description": "All proposals for child markets that have the market as a parent.", - "label": "repeated", - "type": "GovernanceData", - "longType": "vega.GovernanceData", - "fullType": "vega.GovernanceData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SuccessorMarketConnection", - "longName": "SuccessorMarketConnection", - "fullName": "datanode.api.v2.SuccessorMarketConnection", - "description": "Page of successor market records and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of successor markets and their cursors.", - "label": "repeated", - "type": "SuccessorMarketEdge", - "longType": "SuccessorMarketEdge", - "fullType": "datanode.api.v2.SuccessorMarketEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information for pagination control.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SuccessorMarketEdge", - "longName": "SuccessorMarketEdge", - "fullName": "datanode.api.v2.SuccessorMarketEdge", - "description": "Successor market record with the corresponding cursor for paginated results", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Successor market record.", - "label": "", - "type": "SuccessorMarket", - "longType": "SuccessorMarket", - "fullType": "datanode.api.v2.SuccessorMarket", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor identifying the record for pagination control.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Team", - "longName": "Team", - "fullName": "datanode.api.v2.Team", - "description": "Team record containing the team information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "ID of the created team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "Party ID that created the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "Name of the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team_url", - "description": "Link to the team's homepage.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_team_url", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "Link to an image of the team's avatar.", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_avatar_url", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "Timestamp in Unix nanoseconds when the team was created.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "closed", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at_epoch", - "description": "Epoch at which the team was created.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "allow_list", - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamConnection", - "longName": "TeamConnection", - "fullName": "datanode.api.v2.TeamConnection", - "description": "Page of team data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of team data and their corresponding cursors.", - "label": "repeated", - "type": "TeamEdge", - "longType": "TeamEdge", - "fullType": "datanode.api.v2.TeamEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamEdge", - "longName": "TeamEdge", - "fullName": "datanode.api.v2.TeamEdge", - "description": "Team data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Team data.", - "label": "", - "type": "Team", - "longType": "Team", - "fullType": "datanode.api.v2.Team", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamGameEntities", - "longName": "TeamGameEntities", - "fullName": "datanode.api.v2.TeamGameEntities", - "description": "List of teams that are participating in a game", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team", - "description": "List of teams, the participant members of a team, and the metrics associated with each participant.", - "label": "repeated", - "type": "TeamGameEntity", - "longType": "TeamGameEntity", - "fullType": "datanode.api.v2.TeamGameEntity", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamGameEntity", - "longName": "TeamGameEntity", - "fullName": "datanode.api.v2.TeamGameEntity", - "description": "Data relating to a team participating in a game.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team", - "description": "Team participation breakdown", - "label": "", - "type": "TeamGameParticipation", - "longType": "TeamGameParticipation", - "fullType": "datanode.api.v2.TeamGameParticipation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rank", - "description": "Rank of the team in the game", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "Volume traded by the team", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_metric", - "description": "Reward metric applied to the team", - "label": "", - "type": "DispatchMetric", - "longType": "vega.DispatchMetric", - "fullType": "vega.DispatchMetric", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_earned", - "description": "Reward earned by the team", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_rewards_earned", - "description": "Total rewards earned by the individual for the team", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamGameParticipation", - "longName": "TeamGameParticipation", - "fullName": "datanode.api.v2.TeamGameParticipation", - "description": "Breakdown of a team's participation in a game.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "ID of the team participating", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "members_participating", - "description": "Individual team member metrics for their participation in the game", - "label": "repeated", - "type": "IndividualGameEntity", - "longType": "IndividualGameEntity", - "fullType": "datanode.api.v2.IndividualGameEntity", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamMemberStatistics", - "longName": "TeamMemberStatistics", - "fullName": "datanode.api.v2.TeamMemberStatistics", - "description": "Team member's statistics record containing the team member's information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID the statistics are related to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_quantum_volume", - "description": "Total of volume accumulated over the requested epoch period, expressed in\nquantum value.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_quantum_rewards", - "description": "Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum_rewards", - "description": "List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.", - "label": "repeated", - "type": "QuantumRewardsPerEpoch", - "longType": "QuantumRewardsPerEpoch", - "fullType": "datanode.api.v2.QuantumRewardsPerEpoch", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_games_played", - "description": "Total number of games played.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "games_played", - "description": "List of games played over the requested epoch period.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamMemberStatisticsEdge", - "longName": "TeamMemberStatisticsEdge", - "fullName": "datanode.api.v2.TeamMemberStatisticsEdge", - "description": "Team member data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Team member's statistics data.", - "label": "", - "type": "TeamMemberStatistics", - "longType": "TeamMemberStatistics", - "fullType": "datanode.api.v2.TeamMemberStatistics", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamMembersStatisticsConnection", - "longName": "TeamMembersStatisticsConnection", - "fullName": "datanode.api.v2.TeamMembersStatisticsConnection", - "description": "Page of team members' statistics and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of team member data and their corresponding cursors.", - "label": "repeated", - "type": "TeamMemberStatisticsEdge", - "longType": "TeamMemberStatisticsEdge", - "fullType": "datanode.api.v2.TeamMemberStatisticsEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamReferee", - "longName": "TeamReferee", - "fullName": "datanode.api.v2.TeamReferee", - "description": "A team's referee info", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "ID of the team the referee joined.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referee", - "description": "Party that joined the team.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at", - "description": "Timestamp in Unix nanoseconds when the party joined the team.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at_epoch", - "description": "Epoch at which the party joined the team.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamRefereeConnection", - "longName": "TeamRefereeConnection", - "fullName": "datanode.api.v2.TeamRefereeConnection", - "description": "Page of team referee data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of team referee data and their corresponding cursors.", - "label": "repeated", - "type": "TeamRefereeEdge", - "longType": "TeamRefereeEdge", - "fullType": "datanode.api.v2.TeamRefereeEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamRefereeEdge", - "longName": "TeamRefereeEdge", - "fullName": "datanode.api.v2.TeamRefereeEdge", - "description": "Team referee data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Team referee data.", - "label": "", - "type": "TeamReferee", - "longType": "TeamReferee", - "fullType": "datanode.api.v2.TeamReferee", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamRefereeHistory", - "longName": "TeamRefereeHistory", - "fullName": "datanode.api.v2.TeamRefereeHistory", - "description": "A referee's team change information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "ID of the team the referee joined.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at", - "description": "Timestamp in Unix nanoseconds when the party joined the team.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at_epoch", - "description": "Epoch at which the party joined the team.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamRefereeHistoryConnection", - "longName": "TeamRefereeHistoryConnection", - "fullName": "datanode.api.v2.TeamRefereeHistoryConnection", - "description": "Page of history data about a referee's team membership and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of team referee history data and their corresponding cursors.", - "label": "repeated", - "type": "TeamRefereeHistoryEdge", - "longType": "TeamRefereeHistoryEdge", - "fullType": "datanode.api.v2.TeamRefereeHistoryEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamRefereeHistoryEdge", - "longName": "TeamRefereeHistoryEdge", - "fullName": "datanode.api.v2.TeamRefereeHistoryEdge", - "description": "Team referee history data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Team referee data.", - "label": "", - "type": "TeamRefereeHistory", - "longType": "TeamRefereeHistory", - "fullType": "datanode.api.v2.TeamRefereeHistory", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamStatistics", - "longName": "TeamStatistics", - "fullName": "datanode.api.v2.TeamStatistics", - "description": "Team's statistics record containing the team information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_id", - "description": "Team ID the statistics are related to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_quantum_volume", - "description": "Total of volume accumulated over the requested epoch period, expressed in\nquantum value.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_quantum_rewards", - "description": "Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantum_rewards", - "description": "List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.", - "label": "repeated", - "type": "QuantumRewardsPerEpoch", - "longType": "QuantumRewardsPerEpoch", - "fullType": "datanode.api.v2.QuantumRewardsPerEpoch", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_games_played", - "description": "Total of games played.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "games_played", - "description": "List of games played over the requested epoch period.", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamStatisticsEdge", - "longName": "TeamStatisticsEdge", - "fullName": "datanode.api.v2.TeamStatisticsEdge", - "description": "Team data item with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Team's statistics data.", - "label": "", - "type": "TeamStatistics", - "longType": "TeamStatistics", - "fullType": "datanode.api.v2.TeamStatistics", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamsStatisticsConnection", - "longName": "TeamsStatisticsConnection", - "fullName": "datanode.api.v2.TeamsStatisticsConnection", - "description": "Page of teams' statistics and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of team data and their corresponding cursors.", - "label": "repeated", - "type": "TeamStatisticsEdge", - "longType": "TeamStatisticsEdge", - "fullType": "datanode.api.v2.TeamStatisticsEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TradeConnection", - "longName": "TradeConnection", - "fullName": "datanode.api.v2.TradeConnection", - "description": "Page of trades and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of trades and their corresponding cursors.", - "label": "repeated", - "type": "TradeEdge", - "longType": "TradeEdge", - "fullType": "datanode.api.v2.TradeEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TradeEdge", - "longName": "TradeEdge", - "fullName": "datanode.api.v2.TradeEdge", - "description": "Trade data item with the corresponding cursor..", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with a trade that has been executed.", - "label": "", - "type": "Trade", - "longType": "vega.Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TransferConnection", - "longName": "TransferConnection", - "fullName": "datanode.api.v2.TransferConnection", - "description": "Page of transfers data items and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of transfers data and their corresponding cursors.", - "label": "repeated", - "type": "TransferEdge", - "longType": "TransferEdge", - "fullType": "datanode.api.v2.TransferEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TransferEdge", - "longName": "TransferEdge", - "fullName": "datanode.api.v2.TransferEdge", - "description": "Transfers data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data relating to a transfer that has been made.", - "label": "", - "type": "TransferNode", - "longType": "TransferNode", - "fullType": "datanode.api.v2.TransferNode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TransferNode", - "longName": "TransferNode", - "fullName": "datanode.api.v2.TransferNode", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfer", - "description": "Data relating to a transfer that has been made.", - "label": "", - "type": "Transfer", - "longType": "vega.events.v1.Transfer", - "fullType": "vega.events.v1.Transfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fees", - "description": "Fees paid for this transfer.", - "label": "repeated", - "type": "TransferFees", - "longType": "vega.events.v1.TransferFees", - "fullType": "vega.events.v1.TransferFees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountProgram", - "longName": "VolumeDiscountProgram", - "fullName": "datanode.api.v2.VolumeDiscountProgram", - "description": "Volume discount program details.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "Incremental version of the program. It is incremented after each program\nupdate.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "Unique ID generated from the proposal that created this program.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "benefit_tiers", - "description": "Defined benefit tiers ordered by increasing discounts. Determines the level of\nbenefit a party can expect based on performance criteria.", - "label": "repeated", - "type": "VolumeBenefitTier", - "longType": "vega.VolumeBenefitTier", - "fullType": "vega.VolumeBenefitTier", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end_of_program_timestamp", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch\nends, the program will end and benefits will be disabled.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window_length", - "description": "Number of epochs over which a volume discount statistics' running volume is evaluated.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ended_at", - "description": "Timestamp in Unix nanoseconds, at which the program ended.", - "label": "optional", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_ended_at", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountStats", - "longName": "VolumeDiscountStats", - "fullName": "datanode.api.v2.VolumeDiscountStats", - "description": "Volume discount statistics for a given epoch for all parties.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "at_epoch", - "description": "Epoch at which the statistics apply.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID for which the statistics apply.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount_factor", - "description": "Discount factor applied given the party's running volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "running_volume", - "description": "The party's running volume.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountStatsConnection", - "longName": "VolumeDiscountStatsConnection", - "fullName": "datanode.api.v2.VolumeDiscountStatsConnection", - "description": "Page of volume discount stats data and corresponding page information.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of volume discount statistics data and their corresponding cursors.", - "label": "repeated", - "type": "VolumeDiscountStatsEdge", - "longType": "VolumeDiscountStatsEdge", - "fullType": "datanode.api.v2.VolumeDiscountStatsEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountStatsEdge", - "longName": "VolumeDiscountStatsEdge", - "fullName": "datanode.api.v2.VolumeDiscountStatsEdge", - "description": "Volume discount stats data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Volume discount stats data.", - "label": "", - "type": "VolumeDiscountStats", - "longType": "VolumeDiscountStats", - "fullType": "datanode.api.v2.VolumeDiscountStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VoteConnection", - "longName": "VoteConnection", - "fullName": "datanode.api.v2.VoteConnection", - "description": "Page of vote data items and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of vote data and their corresponding cursors.", - "label": "repeated", - "type": "VoteEdge", - "longType": "VoteEdge", - "fullType": "datanode.api.v2.VoteEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VoteEdge", - "longName": "VoteEdge", - "fullName": "datanode.api.v2.VoteEdge", - "description": "Votes data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with a governance vote.", - "label": "", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "WithdrawalEdge", - "longName": "WithdrawalEdge", - "fullName": "datanode.api.v2.WithdrawalEdge", - "description": "Withdrawals data with the corresponding cursor.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node", - "description": "Data associated with a single withdrawal made from the Vega network.", - "label": "", - "type": "Withdrawal", - "longType": "vega.Withdrawal", - "fullType": "vega.Withdrawal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "cursor", - "description": "Cursor that can be used to fetch further pages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "WithdrawalsConnection", - "longName": "WithdrawalsConnection", - "fullName": "datanode.api.v2.WithdrawalsConnection", - "description": "Page of withdrawals data and corresponding page information", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "edges", - "description": "Page of withdrawals data and their corresponding cursors.", - "label": "repeated", - "type": "WithdrawalEdge", - "longType": "WithdrawalEdge", - "fullType": "datanode.api.v2.WithdrawalEdge", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "page_info", - "description": "Page information that is used for fetching further pages.", - "label": "", - "type": "PageInfo", - "longType": "PageInfo", - "fullType": "datanode.api.v2.PageInfo", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [ - { - "name": "TradingDataService", - "longName": "TradingDataService", - "fullName": "datanode.api.v2.TradingDataService", - "description": "", - "methods": [ - { - "name": "ListAccounts", - "description": "List accounts\n\nGet a list of accounts matching the supplied filter, including their current balances.\nIf a given account has never had a balance, it will be absent from the list.", - "requestType": "ListAccountsRequest", - "requestLongType": "ListAccountsRequest", - "requestFullType": "datanode.api.v2.ListAccountsRequest", - "requestStreaming": false, - "responseType": "ListAccountsResponse", - "responseLongType": "ListAccountsResponse", - "responseFullType": "datanode.api.v2.ListAccountsResponse", - "responseStreaming": false - }, - { - "name": "ObserveAccounts", - "description": "Accounts subscription\n\nSubscribe to a stream of accounts", - "requestType": "ObserveAccountsRequest", - "requestLongType": "ObserveAccountsRequest", - "requestFullType": "datanode.api.v2.ObserveAccountsRequest", - "requestStreaming": false, - "responseType": "ObserveAccountsResponse", - "responseLongType": "ObserveAccountsResponse", - "responseFullType": "datanode.api.v2.ObserveAccountsResponse", - "responseStreaming": true - }, - { - "name": "Info", - "description": "Data node information\n\nGet information about the data node.\nResponse contains a semver formatted version of the data node and the commit hash, from which the data node was built", - "requestType": "InfoRequest", - "requestLongType": "InfoRequest", - "requestFullType": "datanode.api.v2.InfoRequest", - "requestStreaming": false, - "responseType": "InfoResponse", - "responseLongType": "InfoResponse", - "responseFullType": "datanode.api.v2.InfoResponse", - "responseStreaming": false - }, - { - "name": "GetOrder", - "description": "Get order\n\nGet an order by its ID. An order's ID will be the SHA3-256 hash of the signature that the order was submitted with", - "requestType": "GetOrderRequest", - "requestLongType": "GetOrderRequest", - "requestFullType": "datanode.api.v2.GetOrderRequest", - "requestStreaming": false, - "responseType": "GetOrderResponse", - "responseLongType": "GetOrderResponse", - "responseFullType": "datanode.api.v2.GetOrderResponse", - "responseStreaming": false - }, - { - "name": "ListOrders", - "description": "List orders\n\nGet a list of orders that match the given filters", - "requestType": "ListOrdersRequest", - "requestLongType": "ListOrdersRequest", - "requestFullType": "datanode.api.v2.ListOrdersRequest", - "requestStreaming": false, - "responseType": "ListOrdersResponse", - "responseLongType": "ListOrdersResponse", - "responseFullType": "datanode.api.v2.ListOrdersResponse", - "responseStreaming": false - }, - { - "name": "ListOrderVersions", - "description": "List order versions\n\nGet a list of all versions of an order in the order history", - "requestType": "ListOrderVersionsRequest", - "requestLongType": "ListOrderVersionsRequest", - "requestFullType": "datanode.api.v2.ListOrderVersionsRequest", - "requestStreaming": false, - "responseType": "ListOrderVersionsResponse", - "responseLongType": "ListOrderVersionsResponse", - "responseFullType": "datanode.api.v2.ListOrderVersionsResponse", - "responseStreaming": false - }, - { - "name": "ObserveOrders", - "description": "Observe orders\n\nSubscribe to a stream of orders", - "requestType": "ObserveOrdersRequest", - "requestLongType": "ObserveOrdersRequest", - "requestFullType": "datanode.api.v2.ObserveOrdersRequest", - "requestStreaming": false, - "responseType": "ObserveOrdersResponse", - "responseLongType": "ObserveOrdersResponse", - "responseFullType": "datanode.api.v2.ObserveOrdersResponse", - "responseStreaming": true - }, - { - "name": "GetStopOrder", - "description": "Get stop order\n\nGet a stop order by its ID. A stop order's ID will be the SHA3-256 hash of the signature that the order was submitted with.\nA stop order's ID is likely to be different from the ID of the order that will be submitted when the stop is triggered.", - "requestType": "GetStopOrderRequest", - "requestLongType": "GetStopOrderRequest", - "requestFullType": "datanode.api.v2.GetStopOrderRequest", - "requestStreaming": false, - "responseType": "GetStopOrderResponse", - "responseLongType": "GetStopOrderResponse", - "responseFullType": "datanode.api.v2.GetStopOrderResponse", - "responseStreaming": false - }, - { - "name": "ListStopOrders", - "description": "List stop orders\n\nGet a list of stop orders that match the given filters", - "requestType": "ListStopOrdersRequest", - "requestLongType": "ListStopOrdersRequest", - "requestFullType": "datanode.api.v2.ListStopOrdersRequest", - "requestStreaming": false, - "responseType": "ListStopOrdersResponse", - "responseLongType": "ListStopOrdersResponse", - "responseFullType": "datanode.api.v2.ListStopOrdersResponse", - "responseStreaming": false - }, - { - "name": "ListPositions", - "description": "Deprecated: List positions\n\nGet a list of positions by party's public key using cursor based pagination\nDeprecated: use ListAllPositions instead", - "requestType": "ListPositionsRequest", - "requestLongType": "ListPositionsRequest", - "requestFullType": "datanode.api.v2.ListPositionsRequest", - "requestStreaming": false, - "responseType": "ListPositionsResponse", - "responseLongType": "ListPositionsResponse", - "responseFullType": "datanode.api.v2.ListPositionsResponse", - "responseStreaming": false, - "options": { - "deprecated": true - } - }, - { - "name": "ListAllPositions", - "description": "List positions\n\nGet a list of all of a party's positions", - "requestType": "ListAllPositionsRequest", - "requestLongType": "ListAllPositionsRequest", - "requestFullType": "datanode.api.v2.ListAllPositionsRequest", - "requestStreaming": false, - "responseType": "ListAllPositionsResponse", - "responseLongType": "ListAllPositionsResponse", - "responseFullType": "datanode.api.v2.ListAllPositionsResponse", - "responseStreaming": false - }, - { - "name": "ObservePositions", - "description": "Observe positions\n\nSubscribe to a stream of position updates. The first messages sent through the stream will contain\ninformation about current positions, followed by updates to those positions.", - "requestType": "ObservePositionsRequest", - "requestLongType": "ObservePositionsRequest", - "requestFullType": "datanode.api.v2.ObservePositionsRequest", - "requestStreaming": false, - "responseType": "ObservePositionsResponse", - "responseLongType": "ObservePositionsResponse", - "responseFullType": "datanode.api.v2.ObservePositionsResponse", - "responseStreaming": true - }, - { - "name": "ListLedgerEntries", - "description": "List ledger entries\n\nGet a list of ledger entries within the given date range. The date range is restricted to a maximum of 5 days.\nThis query requests and sums the number of ledger entries from a given subset of accounts, specified via the 'filter' argument.\nIt returns a time series - implemented as a list of AggregateLedgerEntry structs - with a row for every time\nthe summed ledger entries of the set of specified accounts changes.\nEach account filter must contain no more than one party ID.\nAt least one party ID must be specified in the from or to account filter.\n\nEntries can be filtered by:\n - the sending account (market ID, asset ID, account type)\n - receiving account (market ID, asset ID, account type)\n - sending AND receiving account\n - transfer type either in addition to the above filters or as a standalone option\nNote: The date range is restricted to any 5 days.\n If no start or end date is provided, only ledger entries from the last 5 days will be returned.\n If a start and end date are provided, but the end date is more than 5 days after the start date, only data up to 5 days after the start date will be returned.\n If a start date is provided but no end date, the end date will be set to 5 days after the start date.\n If no start date is provided, but the end date is, the start date will be set to 5 days before the end date.", - "requestType": "ListLedgerEntriesRequest", - "requestLongType": "ListLedgerEntriesRequest", - "requestFullType": "datanode.api.v2.ListLedgerEntriesRequest", - "requestStreaming": false, - "responseType": "ListLedgerEntriesResponse", - "responseLongType": "ListLedgerEntriesResponse", - "responseFullType": "datanode.api.v2.ListLedgerEntriesResponse", - "responseStreaming": false - }, - { - "name": "ExportLedgerEntries", - "description": "Export ledger entries\n\nExport ledger entries records ledger entries to a csv file.\nMay or may not contain a date range - if no date range is provided, list all records for all times.\n\nLedger entries can be exported by:\n - export ledger entries for a single party for a given asset within a given time range\n - export ledger entries for a single party for a given asset for all times\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE", - "requestType": "ExportLedgerEntriesRequest", - "requestLongType": "ExportLedgerEntriesRequest", - "requestFullType": "datanode.api.v2.ExportLedgerEntriesRequest", - "requestStreaming": false, - "responseType": "HttpBody", - "responseLongType": ".google.api.HttpBody", - "responseFullType": "google.api.HttpBody", - "responseStreaming": true - }, - { - "name": "ListBalanceChanges", - "description": "List balance changes\n\nGet a list of the changes in account balances over a period of time.", - "requestType": "ListBalanceChangesRequest", - "requestLongType": "ListBalanceChangesRequest", - "requestFullType": "datanode.api.v2.ListBalanceChangesRequest", - "requestStreaming": false, - "responseType": "ListBalanceChangesResponse", - "responseLongType": "ListBalanceChangesResponse", - "responseFullType": "datanode.api.v2.ListBalanceChangesResponse", - "responseStreaming": false - }, - { - "name": "GetLatestMarketData", - "description": "Get latest market data\n\nGet the latest market data for a given market", - "requestType": "GetLatestMarketDataRequest", - "requestLongType": "GetLatestMarketDataRequest", - "requestFullType": "datanode.api.v2.GetLatestMarketDataRequest", - "requestStreaming": false, - "responseType": "GetLatestMarketDataResponse", - "responseLongType": "GetLatestMarketDataResponse", - "responseFullType": "datanode.api.v2.GetLatestMarketDataResponse", - "responseStreaming": false - }, - { - "name": "ListLatestMarketData", - "description": "List latest market data\n\nGet a list of the latest market data for every market", - "requestType": "ListLatestMarketDataRequest", - "requestLongType": "ListLatestMarketDataRequest", - "requestFullType": "datanode.api.v2.ListLatestMarketDataRequest", - "requestStreaming": false, - "responseType": "ListLatestMarketDataResponse", - "responseLongType": "ListLatestMarketDataResponse", - "responseFullType": "datanode.api.v2.ListLatestMarketDataResponse", - "responseStreaming": false - }, - { - "name": "GetLatestMarketDepth", - "description": "Get latest market depth\n\nGet the latest market depth for a given market", - "requestType": "GetLatestMarketDepthRequest", - "requestLongType": "GetLatestMarketDepthRequest", - "requestFullType": "datanode.api.v2.GetLatestMarketDepthRequest", - "requestStreaming": false, - "responseType": "GetLatestMarketDepthResponse", - "responseLongType": "GetLatestMarketDepthResponse", - "responseFullType": "datanode.api.v2.GetLatestMarketDepthResponse", - "responseStreaming": false - }, - { - "name": "ObserveMarketsDepth", - "description": "Observe markets depth\n\nSubscribe to a stream of the latest market depth for a given market", - "requestType": "ObserveMarketsDepthRequest", - "requestLongType": "ObserveMarketsDepthRequest", - "requestFullType": "datanode.api.v2.ObserveMarketsDepthRequest", - "requestStreaming": false, - "responseType": "ObserveMarketsDepthResponse", - "responseLongType": "ObserveMarketsDepthResponse", - "responseFullType": "datanode.api.v2.ObserveMarketsDepthResponse", - "responseStreaming": true - }, - { - "name": "ObserveMarketsDepthUpdates", - "description": "Observe markets depth updates\n\nSubscribe to a stream of updates on market depth for a given market", - "requestType": "ObserveMarketsDepthUpdatesRequest", - "requestLongType": "ObserveMarketsDepthUpdatesRequest", - "requestFullType": "datanode.api.v2.ObserveMarketsDepthUpdatesRequest", - "requestStreaming": false, - "responseType": "ObserveMarketsDepthUpdatesResponse", - "responseLongType": "ObserveMarketsDepthUpdatesResponse", - "responseFullType": "datanode.api.v2.ObserveMarketsDepthUpdatesResponse", - "responseStreaming": true - }, - { - "name": "ObserveMarketsData", - "description": "Observe markets data\n\nSubscribe to a stream of data about a given market", - "requestType": "ObserveMarketsDataRequest", - "requestLongType": "ObserveMarketsDataRequest", - "requestFullType": "datanode.api.v2.ObserveMarketsDataRequest", - "requestStreaming": false, - "responseType": "ObserveMarketsDataResponse", - "responseLongType": "ObserveMarketsDataResponse", - "responseFullType": "datanode.api.v2.ObserveMarketsDataResponse", - "responseStreaming": true - }, - { - "name": "GetMarketDataHistoryByID", - "description": "Get market data history\n\nGet market data history for a market ID from between a given date range", - "requestType": "GetMarketDataHistoryByIDRequest", - "requestLongType": "GetMarketDataHistoryByIDRequest", - "requestFullType": "datanode.api.v2.GetMarketDataHistoryByIDRequest", - "requestStreaming": false, - "responseType": "GetMarketDataHistoryByIDResponse", - "responseLongType": "GetMarketDataHistoryByIDResponse", - "responseFullType": "datanode.api.v2.GetMarketDataHistoryByIDResponse", - "responseStreaming": false - }, - { - "name": "ListTransfers", - "description": "List transfers\n\nGet a list of transfers between public keys. A valid value for public key can be one of:\n- a party ID\n- \"network\"\n- \"0000000000000000000000000000000000000000000000000000000000000000\", the public key for the global rewards account", - "requestType": "ListTransfersRequest", - "requestLongType": "ListTransfersRequest", - "requestFullType": "datanode.api.v2.ListTransfersRequest", - "requestStreaming": false, - "responseType": "ListTransfersResponse", - "responseLongType": "ListTransfersResponse", - "responseFullType": "datanode.api.v2.ListTransfersResponse", - "responseStreaming": false - }, - { - "name": "GetTransfer", - "description": "Get transfer by ID\n\nGet a specific transfer by ID", - "requestType": "GetTransferRequest", - "requestLongType": "GetTransferRequest", - "requestFullType": "datanode.api.v2.GetTransferRequest", - "requestStreaming": false, - "responseType": "GetTransferResponse", - "responseLongType": "GetTransferResponse", - "responseFullType": "datanode.api.v2.GetTransferResponse", - "responseStreaming": false - }, - { - "name": "GetNetworkLimits", - "description": "Get network limits\n\nGet the network limits relating to asset and market creation", - "requestType": "GetNetworkLimitsRequest", - "requestLongType": "GetNetworkLimitsRequest", - "requestFullType": "datanode.api.v2.GetNetworkLimitsRequest", - "requestStreaming": false, - "responseType": "GetNetworkLimitsResponse", - "responseLongType": "GetNetworkLimitsResponse", - "responseFullType": "datanode.api.v2.GetNetworkLimitsResponse", - "responseStreaming": false - }, - { - "name": "ListCandleData", - "description": "List candle data\n\nGet a list of candle data for a given candle ID. Candle IDs can be obtained by calling list-candle-intervals", - "requestType": "ListCandleDataRequest", - "requestLongType": "ListCandleDataRequest", - "requestFullType": "datanode.api.v2.ListCandleDataRequest", - "requestStreaming": false, - "responseType": "ListCandleDataResponse", - "responseLongType": "ListCandleDataResponse", - "responseFullType": "datanode.api.v2.ListCandleDataResponse", - "responseStreaming": false - }, - { - "name": "ObserveCandleData", - "description": "Observe candle data\n\nSubscribe to a stream of candle updates", - "requestType": "ObserveCandleDataRequest", - "requestLongType": "ObserveCandleDataRequest", - "requestFullType": "datanode.api.v2.ObserveCandleDataRequest", - "requestStreaming": false, - "responseType": "ObserveCandleDataResponse", - "responseLongType": "ObserveCandleDataResponse", - "responseFullType": "datanode.api.v2.ObserveCandleDataResponse", - "responseStreaming": true - }, - { - "name": "ListCandleIntervals", - "description": "List candle intervals\n\nGet a list of all available intervals for a given market along with the corresponding candle ID", - "requestType": "ListCandleIntervalsRequest", - "requestLongType": "ListCandleIntervalsRequest", - "requestFullType": "datanode.api.v2.ListCandleIntervalsRequest", - "requestStreaming": false, - "responseType": "ListCandleIntervalsResponse", - "responseLongType": "ListCandleIntervalsResponse", - "responseFullType": "datanode.api.v2.ListCandleIntervalsResponse", - "responseStreaming": false - }, - { - "name": "ListVotes", - "description": "List votes\n\nGet a list of votes. A party ID or a proposal ID must be provided.", - "requestType": "ListVotesRequest", - "requestLongType": "ListVotesRequest", - "requestFullType": "datanode.api.v2.ListVotesRequest", - "requestStreaming": false, - "responseType": "ListVotesResponse", - "responseLongType": "ListVotesResponse", - "responseFullType": "datanode.api.v2.ListVotesResponse", - "responseStreaming": false - }, - { - "name": "ObserveVotes", - "description": "Observe votes\n\nSubscribe to a stream of votes cast on a given proposal, or by all votes made by a given party", - "requestType": "ObserveVotesRequest", - "requestLongType": "ObserveVotesRequest", - "requestFullType": "datanode.api.v2.ObserveVotesRequest", - "requestStreaming": false, - "responseType": "ObserveVotesResponse", - "responseLongType": "ObserveVotesResponse", - "responseFullType": "datanode.api.v2.ObserveVotesResponse", - "responseStreaming": true - }, - { - "name": "ListERC20MultiSigSignerAddedBundles", - "description": "List ERC20 multi-sig signer added bundles\n\nGet a list of the signature bundles to add a particular validator to the signer list of the multisig contract", - "requestType": "ListERC20MultiSigSignerAddedBundlesRequest", - "requestLongType": "ListERC20MultiSigSignerAddedBundlesRequest", - "requestFullType": "datanode.api.v2.ListERC20MultiSigSignerAddedBundlesRequest", - "requestStreaming": false, - "responseType": "ListERC20MultiSigSignerAddedBundlesResponse", - "responseLongType": "ListERC20MultiSigSignerAddedBundlesResponse", - "responseFullType": "datanode.api.v2.ListERC20MultiSigSignerAddedBundlesResponse", - "responseStreaming": false - }, - { - "name": "ListERC20MultiSigSignerRemovedBundles", - "description": "List ERC20 multi-sig signer removed bundles\n\nGet a list of the signature bundles to remove a particular validator from signer list of the multisig contract", - "requestType": "ListERC20MultiSigSignerRemovedBundlesRequest", - "requestLongType": "ListERC20MultiSigSignerRemovedBundlesRequest", - "requestFullType": "datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesRequest", - "requestStreaming": false, - "responseType": "ListERC20MultiSigSignerRemovedBundlesResponse", - "responseLongType": "ListERC20MultiSigSignerRemovedBundlesResponse", - "responseFullType": "datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesResponse", - "responseStreaming": false - }, - { - "name": "GetERC20ListAssetBundle", - "description": "Get ERC20 list asset bundle\n\nGet the signatures bundle to allowlist an ERC20 token in the collateral bridge", - "requestType": "GetERC20ListAssetBundleRequest", - "requestLongType": "GetERC20ListAssetBundleRequest", - "requestFullType": "datanode.api.v2.GetERC20ListAssetBundleRequest", - "requestStreaming": false, - "responseType": "GetERC20ListAssetBundleResponse", - "responseLongType": "GetERC20ListAssetBundleResponse", - "responseFullType": "datanode.api.v2.GetERC20ListAssetBundleResponse", - "responseStreaming": false - }, - { - "name": "GetERC20SetAssetLimitsBundle", - "description": "Get ERC20 set asset limits bundle\n\nGet the signature bundle to update the token limits. These are `maxLifetimeDeposit` and `withdrawThreshold` for a given ERC20 token that is\nalready allowlisted in the collateral bridge.", - "requestType": "GetERC20SetAssetLimitsBundleRequest", - "requestLongType": "GetERC20SetAssetLimitsBundleRequest", - "requestFullType": "datanode.api.v2.GetERC20SetAssetLimitsBundleRequest", - "requestStreaming": false, - "responseType": "GetERC20SetAssetLimitsBundleResponse", - "responseLongType": "GetERC20SetAssetLimitsBundleResponse", - "responseFullType": "datanode.api.v2.GetERC20SetAssetLimitsBundleResponse", - "responseStreaming": false - }, - { - "name": "GetERC20WithdrawalApproval", - "description": "Get ERC20 withdrawal approval\n\nGet the signature bundle to finalise a withdrawal on Ethereum", - "requestType": "GetERC20WithdrawalApprovalRequest", - "requestLongType": "GetERC20WithdrawalApprovalRequest", - "requestFullType": "datanode.api.v2.GetERC20WithdrawalApprovalRequest", - "requestStreaming": false, - "responseType": "GetERC20WithdrawalApprovalResponse", - "responseLongType": "GetERC20WithdrawalApprovalResponse", - "responseFullType": "datanode.api.v2.GetERC20WithdrawalApprovalResponse", - "responseStreaming": false - }, - { - "name": "GetLastTrade", - "description": "Get last trade\n\nGet the last trade made for a given market.", - "requestType": "GetLastTradeRequest", - "requestLongType": "GetLastTradeRequest", - "requestFullType": "datanode.api.v2.GetLastTradeRequest", - "requestStreaming": false, - "responseType": "GetLastTradeResponse", - "responseLongType": "GetLastTradeResponse", - "responseFullType": "datanode.api.v2.GetLastTradeResponse", - "responseStreaming": false - }, - { - "name": "ListTrades", - "description": "List trades\n\nGet a list of all trades, optionally filtered by party/market/order", - "requestType": "ListTradesRequest", - "requestLongType": "ListTradesRequest", - "requestFullType": "datanode.api.v2.ListTradesRequest", - "requestStreaming": false, - "responseType": "ListTradesResponse", - "responseLongType": "ListTradesResponse", - "responseFullType": "datanode.api.v2.ListTradesResponse", - "responseStreaming": false - }, - { - "name": "ObserveTrades", - "description": "Observe trades\n\nSubscribe to a stream of trades, optionally filtered by party/market", - "requestType": "ObserveTradesRequest", - "requestLongType": "ObserveTradesRequest", - "requestFullType": "datanode.api.v2.ObserveTradesRequest", - "requestStreaming": false, - "responseType": "ObserveTradesResponse", - "responseLongType": "ObserveTradesResponse", - "responseFullType": "datanode.api.v2.ObserveTradesResponse", - "responseStreaming": true - }, - { - "name": "GetOracleSpec", - "description": "Get oracle spec\n\nGet an oracle spec by ID. Oracle spec IDs can be found by querying markets that use them as a data source", - "requestType": "GetOracleSpecRequest", - "requestLongType": "GetOracleSpecRequest", - "requestFullType": "datanode.api.v2.GetOracleSpecRequest", - "requestStreaming": false, - "responseType": "GetOracleSpecResponse", - "responseLongType": "GetOracleSpecResponse", - "responseFullType": "datanode.api.v2.GetOracleSpecResponse", - "responseStreaming": false - }, - { - "name": "ListOracleSpecs", - "description": "List oracle specs\n\nGet a list of all oracles specs that are defined against all markets", - "requestType": "ListOracleSpecsRequest", - "requestLongType": "ListOracleSpecsRequest", - "requestFullType": "datanode.api.v2.ListOracleSpecsRequest", - "requestStreaming": false, - "responseType": "ListOracleSpecsResponse", - "responseLongType": "ListOracleSpecsResponse", - "responseFullType": "datanode.api.v2.ListOracleSpecsResponse", - "responseStreaming": false - }, - { - "name": "ListOracleData", - "description": "List oracle data\n\nGet a list of all oracle data that have been broadcast to any market", - "requestType": "ListOracleDataRequest", - "requestLongType": "ListOracleDataRequest", - "requestFullType": "datanode.api.v2.ListOracleDataRequest", - "requestStreaming": false, - "responseType": "ListOracleDataResponse", - "responseLongType": "ListOracleDataResponse", - "responseFullType": "datanode.api.v2.ListOracleDataResponse", - "responseStreaming": false - }, - { - "name": "GetMarket", - "description": "Get market\n\nGet information about a specific market using its ID. A market's ID will be the same as the ID of the proposal that\ngenerated it", - "requestType": "GetMarketRequest", - "requestLongType": "GetMarketRequest", - "requestFullType": "datanode.api.v2.GetMarketRequest", - "requestStreaming": false, - "responseType": "GetMarketResponse", - "responseLongType": "GetMarketResponse", - "responseFullType": "datanode.api.v2.GetMarketResponse", - "responseStreaming": false - }, - { - "name": "ListMarkets", - "description": "List markets\n\nGet a list of markets", - "requestType": "ListMarketsRequest", - "requestLongType": "ListMarketsRequest", - "requestFullType": "datanode.api.v2.ListMarketsRequest", - "requestStreaming": false, - "responseType": "ListMarketsResponse", - "responseLongType": "ListMarketsResponse", - "responseFullType": "datanode.api.v2.ListMarketsResponse", - "responseStreaming": false - }, - { - "name": "ListSuccessorMarkets", - "description": "List successor markets\n\nGiven a market ID, return the full lineage of markets since inception, or all successor markets since and including\nthe given market ID. The markets will be returned in succession order, i.e. the market at position i will be the parent\nof the market at position i+1.", - "requestType": "ListSuccessorMarketsRequest", - "requestLongType": "ListSuccessorMarketsRequest", - "requestFullType": "datanode.api.v2.ListSuccessorMarketsRequest", - "requestStreaming": false, - "responseType": "ListSuccessorMarketsResponse", - "responseLongType": "ListSuccessorMarketsResponse", - "responseFullType": "datanode.api.v2.ListSuccessorMarketsResponse", - "responseStreaming": false - }, - { - "name": "GetParty", - "description": "Get party\n\nGet a single party", - "requestType": "GetPartyRequest", - "requestLongType": "GetPartyRequest", - "requestFullType": "datanode.api.v2.GetPartyRequest", - "requestStreaming": false, - "responseType": "GetPartyResponse", - "responseLongType": "GetPartyResponse", - "responseFullType": "datanode.api.v2.GetPartyResponse", - "responseStreaming": false - }, - { - "name": "ListParties", - "description": "List parties\n\nGet a list of parties", - "requestType": "ListPartiesRequest", - "requestLongType": "ListPartiesRequest", - "requestFullType": "datanode.api.v2.ListPartiesRequest", - "requestStreaming": false, - "responseType": "ListPartiesResponse", - "responseLongType": "ListPartiesResponse", - "responseFullType": "datanode.api.v2.ListPartiesResponse", - "responseStreaming": false - }, - { - "name": "ListPartiesProfiles", - "description": "List parties' profiles\n\nGet a list of profiles for multiple parties", - "requestType": "ListPartiesProfilesRequest", - "requestLongType": "ListPartiesProfilesRequest", - "requestFullType": "datanode.api.v2.ListPartiesProfilesRequest", - "requestStreaming": false, - "responseType": "ListPartiesProfilesResponse", - "responseLongType": "ListPartiesProfilesResponse", - "responseFullType": "datanode.api.v2.ListPartiesProfilesResponse", - "responseStreaming": false - }, - { - "name": "ListMarginLevels", - "description": "List margin levels\n\nGet a list margin levels that match the provided criteria. If no filter is provided, all margin levels will be returned.", - "requestType": "ListMarginLevelsRequest", - "requestLongType": "ListMarginLevelsRequest", - "requestFullType": "datanode.api.v2.ListMarginLevelsRequest", - "requestStreaming": false, - "responseType": "ListMarginLevelsResponse", - "responseLongType": "ListMarginLevelsResponse", - "responseFullType": "datanode.api.v2.ListMarginLevelsResponse", - "responseStreaming": false - }, - { - "name": "ObserveMarginLevels", - "description": "Observe margin levels\n\nSubscribe to a stream of margin levels updates", - "requestType": "ObserveMarginLevelsRequest", - "requestLongType": "ObserveMarginLevelsRequest", - "requestFullType": "datanode.api.v2.ObserveMarginLevelsRequest", - "requestStreaming": false, - "responseType": "ObserveMarginLevelsResponse", - "responseLongType": "ObserveMarginLevelsResponse", - "responseFullType": "datanode.api.v2.ObserveMarginLevelsResponse", - "responseStreaming": true - }, - { - "name": "ListRewards", - "description": "List rewards\n\nGet a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned.", - "requestType": "ListRewardsRequest", - "requestLongType": "ListRewardsRequest", - "requestFullType": "datanode.api.v2.ListRewardsRequest", - "requestStreaming": false, - "responseType": "ListRewardsResponse", - "responseLongType": "ListRewardsResponse", - "responseFullType": "datanode.api.v2.ListRewardsResponse", - "responseStreaming": false - }, - { - "name": "ListRewardSummaries", - "description": "List reward summaries\n\nGet a list of reward summaries where the reward amount is the total rewards received over all epochs\nper party ID and asset ID.\nRequest parameters are optional party ID and asset ID.\nIf no data is provided, all reward summaries will be returned grouped by party and asset ID.", - "requestType": "ListRewardSummariesRequest", - "requestLongType": "ListRewardSummariesRequest", - "requestFullType": "datanode.api.v2.ListRewardSummariesRequest", - "requestStreaming": false, - "responseType": "ListRewardSummariesResponse", - "responseLongType": "ListRewardSummariesResponse", - "responseFullType": "datanode.api.v2.ListRewardSummariesResponse", - "responseStreaming": false - }, - { - "name": "ListEpochRewardSummaries", - "description": "List epoch reward summaries\n\nGet a list of reward summaries by epoch for a given range of epochs.\nThe result is filtered by list of asset IDs, market IDs and starting and ending epochs, for which to return rewards.\nIf no data is provided, all reward summaries will be returned, grouped by epochs, market IDs, asset IDs and reward type.", - "requestType": "ListEpochRewardSummariesRequest", - "requestLongType": "ListEpochRewardSummariesRequest", - "requestFullType": "datanode.api.v2.ListEpochRewardSummariesRequest", - "requestStreaming": false, - "responseType": "ListEpochRewardSummariesResponse", - "responseLongType": "ListEpochRewardSummariesResponse", - "responseFullType": "datanode.api.v2.ListEpochRewardSummariesResponse", - "responseStreaming": false - }, - { - "name": "GetDeposit", - "description": "Get deposit\n\nGet a deposit by its ID", - "requestType": "GetDepositRequest", - "requestLongType": "GetDepositRequest", - "requestFullType": "datanode.api.v2.GetDepositRequest", - "requestStreaming": false, - "responseType": "GetDepositResponse", - "responseLongType": "GetDepositResponse", - "responseFullType": "datanode.api.v2.GetDepositResponse", - "responseStreaming": false - }, - { - "name": "ListDeposits", - "description": "List deposits\n\nGet a list of deposits for a given party.\nIf a date range is provided, filtering will be based on the last time the deposit\nhas been updated in Vega time.", - "requestType": "ListDepositsRequest", - "requestLongType": "ListDepositsRequest", - "requestFullType": "datanode.api.v2.ListDepositsRequest", - "requestStreaming": false, - "responseType": "ListDepositsResponse", - "responseLongType": "ListDepositsResponse", - "responseFullType": "datanode.api.v2.ListDepositsResponse", - "responseStreaming": false - }, - { - "name": "GetWithdrawal", - "description": "Get withdrawal\n\nGet a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 hash of the signature that the withdrawal was submitted with", - "requestType": "GetWithdrawalRequest", - "requestLongType": "GetWithdrawalRequest", - "requestFullType": "datanode.api.v2.GetWithdrawalRequest", - "requestStreaming": false, - "responseType": "GetWithdrawalResponse", - "responseLongType": "GetWithdrawalResponse", - "responseFullType": "datanode.api.v2.GetWithdrawalResponse", - "responseStreaming": false - }, - { - "name": "ListWithdrawals", - "description": "List withdrawals\n\nGet a list of withdrawals for a given party", - "requestType": "ListWithdrawalsRequest", - "requestLongType": "ListWithdrawalsRequest", - "requestFullType": "datanode.api.v2.ListWithdrawalsRequest", - "requestStreaming": false, - "responseType": "ListWithdrawalsResponse", - "responseLongType": "ListWithdrawalsResponse", - "responseFullType": "datanode.api.v2.ListWithdrawalsResponse", - "responseStreaming": false - }, - { - "name": "GetAsset", - "description": "Get asset\n\nGet a single asset using its ID. Use the assets list query to get an asset's ID", - "requestType": "GetAssetRequest", - "requestLongType": "GetAssetRequest", - "requestFullType": "datanode.api.v2.GetAssetRequest", - "requestStreaming": false, - "responseType": "GetAssetResponse", - "responseLongType": "GetAssetResponse", - "responseFullType": "datanode.api.v2.GetAssetResponse", - "responseStreaming": false - }, - { - "name": "ListAssets", - "description": "List assets\n\nGet a list of assets available on the Vega network", - "requestType": "ListAssetsRequest", - "requestLongType": "ListAssetsRequest", - "requestFullType": "datanode.api.v2.ListAssetsRequest", - "requestStreaming": false, - "responseType": "ListAssetsResponse", - "responseLongType": "ListAssetsResponse", - "responseFullType": "datanode.api.v2.ListAssetsResponse", - "responseStreaming": false - }, - { - "name": "ListLiquidityProvisions", - "description": "List liquidity provisions\n\nDEPRECATED: When a liquidity provider amends a provision, and it's accepted by the network, the pending\nprovision is returned by the API instead of the provision that is currently active.\nUse ListAllLiquidityProvisions instead.", - "requestType": "ListLiquidityProvisionsRequest", - "requestLongType": "ListLiquidityProvisionsRequest", - "requestFullType": "datanode.api.v2.ListLiquidityProvisionsRequest", - "requestStreaming": false, - "responseType": "ListLiquidityProvisionsResponse", - "responseLongType": "ListLiquidityProvisionsResponse", - "responseFullType": "datanode.api.v2.ListLiquidityProvisionsResponse", - "responseStreaming": false, - "options": { - "deprecated": true - } - }, - { - "name": "ListAllLiquidityProvisions", - "description": "List liquidity provisions\n\nGet a list of liquidity provisions for a given market. This API returns a current and pending liquidity provision\nin the event that a provision has been updated by the provider but the updated provision will not be active until the next epoch.", - "requestType": "ListAllLiquidityProvisionsRequest", - "requestLongType": "ListAllLiquidityProvisionsRequest", - "requestFullType": "datanode.api.v2.ListAllLiquidityProvisionsRequest", - "requestStreaming": false, - "responseType": "ListAllLiquidityProvisionsResponse", - "responseLongType": "ListAllLiquidityProvisionsResponse", - "responseFullType": "datanode.api.v2.ListAllLiquidityProvisionsResponse", - "responseStreaming": false - }, - { - "name": "ObserveLiquidityProvisions", - "description": "Observe liquidity provisions\n\nSubscribe to a stream of liquidity provision events for a given market and party", - "requestType": "ObserveLiquidityProvisionsRequest", - "requestLongType": "ObserveLiquidityProvisionsRequest", - "requestFullType": "datanode.api.v2.ObserveLiquidityProvisionsRequest", - "requestStreaming": false, - "responseType": "ObserveLiquidityProvisionsResponse", - "responseLongType": "ObserveLiquidityProvisionsResponse", - "responseFullType": "datanode.api.v2.ObserveLiquidityProvisionsResponse", - "responseStreaming": true - }, - { - "name": "ListLiquidityProviders", - "description": "List liquidity providers data\n\nList information about active liquidity provider(s) for a given market, or liquidity provider's party ID.", - "requestType": "ListLiquidityProvidersRequest", - "requestLongType": "ListLiquidityProvidersRequest", - "requestFullType": "datanode.api.v2.ListLiquidityProvidersRequest", - "requestStreaming": false, - "responseType": "ListLiquidityProvidersResponse", - "responseLongType": "ListLiquidityProvidersResponse", - "responseFullType": "datanode.api.v2.ListLiquidityProvidersResponse", - "responseStreaming": false - }, - { - "name": "ListPaidLiquidityFees", - "description": "List paid liquidity fees data\n\nList information about paid liquidity fees for a given market, or asset ID.", - "requestType": "ListPaidLiquidityFeesRequest", - "requestLongType": "ListPaidLiquidityFeesRequest", - "requestFullType": "datanode.api.v2.ListPaidLiquidityFeesRequest", - "requestStreaming": false, - "responseType": "ListPaidLiquidityFeesResponse", - "responseLongType": "ListPaidLiquidityFeesResponse", - "responseFullType": "datanode.api.v2.ListPaidLiquidityFeesResponse", - "responseStreaming": false - }, - { - "name": "GetGovernanceData", - "description": "Get governance data\n\nGet a single proposal's details either by proposal ID or by reference", - "requestType": "GetGovernanceDataRequest", - "requestLongType": "GetGovernanceDataRequest", - "requestFullType": "datanode.api.v2.GetGovernanceDataRequest", - "requestStreaming": false, - "responseType": "GetGovernanceDataResponse", - "responseLongType": "GetGovernanceDataResponse", - "responseFullType": "datanode.api.v2.GetGovernanceDataResponse", - "responseStreaming": false - }, - { - "name": "ListGovernanceData", - "description": "List governance data\n\nGet a list of proposals", - "requestType": "ListGovernanceDataRequest", - "requestLongType": "ListGovernanceDataRequest", - "requestFullType": "datanode.api.v2.ListGovernanceDataRequest", - "requestStreaming": false, - "responseType": "ListGovernanceDataResponse", - "responseLongType": "ListGovernanceDataResponse", - "responseFullType": "datanode.api.v2.ListGovernanceDataResponse", - "responseStreaming": false - }, - { - "name": "ObserveGovernance", - "description": "Observe governance\n\nSubscribe to a stream of updates to governance proposals", - "requestType": "ObserveGovernanceRequest", - "requestLongType": "ObserveGovernanceRequest", - "requestFullType": "datanode.api.v2.ObserveGovernanceRequest", - "requestStreaming": false, - "responseType": "ObserveGovernanceResponse", - "responseLongType": "ObserveGovernanceResponse", - "responseFullType": "datanode.api.v2.ObserveGovernanceResponse", - "responseStreaming": true - }, - { - "name": "ListDelegations", - "description": "List delegations\n\nGet a list of the token delegations on the network", - "requestType": "ListDelegationsRequest", - "requestLongType": "ListDelegationsRequest", - "requestFullType": "datanode.api.v2.ListDelegationsRequest", - "requestStreaming": false, - "responseType": "ListDelegationsResponse", - "responseLongType": "ListDelegationsResponse", - "responseFullType": "datanode.api.v2.ListDelegationsResponse", - "responseStreaming": false - }, - { - "name": "GetNetworkData", - "description": "Get network data\n\nGet data regarding the nodes of the network", - "requestType": "GetNetworkDataRequest", - "requestLongType": "GetNetworkDataRequest", - "requestFullType": "datanode.api.v2.GetNetworkDataRequest", - "requestStreaming": false, - "responseType": "GetNetworkDataResponse", - "responseLongType": "GetNetworkDataResponse", - "responseFullType": "datanode.api.v2.GetNetworkDataResponse", - "responseStreaming": false - }, - { - "name": "GetNode", - "description": "Get node\n\nGet information about a given node", - "requestType": "GetNodeRequest", - "requestLongType": "GetNodeRequest", - "requestFullType": "datanode.api.v2.GetNodeRequest", - "requestStreaming": false, - "responseType": "GetNodeResponse", - "responseLongType": "GetNodeResponse", - "responseFullType": "datanode.api.v2.GetNodeResponse", - "responseStreaming": false - }, - { - "name": "ListNodes", - "description": "List nodes\n\nGet a list of the nodes on the network along with the related information.", - "requestType": "ListNodesRequest", - "requestLongType": "ListNodesRequest", - "requestFullType": "datanode.api.v2.ListNodesRequest", - "requestStreaming": false, - "responseType": "ListNodesResponse", - "responseLongType": "ListNodesResponse", - "responseFullType": "datanode.api.v2.ListNodesResponse", - "responseStreaming": false - }, - { - "name": "ListNodeSignatures", - "description": "List node signatures\n\nGet a list of aggregate signatures from all the nodes of the network", - "requestType": "ListNodeSignaturesRequest", - "requestLongType": "ListNodeSignaturesRequest", - "requestFullType": "datanode.api.v2.ListNodeSignaturesRequest", - "requestStreaming": false, - "responseType": "ListNodeSignaturesResponse", - "responseLongType": "ListNodeSignaturesResponse", - "responseFullType": "datanode.api.v2.ListNodeSignaturesResponse", - "responseStreaming": false - }, - { - "name": "GetEpoch", - "description": "Get epoch\n\nGet data for a specific epoch, if ID is omitted, it retrieves the current epoch", - "requestType": "GetEpochRequest", - "requestLongType": "GetEpochRequest", - "requestFullType": "datanode.api.v2.GetEpochRequest", - "requestStreaming": false, - "responseType": "GetEpochResponse", - "responseLongType": "GetEpochResponse", - "responseFullType": "datanode.api.v2.GetEpochResponse", - "responseStreaming": false - }, - { - "name": "EstimateFee", - "description": "Estimate fee\n\nEstimate the fee that would be incurred for submitting an order\nwith the specified price and size on the market.", - "requestType": "EstimateFeeRequest", - "requestLongType": "EstimateFeeRequest", - "requestFullType": "datanode.api.v2.EstimateFeeRequest", - "requestStreaming": false, - "responseType": "EstimateFeeResponse", - "responseLongType": "EstimateFeeResponse", - "responseFullType": "datanode.api.v2.EstimateFeeResponse", - "responseStreaming": false - }, - { - "name": "EstimateMargin", - "description": "Estimate margin\n\nEstimate the margin that would be required for submitting this order", - "requestType": "EstimateMarginRequest", - "requestLongType": "EstimateMarginRequest", - "requestFullType": "datanode.api.v2.EstimateMarginRequest", - "requestStreaming": false, - "responseType": "EstimateMarginResponse", - "responseLongType": "EstimateMarginResponse", - "responseFullType": "datanode.api.v2.EstimateMarginResponse", - "responseStreaming": false - }, - { - "name": "EstimatePosition", - "description": "Estimate position\n\nEstimate the margin that would be required for maintaining the specified position, collateral increase needed to open the specified position and the liquidation price estimate.\nMargin estimates are scaled to asset decimal places.\nLiquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request.", - "requestType": "EstimatePositionRequest", - "requestLongType": "EstimatePositionRequest", - "requestFullType": "datanode.api.v2.EstimatePositionRequest", - "requestStreaming": false, - "responseType": "EstimatePositionResponse", - "responseLongType": "EstimatePositionResponse", - "responseFullType": "datanode.api.v2.EstimatePositionResponse", - "responseStreaming": false - }, - { - "name": "ListNetworkParameters", - "description": "List network parameters\n\nGet a list of the network parameter keys and their values", - "requestType": "ListNetworkParametersRequest", - "requestLongType": "ListNetworkParametersRequest", - "requestFullType": "datanode.api.v2.ListNetworkParametersRequest", - "requestStreaming": false, - "responseType": "ListNetworkParametersResponse", - "responseLongType": "ListNetworkParametersResponse", - "responseFullType": "datanode.api.v2.ListNetworkParametersResponse", - "responseStreaming": false - }, - { - "name": "GetNetworkParameter", - "description": "Get network parameter\n\nGet a network parameter's value by its key", - "requestType": "GetNetworkParameterRequest", - "requestLongType": "GetNetworkParameterRequest", - "requestFullType": "datanode.api.v2.GetNetworkParameterRequest", - "requestStreaming": false, - "responseType": "GetNetworkParameterResponse", - "responseLongType": "GetNetworkParameterResponse", - "responseFullType": "datanode.api.v2.GetNetworkParameterResponse", - "responseStreaming": false - }, - { - "name": "ListCheckpoints", - "description": "List checkpoints\n\nGet a list of information about checkpoints generated by the network", - "requestType": "ListCheckpointsRequest", - "requestLongType": "ListCheckpointsRequest", - "requestFullType": "datanode.api.v2.ListCheckpointsRequest", - "requestStreaming": false, - "responseType": "ListCheckpointsResponse", - "responseLongType": "ListCheckpointsResponse", - "responseFullType": "datanode.api.v2.ListCheckpointsResponse", - "responseStreaming": false - }, - { - "name": "GetStake", - "description": "Get stake\n\nGet staking information for a given party", - "requestType": "GetStakeRequest", - "requestLongType": "GetStakeRequest", - "requestFullType": "datanode.api.v2.GetStakeRequest", - "requestStreaming": false, - "responseType": "GetStakeResponse", - "responseLongType": "GetStakeResponse", - "responseFullType": "datanode.api.v2.GetStakeResponse", - "responseStreaming": false - }, - { - "name": "GetRiskFactors", - "description": "Get risk factors\n\nGet risk factor data for a given market", - "requestType": "GetRiskFactorsRequest", - "requestLongType": "GetRiskFactorsRequest", - "requestFullType": "datanode.api.v2.GetRiskFactorsRequest", - "requestStreaming": false, - "responseType": "GetRiskFactorsResponse", - "responseLongType": "GetRiskFactorsResponse", - "responseFullType": "datanode.api.v2.GetRiskFactorsResponse", - "responseStreaming": false - }, - { - "name": "ObserveEventBus", - "description": "Observe event bus\n\nSubscribe to a stream of events from the core", - "requestType": "ObserveEventBusRequest", - "requestLongType": "ObserveEventBusRequest", - "requestFullType": "datanode.api.v2.ObserveEventBusRequest", - "requestStreaming": true, - "responseType": "ObserveEventBusResponse", - "responseLongType": "ObserveEventBusResponse", - "responseFullType": "datanode.api.v2.ObserveEventBusResponse", - "responseStreaming": true - }, - { - "name": "ObserveLedgerMovements", - "description": "Observe ledger movements\n\nSubscribe to a stream of transfer responses", - "requestType": "ObserveLedgerMovementsRequest", - "requestLongType": "ObserveLedgerMovementsRequest", - "requestFullType": "datanode.api.v2.ObserveLedgerMovementsRequest", - "requestStreaming": false, - "responseType": "ObserveLedgerMovementsResponse", - "responseLongType": "ObserveLedgerMovementsResponse", - "responseFullType": "datanode.api.v2.ObserveLedgerMovementsResponse", - "responseStreaming": true - }, - { - "name": "ListKeyRotations", - "description": "List key rotations\n\nGet a list of information about Vega key rotations that have been performed by validator nodes", - "requestType": "ListKeyRotationsRequest", - "requestLongType": "ListKeyRotationsRequest", - "requestFullType": "datanode.api.v2.ListKeyRotationsRequest", - "requestStreaming": false, - "responseType": "ListKeyRotationsResponse", - "responseLongType": "ListKeyRotationsResponse", - "responseFullType": "datanode.api.v2.ListKeyRotationsResponse", - "responseStreaming": false - }, - { - "name": "ListEthereumKeyRotations", - "description": "List Ethereum key rotations\n\nGet a list of information about Ethereum key rotations that have been performed by validator nodes", - "requestType": "ListEthereumKeyRotationsRequest", - "requestLongType": "ListEthereumKeyRotationsRequest", - "requestFullType": "datanode.api.v2.ListEthereumKeyRotationsRequest", - "requestStreaming": false, - "responseType": "ListEthereumKeyRotationsResponse", - "responseLongType": "ListEthereumKeyRotationsResponse", - "responseFullType": "datanode.api.v2.ListEthereumKeyRotationsResponse", - "responseStreaming": false - }, - { - "name": "GetVegaTime", - "description": "Get Vega time\n\nGet the current time of the network in Unix nanoseconds", - "requestType": "GetVegaTimeRequest", - "requestLongType": "GetVegaTimeRequest", - "requestFullType": "datanode.api.v2.GetVegaTimeRequest", - "requestStreaming": false, - "responseType": "GetVegaTimeResponse", - "responseLongType": "GetVegaTimeResponse", - "responseFullType": "datanode.api.v2.GetVegaTimeResponse", - "responseStreaming": false - }, - { - "name": "GetProtocolUpgradeStatus", - "description": "Get protocol upgrade status\n\nGet status of a protocol upgrade", - "requestType": "GetProtocolUpgradeStatusRequest", - "requestLongType": "GetProtocolUpgradeStatusRequest", - "requestFullType": "datanode.api.v2.GetProtocolUpgradeStatusRequest", - "requestStreaming": false, - "responseType": "GetProtocolUpgradeStatusResponse", - "responseLongType": "GetProtocolUpgradeStatusResponse", - "responseFullType": "datanode.api.v2.GetProtocolUpgradeStatusResponse", - "responseStreaming": false - }, - { - "name": "ListProtocolUpgradeProposals", - "description": "List protocol upgrade proposals\n\nGet a list of protocol upgrade proposals, optionally filtering on status or approver.", - "requestType": "ListProtocolUpgradeProposalsRequest", - "requestLongType": "ListProtocolUpgradeProposalsRequest", - "requestFullType": "datanode.api.v2.ListProtocolUpgradeProposalsRequest", - "requestStreaming": false, - "responseType": "ListProtocolUpgradeProposalsResponse", - "responseLongType": "ListProtocolUpgradeProposalsResponse", - "responseFullType": "datanode.api.v2.ListProtocolUpgradeProposalsResponse", - "responseStreaming": false - }, - { - "name": "ListCoreSnapshots", - "description": "List snapshots\n\nGet a list of core snapshots taken", - "requestType": "ListCoreSnapshotsRequest", - "requestLongType": "ListCoreSnapshotsRequest", - "requestFullType": "datanode.api.v2.ListCoreSnapshotsRequest", - "requestStreaming": false, - "responseType": "ListCoreSnapshotsResponse", - "responseLongType": "ListCoreSnapshotsResponse", - "responseFullType": "datanode.api.v2.ListCoreSnapshotsResponse", - "responseStreaming": false - }, - { - "name": "GetMostRecentNetworkHistorySegment", - "description": "Get most recent network history segment\n\nGet the network's most recently history segment", - "requestType": "GetMostRecentNetworkHistorySegmentRequest", - "requestLongType": "GetMostRecentNetworkHistorySegmentRequest", - "requestFullType": "datanode.api.v2.GetMostRecentNetworkHistorySegmentRequest", - "requestStreaming": false, - "responseType": "GetMostRecentNetworkHistorySegmentResponse", - "responseLongType": "GetMostRecentNetworkHistorySegmentResponse", - "responseFullType": "datanode.api.v2.GetMostRecentNetworkHistorySegmentResponse", - "responseStreaming": false - }, - { - "name": "ListAllNetworkHistorySegments", - "description": "List all network history segments\n\nGet a list of all history segments stored by the data node currently connected to", - "requestType": "ListAllNetworkHistorySegmentsRequest", - "requestLongType": "ListAllNetworkHistorySegmentsRequest", - "requestFullType": "datanode.api.v2.ListAllNetworkHistorySegmentsRequest", - "requestStreaming": false, - "responseType": "ListAllNetworkHistorySegmentsResponse", - "responseLongType": "ListAllNetworkHistorySegmentsResponse", - "responseFullType": "datanode.api.v2.ListAllNetworkHistorySegmentsResponse", - "responseStreaming": false - }, - { - "name": "GetActiveNetworkHistoryPeerAddresses", - "description": "Get active network history peer addresses\n\nGet a list of the addresses of all active network history peers", - "requestType": "GetActiveNetworkHistoryPeerAddressesRequest", - "requestLongType": "GetActiveNetworkHistoryPeerAddressesRequest", - "requestFullType": "datanode.api.v2.GetActiveNetworkHistoryPeerAddressesRequest", - "requestStreaming": false, - "responseType": "GetActiveNetworkHistoryPeerAddressesResponse", - "responseLongType": "GetActiveNetworkHistoryPeerAddressesResponse", - "responseFullType": "datanode.api.v2.GetActiveNetworkHistoryPeerAddressesResponse", - "responseStreaming": false - }, - { - "name": "GetNetworkHistoryStatus", - "description": "Network history status\n\nGet information about the current state of network history's IPFS swarm", - "requestType": "GetNetworkHistoryStatusRequest", - "requestLongType": "GetNetworkHistoryStatusRequest", - "requestFullType": "datanode.api.v2.GetNetworkHistoryStatusRequest", - "requestStreaming": false, - "responseType": "GetNetworkHistoryStatusResponse", - "responseLongType": "GetNetworkHistoryStatusResponse", - "responseFullType": "datanode.api.v2.GetNetworkHistoryStatusResponse", - "responseStreaming": false - }, - { - "name": "GetNetworkHistoryBootstrapPeers", - "description": "Network history bootstrap peers\n\nGet a list of IPFS peers that can be used to initialise a new data node with network history", - "requestType": "GetNetworkHistoryBootstrapPeersRequest", - "requestLongType": "GetNetworkHistoryBootstrapPeersRequest", - "requestFullType": "datanode.api.v2.GetNetworkHistoryBootstrapPeersRequest", - "requestStreaming": false, - "responseType": "GetNetworkHistoryBootstrapPeersResponse", - "responseLongType": "GetNetworkHistoryBootstrapPeersResponse", - "responseFullType": "datanode.api.v2.GetNetworkHistoryBootstrapPeersResponse", - "responseStreaming": false - }, - { - "name": "ListEntities", - "description": "List entities\n\nGet a list of all entities created by transaction hash", - "requestType": "ListEntitiesRequest", - "requestLongType": "ListEntitiesRequest", - "requestFullType": "datanode.api.v2.ListEntitiesRequest", - "requestStreaming": false, - "responseType": "ListEntitiesResponse", - "responseLongType": "ListEntitiesResponse", - "responseFullType": "datanode.api.v2.ListEntitiesResponse", - "responseStreaming": false - }, - { - "name": "ListFundingPeriods", - "description": "List funding periods\n\nGet a list of funding periods for a perpetual market.", - "requestType": "ListFundingPeriodsRequest", - "requestLongType": "ListFundingPeriodsRequest", - "requestFullType": "datanode.api.v2.ListFundingPeriodsRequest", - "requestStreaming": false, - "responseType": "ListFundingPeriodsResponse", - "responseLongType": "ListFundingPeriodsResponse", - "responseFullType": "datanode.api.v2.ListFundingPeriodsResponse", - "responseStreaming": false - }, - { - "name": "ListFundingPeriodDataPoints", - "description": "List funding period data points\n\nGet a list of data points for a perpetual market's funding periods.", - "requestType": "ListFundingPeriodDataPointsRequest", - "requestLongType": "ListFundingPeriodDataPointsRequest", - "requestFullType": "datanode.api.v2.ListFundingPeriodDataPointsRequest", - "requestStreaming": false, - "responseType": "ListFundingPeriodDataPointsResponse", - "responseLongType": "ListFundingPeriodDataPointsResponse", - "responseFullType": "datanode.api.v2.ListFundingPeriodDataPointsResponse", - "responseStreaming": false - }, - { - "name": "ListFundingPayments", - "description": "List funding payments\n\nGet a list of funding payment gains and losses for a party as a result of their position on a perpetual market when a funding\nperiod ends.", - "requestType": "ListFundingPaymentsRequest", - "requestLongType": "ListFundingPaymentsRequest", - "requestFullType": "datanode.api.v2.ListFundingPaymentsRequest", - "requestStreaming": false, - "responseType": "ListFundingPaymentsResponse", - "responseLongType": "ListFundingPaymentsResponse", - "responseFullType": "datanode.api.v2.ListFundingPaymentsResponse", - "responseStreaming": false - }, - { - "name": "GetPartyActivityStreak", - "description": "List party activity streak\n\nGet a party's activity across epochs.", - "requestType": "GetPartyActivityStreakRequest", - "requestLongType": "GetPartyActivityStreakRequest", - "requestFullType": "datanode.api.v2.GetPartyActivityStreakRequest", - "requestStreaming": false, - "responseType": "GetPartyActivityStreakResponse", - "responseLongType": "GetPartyActivityStreakResponse", - "responseFullType": "datanode.api.v2.GetPartyActivityStreakResponse", - "responseStreaming": false - }, - { - "name": "GetCurrentReferralProgram", - "description": "Get current referral program\n\nGet the current referral program for the network. This program may not be active if it has ended\nand has not been replaced by another.", - "requestType": "GetCurrentReferralProgramRequest", - "requestLongType": "GetCurrentReferralProgramRequest", - "requestFullType": "datanode.api.v2.GetCurrentReferralProgramRequest", - "requestStreaming": false, - "responseType": "GetCurrentReferralProgramResponse", - "responseLongType": "GetCurrentReferralProgramResponse", - "responseFullType": "datanode.api.v2.GetCurrentReferralProgramResponse", - "responseStreaming": false - }, - { - "name": "ListReferralSets", - "description": "List referral sets\n\nList all referral sets, or a specific referral set if you know its ID.", - "requestType": "ListReferralSetsRequest", - "requestLongType": "ListReferralSetsRequest", - "requestFullType": "datanode.api.v2.ListReferralSetsRequest", - "requestStreaming": false, - "responseType": "ListReferralSetsResponse", - "responseLongType": "ListReferralSetsResponse", - "responseFullType": "datanode.api.v2.ListReferralSetsResponse", - "responseStreaming": false - }, - { - "name": "ListReferralSetReferees", - "description": "List referral set referees\n\nList all referees that belong to a referral set.", - "requestType": "ListReferralSetRefereesRequest", - "requestLongType": "ListReferralSetRefereesRequest", - "requestFullType": "datanode.api.v2.ListReferralSetRefereesRequest", - "requestStreaming": false, - "responseType": "ListReferralSetRefereesResponse", - "responseLongType": "ListReferralSetRefereesResponse", - "responseFullType": "datanode.api.v2.ListReferralSetRefereesResponse", - "responseStreaming": false - }, - { - "name": "GetReferralSetStats", - "description": "Get referral set statistics\n\nGet the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set\nat the latest or a specific epoch. You can also optionally filter for a specific referee's statistics.", - "requestType": "GetReferralSetStatsRequest", - "requestLongType": "GetReferralSetStatsRequest", - "requestFullType": "datanode.api.v2.GetReferralSetStatsRequest", - "requestStreaming": false, - "responseType": "GetReferralSetStatsResponse", - "responseLongType": "GetReferralSetStatsResponse", - "responseFullType": "datanode.api.v2.GetReferralSetStatsResponse", - "responseStreaming": false - }, - { - "name": "ListTeams", - "description": "List teams\n\nGet a list of all teams, or for a specific team by using team ID, or party ID of a referrer or referee", - "requestType": "ListTeamsRequest", - "requestLongType": "ListTeamsRequest", - "requestFullType": "datanode.api.v2.ListTeamsRequest", - "requestStreaming": false, - "responseType": "ListTeamsResponse", - "responseLongType": "ListTeamsResponse", - "responseFullType": "datanode.api.v2.ListTeamsResponse", - "responseStreaming": false - }, - { - "name": "ListTeamsStatistics", - "description": "List teams statistics\n\nGet the statistics of all teams, or for a specific team by using team ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.", - "requestType": "ListTeamsStatisticsRequest", - "requestLongType": "ListTeamsStatisticsRequest", - "requestFullType": "datanode.api.v2.ListTeamsStatisticsRequest", - "requestStreaming": false, - "responseType": "ListTeamsStatisticsResponse", - "responseLongType": "ListTeamsStatisticsResponse", - "responseFullType": "datanode.api.v2.ListTeamsStatisticsResponse", - "responseStreaming": false - }, - { - "name": "ListTeamMembersStatistics", - "description": "List team members' statistics\n\nGet the statistics for all members of a given team, or for a specific member by using party ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.", - "requestType": "ListTeamMembersStatisticsRequest", - "requestLongType": "ListTeamMembersStatisticsRequest", - "requestFullType": "datanode.api.v2.ListTeamMembersStatisticsRequest", - "requestStreaming": false, - "responseType": "ListTeamMembersStatisticsResponse", - "responseLongType": "ListTeamMembersStatisticsResponse", - "responseFullType": "datanode.api.v2.ListTeamMembersStatisticsResponse", - "responseStreaming": false - }, - { - "name": "ListTeamReferees", - "description": "List team referees\n\nGet a list of all referees for a given team ID", - "requestType": "ListTeamRefereesRequest", - "requestLongType": "ListTeamRefereesRequest", - "requestFullType": "datanode.api.v2.ListTeamRefereesRequest", - "requestStreaming": false, - "responseType": "ListTeamRefereesResponse", - "responseLongType": "ListTeamRefereesResponse", - "responseFullType": "datanode.api.v2.ListTeamRefereesResponse", - "responseStreaming": false - }, - { - "name": "ListTeamRefereeHistory", - "description": "List referee team history\n\nGet a list of a referee's team history, i.e. the teams that a referee has been a member of and transferred from/to.", - "requestType": "ListTeamRefereeHistoryRequest", - "requestLongType": "ListTeamRefereeHistoryRequest", - "requestFullType": "datanode.api.v2.ListTeamRefereeHistoryRequest", - "requestStreaming": false, - "responseType": "ListTeamRefereeHistoryResponse", - "responseLongType": "ListTeamRefereeHistoryResponse", - "responseFullType": "datanode.api.v2.ListTeamRefereeHistoryResponse", - "responseStreaming": false - }, - { - "name": "GetFeesStats", - "description": "Get fees statistics\n\nGet accumulated fees, rewards, and applied discount information. Either a market or an asset must be supplied as filter.", - "requestType": "GetFeesStatsRequest", - "requestLongType": "GetFeesStatsRequest", - "requestFullType": "datanode.api.v2.GetFeesStatsRequest", - "requestStreaming": false, - "responseType": "GetFeesStatsResponse", - "responseLongType": "GetFeesStatsResponse", - "responseFullType": "datanode.api.v2.GetFeesStatsResponse", - "responseStreaming": false - }, - { - "name": "GetFeesStatsForParty", - "description": "Get fees statistics for a party\n\nGet accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter.", - "requestType": "GetFeesStatsForPartyRequest", - "requestLongType": "GetFeesStatsForPartyRequest", - "requestFullType": "datanode.api.v2.GetFeesStatsForPartyRequest", - "requestStreaming": false, - "responseType": "GetFeesStatsForPartyResponse", - "responseLongType": "GetFeesStatsForPartyResponse", - "responseFullType": "datanode.api.v2.GetFeesStatsForPartyResponse", - "responseStreaming": false - }, - { - "name": "GetCurrentVolumeDiscountProgram", - "description": "Get current volume discount program\n\nGet the current volume discount program for the network. This program may not be active if it has ended\nand has not been replaced by another.", - "requestType": "GetCurrentVolumeDiscountProgramRequest", - "requestLongType": "GetCurrentVolumeDiscountProgramRequest", - "requestFullType": "datanode.api.v2.GetCurrentVolumeDiscountProgramRequest", - "requestStreaming": false, - "responseType": "GetCurrentVolumeDiscountProgramResponse", - "responseLongType": "GetCurrentVolumeDiscountProgramResponse", - "responseFullType": "datanode.api.v2.GetCurrentVolumeDiscountProgramResponse", - "responseStreaming": false - }, - { - "name": "GetVolumeDiscountStats", - "description": "Get volume discount statistics\n\nGet the information about a party's running traded volume, and the discount factor it earns them.", - "requestType": "GetVolumeDiscountStatsRequest", - "requestLongType": "GetVolumeDiscountStatsRequest", - "requestFullType": "datanode.api.v2.GetVolumeDiscountStatsRequest", - "requestStreaming": false, - "responseType": "GetVolumeDiscountStatsResponse", - "responseLongType": "GetVolumeDiscountStatsResponse", - "responseFullType": "datanode.api.v2.GetVolumeDiscountStatsResponse", - "responseStreaming": false - }, - { - "name": "GetVestingBalancesSummary", - "description": "Get vesting balances summary\n\nGet information about a party's vesting and locked balances", - "requestType": "GetVestingBalancesSummaryRequest", - "requestLongType": "GetVestingBalancesSummaryRequest", - "requestFullType": "datanode.api.v2.GetVestingBalancesSummaryRequest", - "requestStreaming": false, - "responseType": "GetVestingBalancesSummaryResponse", - "responseLongType": "GetVestingBalancesSummaryResponse", - "responseFullType": "datanode.api.v2.GetVestingBalancesSummaryResponse", - "responseStreaming": false - }, - { - "name": "GetPartyVestingStats", - "description": "Get vesting balance statistics\n\nGet information about a party's vesting rewards", - "requestType": "GetPartyVestingStatsRequest", - "requestLongType": "GetPartyVestingStatsRequest", - "requestFullType": "datanode.api.v2.GetPartyVestingStatsRequest", - "requestStreaming": false, - "responseType": "GetPartyVestingStatsResponse", - "responseLongType": "GetPartyVestingStatsResponse", - "responseFullType": "datanode.api.v2.GetPartyVestingStatsResponse", - "responseStreaming": false - }, - { - "name": "ObserveTransactionResults", - "description": "Observe transaction results\n\nSubscribe to a stream of transaction results, optionally filtered by party/hash/status", - "requestType": "ObserveTransactionResultsRequest", - "requestLongType": "ObserveTransactionResultsRequest", - "requestFullType": "datanode.api.v2.ObserveTransactionResultsRequest", - "requestStreaming": false, - "responseType": "ObserveTransactionResultsResponse", - "responseLongType": "ObserveTransactionResultsResponse", - "responseFullType": "datanode.api.v2.ObserveTransactionResultsResponse", - "responseStreaming": true - }, - { - "name": "EstimateTransferFee", - "description": "Estimate transfer fee costs\n\nEstimate transfer fee costs with potential discount applied", - "requestType": "EstimateTransferFeeRequest", - "requestLongType": "EstimateTransferFeeRequest", - "requestFullType": "datanode.api.v2.EstimateTransferFeeRequest", - "requestStreaming": false, - "responseType": "EstimateTransferFeeResponse", - "responseLongType": "EstimateTransferFeeResponse", - "responseFullType": "datanode.api.v2.EstimateTransferFeeResponse", - "responseStreaming": false - }, - { - "name": "GetTotalTransferFeeDiscount", - "description": "Available transfer fee discount\n\nReturns available per party per asset transfer discount", - "requestType": "GetTotalTransferFeeDiscountRequest", - "requestLongType": "GetTotalTransferFeeDiscountRequest", - "requestFullType": "datanode.api.v2.GetTotalTransferFeeDiscountRequest", - "requestStreaming": false, - "responseType": "GetTotalTransferFeeDiscountResponse", - "responseLongType": "GetTotalTransferFeeDiscountResponse", - "responseFullType": "datanode.api.v2.GetTotalTransferFeeDiscountResponse", - "responseStreaming": false - }, - { - "name": "ListGames", - "description": "List games\n\nGet a list of games and corresponding game data, given the provided filters", - "requestType": "ListGamesRequest", - "requestLongType": "ListGamesRequest", - "requestFullType": "datanode.api.v2.ListGamesRequest", - "requestStreaming": false, - "responseType": "ListGamesResponse", - "responseLongType": "ListGamesResponse", - "responseFullType": "datanode.api.v2.ListGamesResponse", - "responseStreaming": false - }, - { - "name": "ListPartyMarginModes", - "description": "List margin modes per party per market\n\nGet a list of all margin modes, or for a specific market ID, or party ID.", - "requestType": "ListPartyMarginModesRequest", - "requestLongType": "ListPartyMarginModesRequest", - "requestFullType": "datanode.api.v2.ListPartyMarginModesRequest", - "requestStreaming": false, - "responseType": "ListPartyMarginModesResponse", - "responseLongType": "ListPartyMarginModesResponse", - "responseFullType": "datanode.api.v2.ListPartyMarginModesResponse", - "responseStreaming": false - }, - { - "name": "ExportNetworkHistory", - "description": "Export network history as CSV\n\nExport CSV table data from network history between two block heights.\n\nThe requested block heights must fall on network history segment boundaries, which can\nbe discovered by calling the API to list all network history segments. By default\nsegments contain 1000 blocks. In that case ranges such as (1, 1000), (1001, 2000), (1, 3000)\nwould all fall on segment boundaries and be valid.\n\nThe generated CSV file is compressed into a ZIP file and returned, with the file name\nin the following format: `[chain id]-[table name]-[start block]-[end block].zip`\n\nIn gRPC, results are returned in a chunked stream of base64 encoded data.\n\nThrough the REST gateway, the base64 data chunks are decoded and streamed as a\n`content-type: application/zip` HTTP response.\n\nThe CSV exported data uses a comma as a DELIMITER between fields, and \" for QUOTE-ing fields.\n\nIf a value contains any of: DELIMITER, QUOTE, carriage return, or line feed then the whole\nvalue is prefixed and suffixed by the QUOTE character and any occurrence within\nthe value of a QUOTE character preceded by another QUOTE.\n\nA NULL is output as the NULL parameter string and is not quoted, while a non-NULL value\nmatching the NULL parameter string is quoted.\n\nFor example, with the default settings, a NULL is written as an unquoted empty string,\nwhile an empty string data value is written with double quotes.\n\nNote that CSV files produced may contain quoted values containing embedded carriage returns and line feeds.\nThus the files are not strictly one line per table row like text-format files.\n\nThe first row of the CSV file is a header that describes the contents of each column\nin subsequent rows.\n\nUsually the ZIP file will contain only a single CSV file. However it is possible that\nthe (from_block, to_block) request spans over a range of blocks in which the underlying\nschema of the database changes. For example, a column may have been added, removed, or renamed.\n\nIf this happens, the CSV file will be split at the point of the schema change and the zip\nfile will contain multiple CSV files, with a potentially different set of headers. The\n'version' number of the database schema is part of the in the CSV filename:\n\n `[chain id]-[table name]-[schema version]-[start block]-[end block].zip`\n\nFor example, a zip file might be called mainnet-sometable-000001-003000.zip\n\nAnd contain two CSV files: `mainnet-sometable-1-000001-002000.csv`:\n\ntimestamp, value\n1, foo\n2, bar\n\nAnd `mainnet-sometable-2-002001-003000.csv`:\n\ntimestamp, value, extra_value\n3, baz, apple\n\nIt is worth noting that the schema will not change within a single network history segment.\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE", - "requestType": "ExportNetworkHistoryRequest", - "requestLongType": "ExportNetworkHistoryRequest", - "requestFullType": "datanode.api.v2.ExportNetworkHistoryRequest", - "requestStreaming": false, - "responseType": "HttpBody", - "responseLongType": ".google.api.HttpBody", - "responseFullType": "google.api.HttpBody", - "responseStreaming": true - }, - { - "name": "Ping", - "description": "Ping\n\nPing the data node", - "requestType": "PingRequest", - "requestLongType": "PingRequest", - "requestFullType": "datanode.api.v2.PingRequest", - "requestStreaming": false, - "responseType": "PingResponse", - "responseLongType": "PingResponse", - "responseFullType": "datanode.api.v2.PingResponse", - "responseStreaming": false - } - ] - } - ] - }, - { - "name": "vega/api/v1/core.proto", - "description": "", - "package": "vega.api.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": true, - "enums": [ - { - "name": "Type", - "longName": "SubmitRawTransactionRequest.Type", - "fullName": "vega.api.v1.SubmitRawTransactionRequest.Type", - "description": "Blockchain transaction type", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "TYPE_ASYNC", - "number": "1", - "description": "Transaction will be submitted without waiting for response" - }, - { - "name": "TYPE_SYNC", - "number": "2", - "description": "Transaction will be submitted, and blocking until the\ntendermint mempool returns a response" - }, - { - "name": "TYPE_COMMIT", - "number": "3", - "description": "Transaction will be submitted, and blocking until the tendermint\nnetwork has committed it into a block. Used only for debugging,\nnot for submitting transactions" - } - ] - }, - { - "name": "Type", - "longName": "SubmitTransactionRequest.Type", - "fullName": "vega.api.v1.SubmitTransactionRequest.Type", - "description": "Blockchain transaction type.", - "values": [ - { - "name": "TYPE_UNSPECIFIED", - "number": "0", - "description": "" - }, - { - "name": "TYPE_ASYNC", - "number": "1", - "description": "Transaction will be submitted without waiting for a response." - }, - { - "name": "TYPE_SYNC", - "number": "2", - "description": "Transaction will be submitted, and blocking until the mempool returns a response." - }, - { - "name": "TYPE_COMMIT", - "number": "3", - "description": "Transaction will be submitted, and blocking until the network has committed it into a block.\nUsed only for debugging local network, not for submitting transactions." - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "CheckRawTransactionRequest", - "longName": "CheckRawTransactionRequest", - "fullName": "vega.api.v1.CheckRawTransactionRequest", - "description": "Request for checking a version agnostic transaction on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tx", - "description": "Bundle of signed payload and signature marshalled into a byte array, to form a transaction that would be submitted to the Vega blockchain", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CheckRawTransactionResponse", - "longName": "CheckRawTransactionResponse", - "fullName": "vega.api.v1.CheckRawTransactionResponse", - "description": "Response for checking a version agnostic transaction on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "success", - "description": "Whether or not the transaction passed the submission checks.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "code", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "gas_wanted", - "description": "Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "gas_used", - "description": "Unused.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data", - "description": "Further details for why the transaction was not successfully checked.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log", - "description": "Further details for the underlying consensus layer of the result of the transaction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "info", - "description": "Unused", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CheckTransactionRequest", - "longName": "CheckTransactionRequest", - "fullName": "vega.api.v1.CheckTransactionRequest", - "description": "Request for checking a transaction v2 on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tx", - "description": "Transaction containing a command to be checked on the network, and not added to the chain's mempool.", - "label": "", - "type": "Transaction", - "longType": "vega.commands.v1.Transaction", - "fullType": "vega.commands.v1.Transaction", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CheckTransactionResponse", - "longName": "CheckTransactionResponse", - "fullName": "vega.api.v1.CheckTransactionResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "success", - "description": "Whether or not the transaction passed the submission checks.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "code", - "description": "Error code to indicate the category of failure if the transaction was not successfully checked.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "gas_wanted", - "description": "Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "gas_used", - "description": "Unused.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data", - "description": "Further details for why the transaction was not successfully submitted.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log", - "description": "Further details for the underlying consensus layer of the result of the transaction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "info", - "description": "Unused.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetSpamStatisticsRequest", - "longName": "GetSpamStatisticsRequest", - "fullName": "vega.api.v1.GetSpamStatisticsRequest", - "description": "Request to retrieve the spam statistics of a party for the given epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID whose statistics are requested", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetSpamStatisticsResponse", - "longName": "GetSpamStatisticsResponse", - "fullName": "vega.api.v1.GetSpamStatisticsResponse", - "description": "Response containing all the spam statistics of a party for the current epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "chain_id", - "description": "Chain ID for which the statistics are captured.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "statistics", - "description": "Spam statistics for the party", - "label": "", - "type": "SpamStatistics", - "longType": "SpamStatistics", - "fullType": "vega.api.v1.SpamStatistics", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GetVegaTimeRequest", - "longName": "GetVegaTimeRequest", - "fullName": "vega.api.v1.GetVegaTimeRequest", - "description": "Request for the current time of the Vega network", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "GetVegaTimeResponse", - "longName": "GetVegaTimeResponse", - "fullName": "vega.api.v1.GetVegaTimeResponse", - "description": "Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "timestamp", - "description": "Timestamp representation of current VegaTime as represented in\nUnix nanoseconds, for example `1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LastBlockHeightRequest", - "longName": "LastBlockHeightRequest", - "fullName": "vega.api.v1.LastBlockHeightRequest", - "description": "Request to get the height of the very last block processed\nby tendermint", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "LastBlockHeightResponse", - "longName": "LastBlockHeightResponse", - "fullName": "vega.api.v1.LastBlockHeightResponse", - "description": "Response with the height of the last block processed by\ntendermint", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "Last block height", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "Last block hash", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_hash_function", - "description": "Supported proof of work hash function", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_difficulty", - "description": "Difficulty of the proof of work, i.e. the target number of zeros", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_number_of_past_blocks", - "description": "Supported proof of work number of blocks behind current height allowed", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_number_of_tx_per_block", - "description": "Allowed number of transactions per block", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_increasing_difficulty", - "description": "Boolean indicating whether increasing difficulty is allowed for using the\nsame height for more than `spam_pow_number_of_past_blocks` transactions", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_id", - "description": "Network chain id from which the block comes from", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveEventBusRequest", - "longName": "ObserveEventBusRequest", - "fullName": "vega.api.v1.ObserveEventBusRequest", - "description": "Request to subscribe to a stream of one or more event types from the Vega event bus", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "type", - "description": "One or more types of event, required field", - "label": "repeated", - "type": "BusEventType", - "longType": "vega.events.v1.BusEventType", - "fullType": "vega.events.v1.BusEventType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID to filter events for, optional field. If omitted, no markets will be filtered out.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "Party ID to filter events for, optional field. If omitted, no parties will be filtered out.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "batch_size", - "description": "Batch size, optional field -\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ObserveEventBusResponse", - "longName": "ObserveEventBusResponse", - "fullName": "vega.api.v1.ObserveEventBusResponse", - "description": "Response to a subscribed stream of events from the Vega event bus", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "events", - "description": "One or more events that match the subscription request criteria.", - "label": "repeated", - "type": "BusEvent", - "longType": "vega.events.v1.BusEvent", - "fullType": "vega.events.v1.BusEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PoWBlockState", - "longName": "PoWBlockState", - "fullName": "vega.api.v1.PoWBlockState", - "description": "Proof of Work state for a given block", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "Block height for the current Proof of Work state statistics", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_hash", - "description": "Hash of the current block", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transactions_seen", - "description": "Total number of transactions seen in the block", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expected_difficulty", - "description": "This is the minimum required difficulty for the next transaction submitted on this block\nif it is possible to submit more transactions on this block, otherwise nil.", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_expected_difficulty", - "defaultValue": "" - }, - { - "name": "hash_function", - "description": "Hashing function used to calculate the block hash", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "difficulty", - "description": "Base difficulty for this block for when transactions seen \u003c tx_per_block", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_per_block", - "description": "Number of transactions that can have their proof-of-work calculated with this block hash before\neither the difficulty increases, or no more transactions can use this block hash", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "increasing_difficulty", - "description": "Whether or not this block allows for increasing proof-of-work difficulty if the\ntx-per-block-hash limit has been reached", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PoWStatistic", - "longName": "PoWStatistic", - "fullName": "vega.api.v1.PoWStatistic", - "description": "Proof of work statistics for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "block_states", - "description": "Block state for each block in scope for PoW calculation", - "label": "repeated", - "type": "PoWBlockState", - "longType": "PoWBlockState", - "fullType": "vega.api.v1.PoWBlockState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "banned_until", - "description": "PoW banned until timestamp as RFC3339Nano", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_banned_until", - "defaultValue": "" - }, - { - "name": "number_of_past_blocks", - "description": "Number of block behind the current block whose hash can be used for proof-of-work calculations", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PropagateChainEventRequest", - "longName": "PropagateChainEventRequest", - "fullName": "vega.api.v1.PropagateChainEventRequest", - "description": "Request for a new event sent by the blockchain queue to be propagated on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "event", - "description": "Chain event to propagate.", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pub_key", - "description": "Public key of the key pair used to sign messages.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signature", - "description": "Signature generated by the private key associated with the public key.", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PropagateChainEventResponse", - "longName": "PropagateChainEventResponse", - "fullName": "vega.api.v1.PropagateChainEventResponse", - "description": "Response for a new event sent by the blockchain queue to be propagated on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "success", - "description": "Success will be true if the event was accepted by the node,\n**Important** - success does not mean that the event is confirmed by consensus", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SpamStatistic", - "longName": "SpamStatistic", - "fullName": "vega.api.v1.SpamStatistic", - "description": "Statistics for a given spam policy", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "count_for_epoch", - "description": "Current transaction count received from the party during this epoch for this policy", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_for_epoch", - "description": "Maximum number of transactions allowed for this policy in an epoch", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "banned_until", - "description": "If blocked the timestamp when the party will be unblocked as RFC3339Nano", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_banned_until", - "defaultValue": "" - }, - { - "name": "min_tokens_required", - "description": "Effective minimum number of tokens required to submit a transaction of this type", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SpamStatistics", - "longName": "SpamStatistics", - "fullName": "vega.api.v1.SpamStatistics", - "description": "Complete spam statistics captured for a given party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposals", - "description": "Statistics for proposal transactions made by the party.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "delegations", - "description": "Statistics for delegation transactions made by the party.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfers", - "description": "Statistics for transfer transactions made by the party.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_announcements", - "description": "Statistics for node announcement transactions made by the party.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "votes", - "description": "Statistics for proposal votes made by the party.", - "label": "", - "type": "VoteSpamStatistics", - "longType": "VoteSpamStatistics", - "fullType": "vega.api.v1.VoteSpamStatistics", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pow", - "description": "Statistics for proof of work difficulty observed per block for the party.", - "label": "", - "type": "PoWStatistic", - "longType": "PoWStatistic", - "fullType": "vega.api.v1.PoWStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "issue_signatures", - "description": "Statistics for multisig signatures issued for the party.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Epoch in which these statistics apply to.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "create_referral_set", - "description": "Statistics for transactions made by the party to create referral sets.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "update_referral_set", - "description": "Statistics for transactions made by the party to update referral sets.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "apply_referral_code", - "description": "Statistics for transactions made by the party to apply referral codes.", - "label": "", - "type": "SpamStatistic", - "longType": "SpamStatistic", - "fullType": "vega.api.v1.SpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Statistics", - "longName": "Statistics", - "fullName": "vega.api.v1.Statistics", - "description": "Vega domain specific statistics as reported by the node the caller is connected to", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "Current block height as reported by the Vega blockchain", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "backlog_length", - "description": "Current backlog length i.e., number of transactions, that are waiting to be included in a block", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_peers", - "description": "Total number of connected peers to this node", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "genesis_time", - "description": "Genesis block date and time formatted in ISO-8601 datetime format with nanosecond precision", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_time", - "description": "Current system date and time formatted in ISO-8601 datetime format with nanosecond precision", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_time", - "description": "Current Vega date and time formatted in ISO-8601 datetime format with nanosecond precision", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "Status of the connection to the Vega blockchain", - "label": "", - "type": "ChainStatus", - "longType": "vega.ChainStatus", - "fullType": "vega.ChainStatus", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_per_block", - "description": "Transactions per block", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_tx_bytes", - "description": "Average transaction size in bytes", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_orders_per_block", - "description": "Average orders per block", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trades_per_second", - "description": "Trades emitted per second", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "orders_per_second", - "description": "Orders processed per second", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_markets", - "description": "Total markets on this Vega network", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_amend_order", - "description": "Total number of order amendments since genesis across all markets", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_cancel_order", - "description": "Total number of order cancellations since genesis across all markets", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_create_order", - "description": "Total number of order submissions since genesis across all markets", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_orders", - "description": "Total number of orders processed since genesis across all markets", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_trades", - "description": "Total number of trades emitted since genesis across all markets", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_subscriptions", - "description": "Current number of stream subscribers to order data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trade_subscriptions", - "description": "Current number of stream subscribers to trade data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "candle_subscriptions", - "description": "Current number of stream subscribers to candlestick data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_depth_subscriptions", - "description": "Current number of stream subscribers to market depth data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "positions_subscriptions", - "description": "Current number of stream subscribers to positions data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "account_subscriptions", - "description": "Current number of stream subscribers to account data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_data_subscriptions", - "description": "Current number of stream subscribers to market data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "app_version_hash", - "description": "Version hash of the Vega node software", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "app_version", - "description": "Version of the Vega node software", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_version", - "description": "Version of the underlying Vega blockchain", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_duration", - "description": "Current block duration, in nanoseconds", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "uptime", - "description": "Total uptime for this node formatted in ISO-8601 datetime format with nanosecond precision", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_id", - "description": "Unique ID for the underlying Vega blockchain", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_depth_updates_subscriptions", - "description": "Current number of stream subscribers to market depth update data", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_hash", - "description": "Current block hash", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "Current epoch", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_start_time", - "description": "Epoch start time", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_expiry_time", - "description": "Epoch expected end time", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "event_count", - "description": "Number of events in the last block", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "events_per_second", - "description": "Rate of events per second in the last block", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StatisticsRequest", - "longName": "StatisticsRequest", - "fullName": "vega.api.v1.StatisticsRequest", - "description": "Request for statistics about the Vega network", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "StatisticsResponse", - "longName": "StatisticsResponse", - "fullName": "vega.api.v1.StatisticsResponse", - "description": "Response containing statistics about the Vega network", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "statistics", - "description": "", - "label": "", - "type": "Statistics", - "longType": "Statistics", - "fullType": "vega.api.v1.Statistics", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SubmitRawTransactionRequest", - "longName": "SubmitRawTransactionRequest", - "fullName": "vega.api.v1.SubmitRawTransactionRequest", - "description": "Request for submitting a version agnostic transaction on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tx", - "description": "Bundle of signed payload and signature marshalled into a byte array, to form a transaction that will be submitted to the Vega blockchain", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Type of transaction request, for example ASYNC, meaning the transaction will be submitted and not block on a response", - "label": "", - "type": "Type", - "longType": "SubmitRawTransactionRequest.Type", - "fullType": "vega.api.v1.SubmitRawTransactionRequest.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SubmitRawTransactionResponse", - "longName": "SubmitRawTransactionResponse", - "fullName": "vega.api.v1.SubmitRawTransactionResponse", - "description": "Response for submitting a version agnostic transaction on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "success", - "description": "Whether or not the transaction was validated and submitted to the chain's mempool.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "Hash of the transaction, which can be used to identify the transaction in a node's event stream.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "code", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data", - "description": "Further details for why the transaction was not successfully submitted.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log", - "description": "Further details for the underlying consensus layer of the result of the transaction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "height", - "description": "Unused.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SubmitTransactionRequest", - "longName": "SubmitTransactionRequest", - "fullName": "vega.api.v1.SubmitTransactionRequest", - "description": "Request for submitting a transaction v2 on Vega", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "tx", - "description": "Transaction containing a command to execute on the network, and a signature to provide authentication.", - "label": "", - "type": "Transaction", - "longType": "vega.commands.v1.Transaction", - "fullType": "vega.commands.v1.Transaction", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "Method of submission.", - "label": "", - "type": "Type", - "longType": "SubmitTransactionRequest.Type", - "fullType": "vega.api.v1.SubmitTransactionRequest.Type", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SubmitTransactionResponse", - "longName": "SubmitTransactionResponse", - "fullName": "vega.api.v1.SubmitTransactionResponse", - "description": "Response for submitting a transaction on the network.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "success", - "description": "Whether or not the transaction was validated and submitted to the chain's mempool.", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_hash", - "description": "Hash of the transaction, which can be used to identify the transaction in a node's event stream.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "code", - "description": "Error code to indicate the category of failure if the transaction was not successfully submitted.", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data", - "description": "Further details for why the transaction was not successfully submitted.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log", - "description": "Further details for the underlying consensus layer of the result of the transaction.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "height", - "description": "Unused.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VoteSpamStatistic", - "longName": "VoteSpamStatistic", - "fullName": "vega.api.v1.VoteSpamStatistic", - "description": "Vote statistics for the voting spam policies\nwhich are calculated as a ratio of the total votes\nthat have been rejected.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal", - "description": "Unique ID of the proposal being voted on by the party.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "count_for_epoch", - "description": "Current vote count received from the party for the given proposal during this epoch", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_tokens_required", - "description": "Effective minimum number of tokens required to vote on the proposal", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VoteSpamStatistics", - "longName": "VoteSpamStatistics", - "fullName": "vega.api.v1.VoteSpamStatistics", - "description": "Voting statistics by proposal for a given party for the current epoch", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "statistics", - "description": "List of statistics for proposals voted on by the party", - "label": "repeated", - "type": "VoteSpamStatistic", - "longType": "VoteSpamStatistic", - "fullType": "vega.api.v1.VoteSpamStatistic", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_for_epoch", - "description": "Maximum number of votes per proposal allowed in an epoch", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "banned_until", - "description": "If blocked the timestamp when the party will be unblocked as RFC3339Nano", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_banned_until", - "defaultValue": "" - } - ] - } - ], - "services": [ - { - "name": "CoreService", - "longName": "CoreService", - "fullName": "vega.api.v1.CoreService", - "description": "", - "methods": [ - { - "name": "SubmitTransaction", - "description": "Submit transaction\n\nSubmit a signed transaction to the network containing a command to be executed such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.", - "requestType": "SubmitTransactionRequest", - "requestLongType": "SubmitTransactionRequest", - "requestFullType": "vega.api.v1.SubmitTransactionRequest", - "requestStreaming": false, - "responseType": "SubmitTransactionResponse", - "responseLongType": "SubmitTransactionResponse", - "responseFullType": "vega.api.v1.SubmitTransactionResponse", - "responseStreaming": false - }, - { - "name": "PropagateChainEvent", - "description": "Chain event\n\nPropagate a chain event", - "requestType": "PropagateChainEventRequest", - "requestLongType": "PropagateChainEventRequest", - "requestFullType": "vega.api.v1.PropagateChainEventRequest", - "requestStreaming": false, - "responseType": "PropagateChainEventResponse", - "responseLongType": "PropagateChainEventResponse", - "responseFullType": "vega.api.v1.PropagateChainEventResponse", - "responseStreaming": false - }, - { - "name": "Statistics", - "description": "Statistics\n\nGet statistics on Vega", - "requestType": "StatisticsRequest", - "requestLongType": "StatisticsRequest", - "requestFullType": "vega.api.v1.StatisticsRequest", - "requestStreaming": false, - "responseType": "StatisticsResponse", - "responseLongType": "StatisticsResponse", - "responseFullType": "vega.api.v1.StatisticsResponse", - "responseStreaming": false - }, - { - "name": "LastBlockHeight", - "description": "Blockchain height\n\nGet the height of the last tendermint block", - "requestType": "LastBlockHeightRequest", - "requestLongType": "LastBlockHeightRequest", - "requestFullType": "vega.api.v1.LastBlockHeightRequest", - "requestStreaming": false, - "responseType": "LastBlockHeightResponse", - "responseLongType": "LastBlockHeightResponse", - "responseFullType": "vega.api.v1.LastBlockHeightResponse", - "responseStreaming": false - }, - { - "name": "GetVegaTime", - "description": "Vega time\n\nGet current Vega time", - "requestType": "GetVegaTimeRequest", - "requestLongType": "GetVegaTimeRequest", - "requestFullType": "vega.api.v1.GetVegaTimeRequest", - "requestStreaming": false, - "responseType": "GetVegaTimeResponse", - "responseLongType": "GetVegaTimeResponse", - "responseFullType": "vega.api.v1.GetVegaTimeResponse", - "responseStreaming": false - }, - { - "name": "ObserveEventBus", - "description": "Events subscription\n\nSubscribe to a stream of events from the core", - "requestType": "ObserveEventBusRequest", - "requestLongType": "ObserveEventBusRequest", - "requestFullType": "vega.api.v1.ObserveEventBusRequest", - "requestStreaming": true, - "responseType": "ObserveEventBusResponse", - "responseLongType": "ObserveEventBusResponse", - "responseFullType": "vega.api.v1.ObserveEventBusResponse", - "responseStreaming": true - }, - { - "name": "SubmitRawTransaction", - "description": "Submit raw transaction\n\nSubmit a pre-serialised signed transaction containing a command to the network to be executed, such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.", - "requestType": "SubmitRawTransactionRequest", - "requestLongType": "SubmitRawTransactionRequest", - "requestFullType": "vega.api.v1.SubmitRawTransactionRequest", - "requestStreaming": false, - "responseType": "SubmitRawTransactionResponse", - "responseLongType": "SubmitRawTransactionResponse", - "responseFullType": "vega.api.v1.SubmitRawTransactionResponse", - "responseStreaming": false - }, - { - "name": "CheckTransaction", - "description": "Check transaction\n\nSend a signed transaction containing a command to the network to be checked, but not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.", - "requestType": "CheckTransactionRequest", - "requestLongType": "CheckTransactionRequest", - "requestFullType": "vega.api.v1.CheckTransactionRequest", - "requestStreaming": false, - "responseType": "CheckTransactionResponse", - "responseLongType": "CheckTransactionResponse", - "responseFullType": "vega.api.v1.CheckTransactionResponse", - "responseStreaming": false - }, - { - "name": "CheckRawTransaction", - "description": "Check raw transaction\n\nSend a pre-serialised transaction containing a command to the network to be checked, but then not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.", - "requestType": "CheckRawTransactionRequest", - "requestLongType": "CheckRawTransactionRequest", - "requestFullType": "vega.api.v1.CheckRawTransactionRequest", - "requestStreaming": false, - "responseType": "CheckRawTransactionResponse", - "responseLongType": "CheckRawTransactionResponse", - "responseFullType": "vega.api.v1.CheckRawTransactionResponse", - "responseStreaming": false - }, - { - "name": "GetSpamStatistics", - "description": "Get Spam statistics\n\nGet the spam statistics for a given party.", - "requestType": "GetSpamStatisticsRequest", - "requestLongType": "GetSpamStatisticsRequest", - "requestFullType": "vega.api.v1.GetSpamStatisticsRequest", - "requestStreaming": false, - "responseType": "GetSpamStatisticsResponse", - "responseLongType": "GetSpamStatisticsResponse", - "responseFullType": "vega.api.v1.GetSpamStatisticsResponse", - "responseStreaming": false - } - ] - } - ] - }, - { - "name": "vega/api/v1/corestate.proto", - "description": "", - "package": "vega.api.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": true, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "Account", - "longName": "Account", - "fullName": "vega.api.v1.Account", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "type", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAccountsRequest", - "longName": "ListAccountsRequest", - "fullName": "vega.api.v1.ListAccountsRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAccountsResponse", - "longName": "ListAccountsResponse", - "fullName": "vega.api.v1.ListAccountsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accounts", - "description": "", - "label": "repeated", - "type": "Account", - "longType": "Account", - "fullType": "vega.api.v1.Account", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAssetsRequest", - "longName": "ListAssetsRequest", - "fullName": "vega.api.v1.ListAssetsRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "optional ID", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListAssetsResponse", - "longName": "ListAssetsResponse", - "fullName": "vega.api.v1.ListAssetsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "assets", - "description": "", - "label": "repeated", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListDelegationsRequest", - "longName": "ListDelegationsRequest", - "fullName": "vega.api.v1.ListDelegationsRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListDelegationsResponse", - "longName": "ListDelegationsResponse", - "fullName": "vega.api.v1.ListDelegationsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "delegations", - "description": "", - "label": "repeated", - "type": "Delegation", - "longType": "vega.Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarketsDataRequest", - "longName": "ListMarketsDataRequest", - "fullName": "vega.api.v1.ListMarketsDataRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarketsDataResponse", - "longName": "ListMarketsDataResponse", - "fullName": "vega.api.v1.ListMarketsDataResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "markets_data", - "description": "", - "label": "repeated", - "type": "MarketData", - "longType": "vega.MarketData", - "fullType": "vega.MarketData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarketsRequest", - "longName": "ListMarketsRequest", - "fullName": "vega.api.v1.ListMarketsRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListMarketsResponse", - "longName": "ListMarketsResponse", - "fullName": "vega.api.v1.ListMarketsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "markets", - "description": "", - "label": "repeated", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListNetworkLimitsRequest", - "longName": "ListNetworkLimitsRequest", - "fullName": "vega.api.v1.ListNetworkLimitsRequest", - "description": "", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "ListNetworkLimitsResponse", - "longName": "ListNetworkLimitsResponse", - "fullName": "vega.api.v1.ListNetworkLimitsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "network_limits", - "description": "", - "label": "", - "type": "NetworkLimits", - "longType": "vega.NetworkLimits", - "fullType": "vega.NetworkLimits", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListNetworkParametersRequest", - "longName": "ListNetworkParametersRequest", - "fullName": "vega.api.v1.ListNetworkParametersRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "network_parameter_key", - "description": "optional parameter key", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListNetworkParametersResponse", - "longName": "ListNetworkParametersResponse", - "fullName": "vega.api.v1.ListNetworkParametersResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "network_parameters", - "description": "", - "label": "repeated", - "type": "NetworkParameter", - "longType": "vega.NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartiesRequest", - "longName": "ListPartiesRequest", - "fullName": "vega.api.v1.ListPartiesRequest", - "description": "", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "ListPartiesResponse", - "longName": "ListPartiesResponse", - "fullName": "vega.api.v1.ListPartiesResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties", - "description": "", - "label": "repeated", - "type": "Party", - "longType": "vega.Party", - "fullType": "vega.Party", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartiesStakeRequest", - "longName": "ListPartiesStakeRequest", - "fullName": "vega.api.v1.ListPartiesStakeRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListPartiesStakeResponse", - "longName": "ListPartiesStakeResponse", - "fullName": "vega.api.v1.ListPartiesStakeResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties_stake", - "description": "", - "label": "repeated", - "type": "PartyStake", - "longType": "PartyStake", - "fullType": "vega.api.v1.PartyStake", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListProposalsRequest", - "longName": "ListProposalsRequest", - "fullName": "vega.api.v1.ListProposalsRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal", - "description": "optional ID", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposer", - "description": "optional party", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListProposalsResponse", - "longName": "ListProposalsResponse", - "fullName": "vega.api.v1.ListProposalsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposals", - "description": "", - "label": "repeated", - "type": "Proposal", - "longType": "vega.Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListValidatorsRequest", - "longName": "ListValidatorsRequest", - "fullName": "vega.api.v1.ListValidatorsRequest", - "description": "", - "hasExtensions": false, - "hasFields": false, - "hasOneofs": false, - "extensions": [], - "fields": [] - }, - { - "name": "ListValidatorsResponse", - "longName": "ListValidatorsResponse", - "fullName": "vega.api.v1.ListValidatorsResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "validators", - "description": "", - "label": "repeated", - "type": "ValidatorUpdate", - "longType": "vega.events.v1.ValidatorUpdate", - "fullType": "vega.events.v1.ValidatorUpdate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListVotesRequest", - "longName": "ListVotesRequest", - "fullName": "vega.api.v1.ListVotesRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ListVotesResponse", - "longName": "ListVotesResponse", - "fullName": "vega.api.v1.ListVotesResponse", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "votes", - "description": "", - "label": "repeated", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyStake", - "longName": "PartyStake", - "fullName": "vega.api.v1.PartyStake", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_stake_available", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake_linkings", - "description": "", - "label": "repeated", - "type": "StakeLinking", - "longType": "vega.events.v1.StakeLinking", - "fullType": "vega.events.v1.StakeLinking", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [ - { - "name": "CoreStateService", - "longName": "CoreStateService", - "fullName": "vega.api.v1.CoreStateService", - "description": "", - "methods": [ - { - "name": "ListAccounts", - "description": "Accounts list\n\nGet a list of accounts. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListAccountsRequest", - "requestLongType": "ListAccountsRequest", - "requestFullType": "vega.api.v1.ListAccountsRequest", - "requestStreaming": false, - "responseType": "ListAccountsResponse", - "responseLongType": "ListAccountsResponse", - "responseFullType": "vega.api.v1.ListAccountsResponse", - "responseStreaming": false - }, - { - "name": "ListAssets", - "description": "Assets list\n\nGet a list of assets. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListAssetsRequest", - "requestLongType": "ListAssetsRequest", - "requestFullType": "vega.api.v1.ListAssetsRequest", - "requestStreaming": false, - "responseType": "ListAssetsResponse", - "responseLongType": "ListAssetsResponse", - "responseFullType": "vega.api.v1.ListAssetsResponse", - "responseStreaming": false - }, - { - "name": "ListNetworkParameters", - "description": "Network parameters list\n\nGet a list of network parameters. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListNetworkParametersRequest", - "requestLongType": "ListNetworkParametersRequest", - "requestFullType": "vega.api.v1.ListNetworkParametersRequest", - "requestStreaming": false, - "responseType": "ListNetworkParametersResponse", - "responseLongType": "ListNetworkParametersResponse", - "responseFullType": "vega.api.v1.ListNetworkParametersResponse", - "responseStreaming": false - }, - { - "name": "ListNetworkLimits", - "description": "Network limits list\n\nGet a list of network limits. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListNetworkLimitsRequest", - "requestLongType": "ListNetworkLimitsRequest", - "requestFullType": "vega.api.v1.ListNetworkLimitsRequest", - "requestStreaming": false, - "responseType": "ListNetworkLimitsResponse", - "responseLongType": "ListNetworkLimitsResponse", - "responseFullType": "vega.api.v1.ListNetworkLimitsResponse", - "responseStreaming": false - }, - { - "name": "ListParties", - "description": "Parties list\n\nGet a list of parties. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListPartiesRequest", - "requestLongType": "ListPartiesRequest", - "requestFullType": "vega.api.v1.ListPartiesRequest", - "requestStreaming": false, - "responseType": "ListPartiesResponse", - "responseLongType": "ListPartiesResponse", - "responseFullType": "vega.api.v1.ListPartiesResponse", - "responseStreaming": false - }, - { - "name": "ListValidators", - "description": "Validators list\n\nGet a list of validators. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListValidatorsRequest", - "requestLongType": "ListValidatorsRequest", - "requestFullType": "vega.api.v1.ListValidatorsRequest", - "requestStreaming": false, - "responseType": "ListValidatorsResponse", - "responseLongType": "ListValidatorsResponse", - "responseFullType": "vega.api.v1.ListValidatorsResponse", - "responseStreaming": false - }, - { - "name": "ListMarkets", - "description": "Markets list\n\nGet a list of markets. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListMarketsRequest", - "requestLongType": "ListMarketsRequest", - "requestFullType": "vega.api.v1.ListMarketsRequest", - "requestStreaming": false, - "responseType": "ListMarketsResponse", - "responseLongType": "ListMarketsResponse", - "responseFullType": "vega.api.v1.ListMarketsResponse", - "responseStreaming": false - }, - { - "name": "ListProposals", - "description": "Proposals list\n\nGet a list of proposals. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListProposalsRequest", - "requestLongType": "ListProposalsRequest", - "requestFullType": "vega.api.v1.ListProposalsRequest", - "requestStreaming": false, - "responseType": "ListProposalsResponse", - "responseLongType": "ListProposalsResponse", - "responseFullType": "vega.api.v1.ListProposalsResponse", - "responseStreaming": false - }, - { - "name": "ListMarketsData", - "description": "Markets data list\n\nGet a list of markets' data. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListMarketsDataRequest", - "requestLongType": "ListMarketsDataRequest", - "requestFullType": "vega.api.v1.ListMarketsDataRequest", - "requestStreaming": false, - "responseType": "ListMarketsDataResponse", - "responseLongType": "ListMarketsDataResponse", - "responseFullType": "vega.api.v1.ListMarketsDataResponse", - "responseStreaming": false - }, - { - "name": "ListVotes", - "description": "Votes list\n\nGet a list of votes. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListVotesRequest", - "requestLongType": "ListVotesRequest", - "requestFullType": "vega.api.v1.ListVotesRequest", - "requestStreaming": false, - "responseType": "ListVotesResponse", - "responseLongType": "ListVotesResponse", - "responseFullType": "vega.api.v1.ListVotesResponse", - "responseStreaming": false - }, - { - "name": "ListPartiesStake", - "description": "Parties stake list\n\nGet a list of parties' stake. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListPartiesStakeRequest", - "requestLongType": "ListPartiesStakeRequest", - "requestFullType": "vega.api.v1.ListPartiesStakeRequest", - "requestStreaming": false, - "responseType": "ListPartiesStakeResponse", - "responseLongType": "ListPartiesStakeResponse", - "responseFullType": "vega.api.v1.ListPartiesStakeResponse", - "responseStreaming": false - }, - { - "name": "ListDelegations", - "description": "Delegations list\n\nGet a list of delegations. This endpoint may not be exposed by mainnet nodes.", - "requestType": "ListDelegationsRequest", - "requestLongType": "ListDelegationsRequest", - "requestFullType": "vega.api.v1.ListDelegationsRequest", - "requestStreaming": false, - "responseType": "ListDelegationsResponse", - "responseLongType": "ListDelegationsResponse", - "responseFullType": "vega.api.v1.ListDelegationsResponse", - "responseStreaming": false - } - ] - } - ] - }, - { - "name": "vega/checkpoint/v1/checkpoint.proto", - "description": "", - "package": "vega.checkpoint.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "AssetAction", - "longName": "AssetAction", - "fullName": "vega.checkpoint.v1.AssetAction", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_number", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "builtin_deposit", - "description": "", - "label": "", - "type": "BuiltinAssetDeposit", - "longType": "vega.BuiltinAssetDeposit", - "fullType": "vega.BuiltinAssetDeposit", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "erc20_deposit", - "description": "", - "label": "", - "type": "ERC20Deposit", - "longType": "vega.ERC20Deposit", - "fullType": "vega.ERC20Deposit", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_list", - "description": "", - "label": "", - "type": "ERC20AssetList", - "longType": "vega.ERC20AssetList", - "fullType": "vega.ERC20AssetList", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "erc20_asset_limits_updated", - "description": "", - "label": "", - "type": "ERC20AssetLimitsUpdated", - "longType": "vega.ERC20AssetLimitsUpdated", - "fullType": "vega.ERC20AssetLimitsUpdated", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "erc20_bridge_stopped", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "erc20_bridge_resumed", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AssetBalance", - "longName": "AssetBalance", - "fullName": "vega.checkpoint.v1.AssetBalance", - "description": "AssetBalance represents the total balance of a given asset for a party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AssetEntry", - "longName": "AssetEntry", - "fullName": "vega.checkpoint.v1.AssetEntry", - "description": "AssetEntry is a single (enabled) asset", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_details", - "description": "", - "label": "", - "type": "AssetDetails", - "longType": "vega.AssetDetails", - "fullType": "vega.AssetDetails", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Assets", - "longName": "Assets", - "fullName": "vega.checkpoint.v1.Assets", - "description": "Assets contains all the enabled assets as AssetEntries", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "assets", - "description": "", - "label": "repeated", - "type": "AssetEntry", - "longType": "AssetEntry", - "fullType": "vega.checkpoint.v1.AssetEntry", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_listing_assets", - "description": "", - "label": "repeated", - "type": "AssetEntry", - "longType": "AssetEntry", - "fullType": "vega.checkpoint.v1.AssetEntry", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Banking", - "longName": "Banking", - "fullName": "vega.checkpoint.v1.Banking", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfers_at_time", - "description": "", - "label": "repeated", - "type": "ScheduledTransferAtTime", - "longType": "ScheduledTransferAtTime", - "fullType": "vega.checkpoint.v1.ScheduledTransferAtTime", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "recurring_transfers", - "description": "", - "label": "", - "type": "RecurringTransfers", - "longType": "RecurringTransfers", - "fullType": "vega.checkpoint.v1.RecurringTransfers", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bridge_state", - "description": "", - "label": "", - "type": "BridgeState", - "longType": "BridgeState", - "fullType": "vega.checkpoint.v1.BridgeState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_actions", - "description": "", - "label": "repeated", - "type": "AssetAction", - "longType": "AssetAction", - "fullType": "vega.checkpoint.v1.AssetAction", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_seen_eth_block", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seen_refs", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "governance_transfers_at_time", - "description": "", - "label": "repeated", - "type": "ScheduledGovernanceTransferAtTime", - "longType": "ScheduledGovernanceTransferAtTime", - "fullType": "vega.checkpoint.v1.ScheduledGovernanceTransferAtTime", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "recurring_governance_transfers", - "description": "", - "label": "repeated", - "type": "GovernanceTransfer", - "longType": "GovernanceTransfer", - "fullType": "vega.checkpoint.v1.GovernanceTransfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Block", - "longName": "Block", - "fullName": "vega.checkpoint.v1.Block", - "description": "Block message contains data related to block at which the checkpoint\nwas created i.e. the block height", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BridgeState", - "longName": "BridgeState", - "fullName": "vega.checkpoint.v1.BridgeState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "active", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Checkpoint", - "longName": "Checkpoint", - "fullName": "vega.checkpoint.v1.Checkpoint", - "description": "Checkpoint aggregates the various engine snapshots", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "governance", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "assets", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "collateral", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "network_parameters", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "delegation", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "will just be an epoch event", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "banking", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validators", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staking", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "multisig_control", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_tracker", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "execution", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CheckpointState", - "longName": "CheckpointState", - "fullName": "vega.checkpoint.v1.CheckpointState", - "description": "CheckpointState is the entire checkpoint serialised. Basically it is the serialisation of the Checkpoint message + hash.", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "hash", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Collateral", - "longName": "Collateral", - "fullName": "vega.checkpoint.v1.Collateral", - "description": "Collateral contains the balances per party", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "balances", - "description": "", - "label": "repeated", - "type": "AssetBalance", - "longType": "AssetBalance", - "fullType": "vega.checkpoint.v1.AssetBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Delegate", - "longName": "Delegate", - "fullName": "vega.checkpoint.v1.Delegate", - "description": "Delegate contains all entries for a checkpoint", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "active", - "description": "", - "label": "repeated", - "type": "DelegateEntry", - "longType": "DelegateEntry", - "fullType": "vega.checkpoint.v1.DelegateEntry", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending", - "description": "", - "label": "repeated", - "type": "DelegateEntry", - "longType": "DelegateEntry", - "fullType": "vega.checkpoint.v1.DelegateEntry", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auto_delegation", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegateEntry", - "longName": "DelegateEntry", - "fullName": "vega.checkpoint.v1.DelegateEntry", - "description": "Delegated amounts for party/node\n`undelegate` and `epoch_seq` are only relevant for pending entries", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "undelegate", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ELSShare", - "longName": "ELSShare", - "fullName": "vega.checkpoint.v1.ELSShare", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "Party ID of the liquidity provider.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "share", - "description": "The equity-like share of the liquidity provider, representing their share in the total provided liquidity expressed as a value between 0 and 1.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "supplied_stake", - "description": "Amount committed. This is the total commitment made. It does not necessarily match the LP balance.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "virtual_stake", - "description": "LP stake, weighted according to the time the stake was committed and market growth.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avg", - "description": "Average entry valuation. As time increases the weight of stake, this is the overall valuation of the current stake.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochPartyFees", - "longName": "EpochPartyFees", - "fullName": "vega.checkpoint.v1.EpochPartyFees", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_fees", - "description": "", - "label": "repeated", - "type": "PartyFeesHistory", - "longType": "PartyFeesHistory", - "fullType": "vega.checkpoint.v1.PartyFeesHistory", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochReturnsData", - "longName": "EpochReturnsData", - "fullName": "vega.checkpoint.v1.EpochReturnsData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "returns", - "description": "", - "label": "repeated", - "type": "ReturnsData", - "longType": "ReturnsData", - "fullType": "vega.checkpoint.v1.ReturnsData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochTimeWeightPositionData", - "longName": "EpochTimeWeightPositionData", - "fullName": "vega.checkpoint.v1.EpochTimeWeightPositionData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_time_weighted_positions", - "description": "", - "label": "repeated", - "type": "PartyTimeWeightedPosition", - "longType": "PartyTimeWeightedPosition", - "fullType": "vega.checkpoint.v1.PartyTimeWeightedPosition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochTimeWeightedNotionalData", - "longName": "EpochTimeWeightedNotionalData", - "fullName": "vega.checkpoint.v1.EpochTimeWeightedNotionalData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_time_weighted_notionals", - "description": "", - "label": "repeated", - "type": "PartyTimeWeightedNotional", - "longType": "PartyTimeWeightedNotional", - "fullType": "vega.checkpoint.v1.PartyTimeWeightedNotional", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ExecutionState", - "longName": "ExecutionState", - "fullName": "vega.checkpoint.v1.ExecutionState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "data", - "description": "Market data that should be preserved, like equity-like shares, and settled markets that have pending successor markets.", - "label": "repeated", - "type": "MarketState", - "longType": "MarketState", - "fullType": "vega.checkpoint.v1.MarketState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceTransfer", - "longName": "GovernanceTransfer", - "fullName": "vega.checkpoint.v1.GovernanceTransfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "", - "label": "", - "type": "Status", - "longType": "vega.events.v1.Transfer.Status", - "fullType": "vega.events.v1.Transfer.Status", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "config", - "description": "", - "label": "", - "type": "NewTransferConfiguration", - "longType": "vega.NewTransferConfiguration", - "fullType": "vega.NewTransferConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketActivityTracker", - "longName": "MarketActivityTracker", - "fullName": "vega.checkpoint.v1.MarketActivityTracker", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fees_received", - "description": "", - "label": "repeated", - "type": "PartyFees", - "longType": "PartyFees", - "fullType": "vega.checkpoint.v1.PartyFees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fees_paid", - "description": "", - "label": "repeated", - "type": "PartyFees", - "longType": "PartyFees", - "fullType": "vega.checkpoint.v1.PartyFees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lp_fees", - "description": "", - "label": "repeated", - "type": "PartyFees", - "longType": "PartyFees", - "fullType": "vega.checkpoint.v1.PartyFees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposer", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bonus_paid", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value_traded", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ready_to_delete", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_weighted_position", - "description": "", - "label": "repeated", - "type": "TWPositionData", - "longType": "TWPositionData", - "fullType": "vega.checkpoint.v1.TWPositionData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_weighted_notional", - "description": "", - "label": "repeated", - "type": "TWNotionalData", - "longType": "TWNotionalData", - "fullType": "vega.checkpoint.v1.TWNotionalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "returns_data", - "description": "", - "label": "repeated", - "type": "ReturnsData", - "longType": "ReturnsData", - "fullType": "vega.checkpoint.v1.ReturnsData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fees_received_history", - "description": "", - "label": "repeated", - "type": "EpochPartyFees", - "longType": "EpochPartyFees", - "fullType": "vega.checkpoint.v1.EpochPartyFees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "maker_fees_paid_history", - "description": "", - "label": "repeated", - "type": "EpochPartyFees", - "longType": "EpochPartyFees", - "fullType": "vega.checkpoint.v1.EpochPartyFees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lp_fees_history", - "description": "", - "label": "repeated", - "type": "EpochPartyFees", - "longType": "EpochPartyFees", - "fullType": "vega.checkpoint.v1.EpochPartyFees", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_weighted_position_data_history", - "description": "", - "label": "repeated", - "type": "EpochTimeWeightPositionData", - "longType": "EpochTimeWeightPositionData", - "fullType": "vega.checkpoint.v1.EpochTimeWeightPositionData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time_weighted_notional_data_history", - "description": "", - "label": "repeated", - "type": "EpochTimeWeightedNotionalData", - "longType": "EpochTimeWeightedNotionalData", - "fullType": "vega.checkpoint.v1.EpochTimeWeightedNotionalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "returns_data_history", - "description": "", - "label": "repeated", - "type": "EpochReturnsData", - "longType": "EpochReturnsData", - "fullType": "vega.checkpoint.v1.EpochReturnsData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketState", - "longName": "MarketState", - "fullName": "vega.checkpoint.v1.MarketState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "Unique ID for the market", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "shares", - "description": "The current equity-like share data for a market.", - "label": "repeated", - "type": "ELSShare", - "longType": "ELSShare", - "fullType": "vega.checkpoint.v1.ELSShare", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "insurance_balance", - "description": "Current balance of the insurance pool.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_trade_value", - "description": "Total trade value which last determined the growth rate of the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_trade_volume", - "description": "Total trade volume which last determined the growth rate of the market.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "succession_window", - "description": "Succession window in nanoseconds: the timestamp when this market cannot be succeeded anymore.", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market", - "description": "The underlying market should be present in case the successor market is enacted during the succession window.\nThis field can be omitted if the market is not yet settled.", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketTracker", - "longName": "MarketTracker", - "fullName": "vega.checkpoint.v1.MarketTracker", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_activity", - "description": "", - "label": "repeated", - "type": "MarketActivityTracker", - "longType": "MarketActivityTracker", - "fullType": "vega.checkpoint.v1.MarketActivityTracker", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "taker_notional_volume", - "description": "", - "label": "repeated", - "type": "TakerNotionalVolume", - "longType": "TakerNotionalVolume", - "fullType": "vega.checkpoint.v1.TakerNotionalVolume", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MultisigControl", - "longName": "MultisigControl", - "fullName": "vega.checkpoint.v1.MultisigControl", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signers", - "description": "", - "label": "repeated", - "type": "ERC20MultiSigSignerEvent", - "longType": "vega.events.v1.ERC20MultiSigSignerEvent", - "fullType": "vega.events.v1.ERC20MultiSigSignerEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "threshold_set", - "description": "", - "label": "", - "type": "ERC20MultiSigThresholdSetEvent", - "longType": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "fullType": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_block_seen", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NetParams", - "longName": "NetParams", - "fullName": "vega.checkpoint.v1.NetParams", - "description": "NetParams contains all network parameters", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "params", - "description": "", - "label": "repeated", - "type": "NetworkParameter", - "longType": "vega.NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyAmount", - "longName": "PartyAmount", - "fullName": "vega.checkpoint.v1.PartyAmount", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyFees", - "longName": "PartyFees", - "fullName": "vega.checkpoint.v1.PartyFees", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyFeesHistory", - "longName": "PartyFeesHistory", - "fullName": "vega.checkpoint.v1.PartyFeesHistory", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyTimeWeightedNotional", - "longName": "PartyTimeWeightedNotional", - "fullName": "vega.checkpoint.v1.PartyTimeWeightedNotional", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tw_notional", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyTimeWeightedPosition", - "longName": "PartyTimeWeightedPosition", - "fullName": "vega.checkpoint.v1.PartyTimeWeightedPosition", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tw_position", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingEthereumKeyRotation", - "longName": "PendingEthereumKeyRotation", - "fullName": "vega.checkpoint.v1.PendingEthereumKeyRotation", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "relative_target_block_height", - "description": "Relative target block height is: target block height - current block height.\nUseful for cross blockchain compatibility.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingKeyRotation", - "longName": "PendingKeyRotation", - "fullName": "vega.checkpoint.v1.PendingKeyRotation", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "relative_target_block_height", - "description": "Relative target block height is: target block height - current block height.\nUseful for cross blockchain compatibility.", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_pub_key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_pub_key_index", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingRewardPayout", - "longName": "PendingRewardPayout", - "fullName": "vega.checkpoint.v1.PendingRewardPayout", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_account", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_amount", - "description": "", - "label": "repeated", - "type": "PartyAmount", - "longType": "PartyAmount", - "fullType": "vega.checkpoint.v1.PartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_reward", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Proposals", - "longName": "Proposals", - "fullName": "vega.checkpoint.v1.Proposals", - "description": "Proposals will contain all accepted proposals", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposals", - "description": "", - "label": "repeated", - "type": "Proposal", - "longType": "vega.Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RecurringTransfers", - "longName": "RecurringTransfers", - "fullName": "vega.checkpoint.v1.RecurringTransfers", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "recurring_transfers", - "description": "", - "label": "repeated", - "type": "Transfer", - "longType": "vega.events.v1.Transfer", - "fullType": "vega.events.v1.Transfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReturnsData", - "longName": "ReturnsData", - "fullName": "vega.checkpoint.v1.ReturnsData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "return", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardPayout", - "longName": "RewardPayout", - "fullName": "vega.checkpoint.v1.RewardPayout", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "payout_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards_payout", - "description": "", - "label": "repeated", - "type": "PendingRewardPayout", - "longType": "PendingRewardPayout", - "fullType": "vega.checkpoint.v1.PendingRewardPayout", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Rewards", - "longName": "Rewards", - "fullName": "vega.checkpoint.v1.Rewards", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "rewards", - "description": "", - "label": "repeated", - "type": "RewardPayout", - "longType": "RewardPayout", - "fullType": "vega.checkpoint.v1.RewardPayout", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ScheduledGovernanceTransferAtTime", - "longName": "ScheduledGovernanceTransferAtTime", - "fullName": "vega.checkpoint.v1.ScheduledGovernanceTransferAtTime", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deliver_on", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfers", - "description": "", - "label": "repeated", - "type": "GovernanceTransfer", - "longType": "GovernanceTransfer", - "fullType": "vega.checkpoint.v1.GovernanceTransfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ScheduledTransfer", - "longName": "ScheduledTransfer", - "fullName": "vega.checkpoint.v1.ScheduledTransfer", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfer", - "description": "", - "label": "", - "type": "Transfer", - "longType": "vega.Transfer", - "fullType": "vega.Transfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "account_type", - "description": "", - "label": "", - "type": "AccountType", - "longType": "vega.AccountType", - "fullType": "vega.AccountType", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reference", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "oneoff_transfer", - "description": "", - "label": "", - "type": "Transfer", - "longType": "vega.events.v1.Transfer", - "fullType": "vega.events.v1.Transfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ScheduledTransferAtTime", - "longName": "ScheduledTransferAtTime", - "fullName": "vega.checkpoint.v1.ScheduledTransferAtTime", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deliver_on", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transfers", - "description": "", - "label": "repeated", - "type": "ScheduledTransfer", - "longType": "ScheduledTransfer", - "fullType": "vega.checkpoint.v1.ScheduledTransfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Staking", - "longName": "Staking", - "fullName": "vega.checkpoint.v1.Staking", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accepted", - "description": "", - "label": "repeated", - "type": "StakeLinking", - "longType": "vega.events.v1.StakeLinking", - "fullType": "vega.events.v1.StakeLinking", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_block_seen", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TWNotionalData", - "longName": "TWNotionalData", - "fullName": "vega.checkpoint.v1.TWNotionalData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tw_notional", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TWPositionData", - "longName": "TWPositionData", - "fullName": "vega.checkpoint.v1.TWPositionData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "position", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tw_position", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TakerNotionalVolume", - "longName": "TakerNotionalVolume", - "fullName": "vega.checkpoint.v1.TakerNotionalVolume", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ValidatorState", - "longName": "ValidatorState", - "fullName": "vega.checkpoint.v1.ValidatorState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "validator_update", - "description": "", - "label": "", - "type": "ValidatorUpdate", - "longType": "vega.events.v1.ValidatorUpdate", - "fullType": "vega.events.v1.ValidatorUpdate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "eth_events_forwarded", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_power", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ranking_score", - "description": "", - "label": "", - "type": "RankingScore", - "longType": "vega.RankingScore", - "fullType": "vega.RankingScore", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "heartbeat_block_index", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "heartbeat_block_sigs", - "description": "", - "label": "repeated", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Validators", - "longName": "Validators", - "fullName": "vega.checkpoint.v1.Validators", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "validator_state", - "description": "", - "label": "repeated", - "type": "ValidatorState", - "longType": "ValidatorState", - "fullType": "vega.checkpoint.v1.ValidatorState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_key_rotations", - "description": "", - "label": "repeated", - "type": "PendingKeyRotation", - "longType": "PendingKeyRotation", - "fullType": "vega.checkpoint.v1.PendingKeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_ethereum_key_rotations", - "description": "", - "label": "repeated", - "type": "PendingEthereumKeyRotation", - "longType": "PendingEthereumKeyRotation", - "fullType": "vega.checkpoint.v1.PendingEthereumKeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/snapshot/v1/snapshot.proto", - "description": "", - "package": "vega.snapshot.v1", - "hasEnums": true, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [ - { - "name": "Format", - "longName": "Format", - "fullName": "vega.snapshot.v1.Format", - "description": "", - "values": [ - { - "name": "FORMAT_UNSPECIFIED", - "number": "0", - "description": "Default value, always invalid" - }, - { - "name": "FORMAT_PROTO", - "number": "1", - "description": "Standard proto encoding" - }, - { - "name": "FORMAT_PROTO_COMPRESSED", - "number": "2", - "description": "Compressed proto, might come in handy" - }, - { - "name": "FORMAT_JSON", - "number": "3", - "description": "Simple JSON serialisation, probably not going to be used" - } - ] - } - ], - "extensions": [], - "messages": [ - { - "name": "AcceptedProtocolUpgradeProposal", - "longName": "AcceptedProtocolUpgradeProposal", - "fullName": "vega.snapshot.v1.AcceptedProtocolUpgradeProposal", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "upgrade_block_height", - "description": "Block height at which to perform the upgrade", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_release_tag", - "description": "Release tag for the vega binary", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ActiveAssets", - "longName": "ActiveAssets", - "fullName": "vega.snapshot.v1.ActiveAssets", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "assets", - "description": "", - "label": "repeated", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ActivityStreak", - "longName": "ActivityStreak", - "fullName": "vega.snapshot.v1.ActivityStreak", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties_activity_streak", - "description": "", - "label": "repeated", - "type": "PartyActivityStreak", - "longType": "PartyActivityStreak", - "fullType": "vega.snapshot.v1.PartyActivityStreak", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AppState", - "longName": "AppState", - "fullName": "vega.snapshot.v1.AppState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "protocol_version", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "protocol_upgrade", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AssetLocked", - "longName": "AssetLocked", - "fullName": "vega.snapshot.v1.AssetLocked", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_balances", - "description": "", - "label": "repeated", - "type": "EpochBalance", - "longType": "EpochBalance", - "fullType": "vega.snapshot.v1.EpochBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AuctionIntervals", - "longName": "AuctionIntervals", - "fullName": "vega.snapshot.v1.AuctionIntervals", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "t", - "description": "", - "label": "repeated", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_start", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "AuctionState", - "longName": "AuctionState", - "fullName": "vega.snapshot.v1.AuctionState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "mode", - "description": "", - "label": "", - "type": "TradingMode", - "longType": "vega.Market.TradingMode", - "fullType": "vega.Market.TradingMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "default_mode", - "description": "", - "label": "", - "type": "TradingMode", - "longType": "vega.Market.TradingMode", - "fullType": "vega.Market.TradingMode", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trigger", - "description": "", - "label": "", - "type": "AuctionTrigger", - "longType": "vega.AuctionTrigger", - "fullType": "vega.AuctionTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "begin", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end", - "description": "", - "label": "", - "type": "AuctionDuration", - "longType": "vega.AuctionDuration", - "fullType": "vega.AuctionDuration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stop", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "extension", - "description": "", - "label": "", - "type": "AuctionTrigger", - "longType": "vega.AuctionTrigger", - "fullType": "vega.AuctionTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "extension_event_sent", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingAssetActions", - "longName": "BankingAssetActions", - "fullName": "vega.snapshot.v1.BankingAssetActions", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset_action", - "description": "", - "label": "repeated", - "type": "AssetAction", - "longType": "vega.checkpoint.v1.AssetAction", - "fullType": "vega.checkpoint.v1.AssetAction", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingBridgeState", - "longName": "BankingBridgeState", - "fullName": "vega.snapshot.v1.BankingBridgeState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "bridge_state", - "description": "", - "label": "", - "type": "BridgeState", - "longType": "vega.checkpoint.v1.BridgeState", - "fullType": "vega.checkpoint.v1.BridgeState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingDeposits", - "longName": "BankingDeposits", - "fullName": "vega.snapshot.v1.BankingDeposits", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "deposit", - "description": "", - "label": "repeated", - "type": "Deposit", - "longType": "Deposit", - "fullType": "vega.snapshot.v1.Deposit", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingRecurringGovernanceTransfers", - "longName": "BankingRecurringGovernanceTransfers", - "fullName": "vega.snapshot.v1.BankingRecurringGovernanceTransfers", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "recurring_transfers", - "description": "", - "label": "repeated", - "type": "GovernanceTransfer", - "longType": "vega.checkpoint.v1.GovernanceTransfer", - "fullType": "vega.checkpoint.v1.GovernanceTransfer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingRecurringTransfers", - "longName": "BankingRecurringTransfers", - "fullName": "vega.snapshot.v1.BankingRecurringTransfers", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "recurring_transfers", - "description": "", - "label": "", - "type": "RecurringTransfers", - "longType": "vega.checkpoint.v1.RecurringTransfers", - "fullType": "vega.checkpoint.v1.RecurringTransfers", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingScheduledGovernanceTransfers", - "longName": "BankingScheduledGovernanceTransfers", - "fullName": "vega.snapshot.v1.BankingScheduledGovernanceTransfers", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfers_at_time", - "description": "", - "label": "repeated", - "type": "ScheduledGovernanceTransferAtTime", - "longType": "vega.checkpoint.v1.ScheduledGovernanceTransferAtTime", - "fullType": "vega.checkpoint.v1.ScheduledGovernanceTransferAtTime", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingScheduledTransfers", - "longName": "BankingScheduledTransfers", - "fullName": "vega.snapshot.v1.BankingScheduledTransfers", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "transfers_at_time", - "description": "", - "label": "repeated", - "type": "ScheduledTransferAtTime", - "longType": "vega.checkpoint.v1.ScheduledTransferAtTime", - "fullType": "vega.checkpoint.v1.ScheduledTransferAtTime", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingSeen", - "longName": "BankingSeen", - "fullName": "vega.snapshot.v1.BankingSeen", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "refs", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_seen_eth_block", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingTransferFeeDiscounts", - "longName": "BankingTransferFeeDiscounts", - "fullName": "vega.snapshot.v1.BankingTransferFeeDiscounts", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_asset_discount", - "description": "", - "label": "repeated", - "type": "PartyAssetAmount", - "longType": "PartyAssetAmount", - "fullType": "vega.snapshot.v1.PartyAssetAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BankingWithdrawals", - "longName": "BankingWithdrawals", - "fullName": "vega.snapshot.v1.BankingWithdrawals", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "withdrawals", - "description": "", - "label": "repeated", - "type": "Withdrawal", - "longType": "Withdrawal", - "fullType": "vega.snapshot.v1.Withdrawal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BannedParty", - "longName": "BannedParty", - "fullName": "vega.snapshot.v1.BannedParty", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "until", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BatchProposalData", - "longName": "BatchProposalData", - "fullName": "vega.snapshot.v1.BatchProposalData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "batch_proposal", - "description": "", - "label": "", - "type": "ProposalData", - "longType": "ProposalData", - "fullType": "vega.snapshot.v1.ProposalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposals", - "description": "", - "label": "repeated", - "type": "Proposal", - "longType": "vega.Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "BlockRejectStats", - "longName": "BlockRejectStats", - "fullName": "vega.snapshot.v1.BlockRejectStats", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "rejected", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ChainIdEthOracles", - "longName": "ChainIdEthOracles", - "fullName": "vega.snapshot.v1.ChainIdEthOracles", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "source_chain_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_block", - "description": "", - "label": "", - "type": "EthOracleVerifierLastBlock", - "longType": "EthOracleVerifierLastBlock", - "fullType": "vega.snapshot.v1.EthOracleVerifierLastBlock", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "call_results", - "description": "", - "label": "", - "type": "EthContractCallResults", - "longType": "EthContractCallResults", - "fullType": "vega.snapshot.v1.EthContractCallResults", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Checkpoint", - "longName": "Checkpoint", - "fullName": "vega.snapshot.v1.Checkpoint", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "next_cp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Chunk", - "longName": "Chunk", - "fullName": "vega.snapshot.v1.Chunk", - "description": "Chunk is simply an as-is chunk belonging to a snapshot\nnot sure how usable this type would be", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "data", - "description": "", - "label": "repeated", - "type": "Payload", - "longType": "Payload", - "fullType": "vega.snapshot.v1.Payload", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nr", - "description": "in case of multi-part data, this is chunk nr...", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "of", - "description": "...of a total of N chunks", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CollateralAccounts", - "longName": "CollateralAccounts", - "fullName": "vega.snapshot.v1.CollateralAccounts", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accounts", - "description": "", - "label": "repeated", - "type": "Account", - "longType": "vega.Account", - "fullType": "vega.Account", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_balance_snapshot", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CollateralAssets", - "longName": "CollateralAssets", - "fullName": "vega.snapshot.v1.CollateralAssets", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "assets", - "description": "", - "label": "repeated", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CompositePriceCalculator", - "longName": "CompositePriceCalculator", - "fullName": "vega.snapshot.v1.CompositePriceCalculator", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "composite_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_configuration", - "description": "", - "label": "", - "type": "CompositePriceConfiguration", - "longType": "vega.CompositePriceConfiguration", - "fullType": "vega.CompositePriceConfiguration", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trades", - "description": "", - "label": "repeated", - "type": "Trade", - "longType": "vega.Trade", - "fullType": "vega.Trade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_sources", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_source_last_update", - "description": "", - "label": "repeated", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "book_price_at_time", - "description": "", - "label": "repeated", - "type": "TimePrice", - "longType": "TimePrice", - "fullType": "vega.snapshot.v1.TimePrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "CurrentPrice", - "longName": "CurrentPrice", - "fullName": "vega.snapshot.v1.CurrentPrice", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DataPoint", - "longName": "DataPoint", - "fullName": "vega.snapshot.v1.DataPoint", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DecimalMap", - "longName": "DecimalMap", - "fullName": "vega.snapshot.v1.DecimalMap", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "val", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegationActive", - "longName": "DelegationActive", - "fullName": "vega.snapshot.v1.DelegationActive", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "delegations", - "description": "", - "label": "repeated", - "type": "Delegation", - "longType": "vega.Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegationAuto", - "longName": "DelegationAuto", - "fullName": "vega.snapshot.v1.DelegationAuto", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegationLastReconciliationTime", - "longName": "DelegationLastReconciliationTime", - "fullName": "vega.snapshot.v1.DelegationLastReconciliationTime", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "last_reconciliation_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "DelegationPending", - "longName": "DelegationPending", - "fullName": "vega.snapshot.v1.DelegationPending", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "delegations", - "description": "", - "label": "repeated", - "type": "Delegation", - "longType": "vega.Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "undelegation", - "description": "", - "label": "repeated", - "type": "Delegation", - "longType": "vega.Delegation", - "fullType": "vega.Delegation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Deposit", - "longName": "Deposit", - "fullName": "vega.snapshot.v1.Deposit", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "deposit", - "description": "", - "label": "", - "type": "Deposit", - "longType": "vega.Deposit", - "fullType": "vega.Deposit", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigTopologyPending", - "longName": "ERC20MultiSigTopologyPending", - "fullName": "vega.snapshot.v1.ERC20MultiSigTopologyPending", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "pending_signers", - "description": "", - "label": "repeated", - "type": "ERC20MultiSigSignerEvent", - "longType": "vega.events.v1.ERC20MultiSigSignerEvent", - "fullType": "vega.events.v1.ERC20MultiSigSignerEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_threshold_set", - "description": "", - "label": "repeated", - "type": "ERC20MultiSigThresholdSetEvent", - "longType": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "fullType": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "witnessed_signers", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "witnessed_threshold_sets", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ERC20MultiSigTopologyVerified", - "longName": "ERC20MultiSigTopologyVerified", - "fullName": "vega.snapshot.v1.ERC20MultiSigTopologyVerified", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signers", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "events_per_address", - "description": "", - "label": "repeated", - "type": "SignerEventsPerAddress", - "longType": "SignerEventsPerAddress", - "fullType": "vega.snapshot.v1.SignerEventsPerAddress", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "threshold", - "description": "", - "label": "", - "type": "ERC20MultiSigThresholdSetEvent", - "longType": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "fullType": "vega.events.v1.ERC20MultiSigThresholdSetEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seen_events", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochBalance", - "longName": "EpochBalance", - "fullName": "vega.snapshot.v1.EpochBalance", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "epoch", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochPartyVolumes", - "longName": "EpochPartyVolumes", - "fullName": "vega.snapshot.v1.EpochPartyVolumes", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_volume", - "description": "", - "label": "repeated", - "type": "PartyVolume", - "longType": "PartyVolume", - "fullType": "vega.snapshot.v1.PartyVolume", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EpochState", - "longName": "EpochState", - "fullName": "vega.snapshot.v1.EpochState", - "description": "EpochState details", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "seq", - "description": "Sequence number that increases by one each epoch", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "start_time", - "description": "Time at which this epoch started", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expire_time", - "description": "Time at which this epoch should end", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ready_to_start_new_epoch", - "description": "Ready to start a new epoch", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ready_to_end_epoch", - "description": "Ready to end epoch", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EquityShare", - "longName": "EquityShare", - "fullName": "vega.snapshot.v1.EquityShare", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "mvp", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "opening_auction_ended", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "lps", - "description": "", - "label": "repeated", - "type": "EquityShareLP", - "longType": "EquityShareLP", - "fullType": "vega.snapshot.v1.EquityShareLP", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "r", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "p_mvp", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EquityShareLP", - "longName": "EquityShareLP", - "fullName": "vega.snapshot.v1.EquityShareLP", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "share", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avg", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vshare", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthContractCallResult", - "longName": "EthContractCallResult", - "fullName": "vega.snapshot.v1.EthContractCallResult", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spec_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "result", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "error", - "description": "", - "label": "optional", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": true, - "oneofdecl": "_error", - "defaultValue": "" - } - ] - }, - { - "name": "EthContractCallResults", - "longName": "EthContractCallResults", - "fullName": "vega.snapshot.v1.EthContractCallResults", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "pending_contract_call_result", - "description": "", - "label": "repeated", - "type": "EthContractCallResult", - "longType": "EthContractCallResult", - "fullType": "vega.snapshot.v1.EthContractCallResult", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EthOracleVerifierLastBlock", - "longName": "EthOracleVerifierLastBlock", - "fullName": "vega.snapshot.v1.EthOracleVerifierLastBlock", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "EventForwarder", - "longName": "EventForwarder", - "fullName": "vega.snapshot.v1.EventForwarder", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "acked_events", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ExecutionMarkets", - "longName": "ExecutionMarkets", - "fullName": "vega.snapshot.v1.ExecutionMarkets", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "markets", - "description": "", - "label": "repeated", - "type": "Market", - "longType": "Market", - "fullType": "vega.snapshot.v1.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spot_markets", - "description": "", - "label": "repeated", - "type": "SpotMarket", - "longType": "SpotMarket", - "fullType": "vega.snapshot.v1.SpotMarket", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "settled_markets", - "description": "", - "label": "repeated", - "type": "MarketState", - "longType": "vega.checkpoint.v1.MarketState", - "fullType": "vega.checkpoint.v1.MarketState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "successors", - "description": "", - "label": "repeated", - "type": "Successors", - "longType": "Successors", - "fullType": "vega.snapshot.v1.Successors", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_ids", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sla_network_params", - "description": "", - "label": "", - "type": "SLANetworkParams", - "longType": "SLANetworkParams", - "fullType": "vega.snapshot.v1.SLANetworkParams", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FactorByReferee", - "longName": "FactorByReferee", - "fullName": "vega.snapshot.v1.FactorByReferee", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount_factor", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "taker_volume", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FeeSplitter", - "longName": "FeeSplitter", - "fullName": "vega.snapshot.v1.FeeSplitter", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "time_window_start", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trade_value", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avg", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "window", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FloatingPointConsensus", - "longName": "FloatingPointConsensus", - "fullName": "vega.snapshot.v1.FloatingPointConsensus", - "description": "Snapshot payload for floating point consensus", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "next_time_trigger", - "description": "", - "label": "repeated", - "type": "NextTimeTrigger", - "longType": "NextTimeTrigger", - "fullType": "vega.snapshot.v1.NextTimeTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state_variables", - "description": "", - "label": "repeated", - "type": "StateVarInternalState", - "longType": "StateVarInternalState", - "fullType": "vega.snapshot.v1.StateVarInternalState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "FloatingPointValidatorResult", - "longName": "FloatingPointValidatorResult", - "fullName": "vega.snapshot.v1.FloatingPointValidatorResult", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bundle", - "description": "", - "label": "repeated", - "type": "KeyValueBundle", - "longType": "vega.KeyValueBundle", - "fullType": "vega.KeyValueBundle", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceActive", - "longName": "GovernanceActive", - "fullName": "vega.snapshot.v1.GovernanceActive", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposals", - "description": "", - "label": "repeated", - "type": "ProposalData", - "longType": "ProposalData", - "fullType": "vega.snapshot.v1.ProposalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceBatchActive", - "longName": "GovernanceBatchActive", - "fullName": "vega.snapshot.v1.GovernanceBatchActive", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "batch_proposals", - "description": "", - "label": "repeated", - "type": "BatchProposalData", - "longType": "BatchProposalData", - "fullType": "vega.snapshot.v1.BatchProposalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceEnacted", - "longName": "GovernanceEnacted", - "fullName": "vega.snapshot.v1.GovernanceEnacted", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposals", - "description": "", - "label": "repeated", - "type": "ProposalData", - "longType": "ProposalData", - "fullType": "vega.snapshot.v1.ProposalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "GovernanceNode", - "longName": "GovernanceNode", - "fullName": "vega.snapshot.v1.GovernanceNode", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposals", - "description": "", - "label": "repeated", - "type": "Proposal", - "longType": "vega.Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposal_data", - "description": "includes votes", - "label": "repeated", - "type": "ProposalData", - "longType": "ProposalData", - "fullType": "vega.snapshot.v1.ProposalData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "HeartbeatTracker", - "longName": "HeartbeatTracker", - "fullName": "vega.snapshot.v1.HeartbeatTracker", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "expected_next_hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expected_next_hash_since", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_index", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_sigs", - "description": "", - "label": "repeated", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "HoldingAccountTracker", - "longName": "HoldingAccountTracker", - "fullName": "vega.snapshot.v1.HoldingAccountTracker", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_holding", - "description": "", - "label": "repeated", - "type": "OrderHoldingQuantities", - "longType": "OrderHoldingQuantities", - "fullType": "vega.snapshot.v1.OrderHoldingQuantities", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "InVesting", - "longName": "InVesting", - "fullName": "vega.snapshot.v1.InVesting", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "IssuedERC20MultisigControlSignature", - "longName": "IssuedERC20MultisigControlSignature", - "fullName": "vega.snapshot.v1.IssuedERC20MultisigControlSignature", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "resource_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "L2EthOracles", - "longName": "L2EthOracles", - "fullName": "vega.snapshot.v1.L2EthOracles", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "chain_id_eth_oracles", - "description": "", - "label": "repeated", - "type": "ChainIdEthOracles", - "longType": "ChainIdEthOracles", - "fullType": "vega.snapshot.v1.ChainIdEthOracles", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LastSettledPosition", - "longName": "LastSettledPosition", - "fullName": "vega.snapshot.v1.LastSettledPosition", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "settled_position", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LimitState", - "longName": "LimitState", - "fullName": "vega.snapshot.v1.LimitState", - "description": "LimitState details", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_count", - "description": "Number of blocks into the bootstrapping phase", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "can_propose_market", - "description": "Whether or not the limit on market proposals has been lifted", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "can_propose_asset", - "description": "Whether or not the limit on asset proposals has been lifted", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "genesis_loaded", - "description": "Whether or not the genesis state is loaded", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_market_enabled", - "description": "Fields derived from the genesis state", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_asset_enabled", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_market_enabled_from", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_asset_enabled_from", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_spot_market_enabled", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propose_perps_market_enabled", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Liquidation", - "longName": "Liquidation", - "fullName": "vega.snapshot.v1.Liquidation", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "network_pos", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_step", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "config", - "description": "", - "label": "", - "type": "LiquidationStrategy", - "longType": "vega.LiquidationStrategy", - "fullType": "vega.LiquidationStrategy", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityOffsetProbabilityPair", - "longName": "LiquidityOffsetProbabilityPair", - "fullName": "vega.snapshot.v1.LiquidityOffsetProbabilityPair", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "offset", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "probability", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityParameters", - "longName": "LiquidityParameters", - "fullName": "vega.snapshot.v1.LiquidityParameters", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "max_fee", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_shape_size", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake_to_obligation_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityPartiesLiquidityOrders", - "longName": "LiquidityPartiesLiquidityOrders", - "fullName": "vega.snapshot.v1.LiquidityPartiesLiquidityOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_orders", - "description": "", - "label": "repeated", - "type": "PartyOrders", - "longType": "PartyOrders", - "fullType": "vega.snapshot.v1.PartyOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID these liquidity orders apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityPartiesOrders", - "longName": "LiquidityPartiesOrders", - "fullName": "vega.snapshot.v1.LiquidityPartiesOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_orders", - "description": "", - "label": "repeated", - "type": "PartyOrders", - "longType": "PartyOrders", - "fullType": "vega.snapshot.v1.PartyOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID these orders apply to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityPendingProvisions", - "longName": "LiquidityPendingProvisions", - "fullName": "vega.snapshot.v1.LiquidityPendingProvisions", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "pending_provisions", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID these liquidity provisions apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityProvisions", - "longName": "LiquidityProvisions", - "fullName": "vega.snapshot.v1.LiquidityProvisions", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "liquidity_provisions", - "description": "", - "label": "repeated", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "Market ID these provisions apply to.", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityScore", - "longName": "LiquidityScore", - "fullName": "vega.snapshot.v1.LiquidityScore", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "score", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityScores", - "longName": "LiquidityScores", - "fullName": "vega.snapshot.v1.LiquidityScores", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "running_average_counter", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "scores", - "description": "", - "label": "repeated", - "type": "LiquidityScore", - "longType": "LiquidityScore", - "fullType": "vega.snapshot.v1.LiquidityScore", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquiditySupplied", - "longName": "LiquiditySupplied", - "fullName": "vega.snapshot.v1.LiquiditySupplied", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "consensus_reached", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bid_cache", - "description": "", - "label": "repeated", - "type": "LiquidityOffsetProbabilityPair", - "longType": "LiquidityOffsetProbabilityPair", - "fullType": "vega.snapshot.v1.LiquidityOffsetProbabilityPair", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ask_cache", - "description": "", - "label": "repeated", - "type": "LiquidityOffsetProbabilityPair", - "longType": "LiquidityOffsetProbabilityPair", - "fullType": "vega.snapshot.v1.LiquidityOffsetProbabilityPair", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityTarget", - "longName": "LiquidityTarget", - "fullName": "vega.snapshot.v1.LiquidityTarget", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "scheduled_truncate", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_open_interests", - "description": "", - "label": "repeated", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "previous_open_interests", - "description": "", - "label": "repeated", - "type": "TimestampedOpenInterest", - "longType": "TimestampedOpenInterest", - "fullType": "vega.snapshot.v1.TimestampedOpenInterest", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_open_interests", - "description": "", - "label": "", - "type": "TimestampedOpenInterest", - "longType": "TimestampedOpenInterest", - "fullType": "vega.snapshot.v1.TimestampedOpenInterest", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2PaidFeesStats", - "longName": "LiquidityV2PaidFeesStats", - "fullName": "vega.snapshot.v1.LiquidityV2PaidFeesStats", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stats", - "description": "", - "label": "", - "type": "PaidLiquidityFeesStats", - "longType": "vega.events.v1.PaidLiquidityFeesStats", - "fullType": "vega.events.v1.PaidLiquidityFeesStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2Parameters", - "longName": "LiquidityV2Parameters", - "fullName": "vega.snapshot.v1.LiquidityV2Parameters", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_sla_parameters", - "description": "market specific SLA parameters, will be different than the ones in the market\nsnapshot since they apply at the end of an epoch", - "label": "", - "type": "LiquiditySLAParameters", - "longType": "vega.LiquiditySLAParameters", - "fullType": "vega.LiquiditySLAParameters", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake_to_volume", - "description": "network wide SLA parameters, will be different than network paramters in the\nsnapshot since they apply at the end of an epoch", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bond_penalty_slope", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bond_penalty_max", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2PendingProvisions", - "longName": "LiquidityV2PendingProvisions", - "fullName": "vega.snapshot.v1.LiquidityV2PendingProvisions", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_liquidity_provisions", - "description": "", - "label": "repeated", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2PerformancePerParty", - "longName": "LiquidityV2PerformancePerParty", - "fullName": "vega.snapshot.v1.LiquidityV2PerformancePerParty", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "elapsed_time_meeting_sla_during_epoch", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "commitment_start_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "registered_penalties_per_epoch", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "position_in_penalties_per_epoch", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_epoch_fraction_of_time_on_book", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_epoch_fee_penalty", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_epoch_bond_penalty", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "required_liquidity", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional_volume_buys", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "notional_volume_sells", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2Performances", - "longName": "LiquidityV2Performances", - "fullName": "vega.snapshot.v1.LiquidityV2Performances", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_start_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "performance_per_party", - "description": "", - "label": "repeated", - "type": "LiquidityV2PerformancePerParty", - "longType": "LiquidityV2PerformancePerParty", - "fullType": "vega.snapshot.v1.LiquidityV2PerformancePerParty", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2Provisions", - "longName": "LiquidityV2Provisions", - "fullName": "vega.snapshot.v1.LiquidityV2Provisions", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "liquidity_provisions", - "description": "", - "label": "repeated", - "type": "LiquidityProvision", - "longType": "vega.LiquidityProvision", - "fullType": "vega.LiquidityProvision", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2Scores", - "longName": "LiquidityV2Scores", - "fullName": "vega.snapshot.v1.LiquidityV2Scores", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "running_average_counter", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "scores", - "description": "", - "label": "repeated", - "type": "LiquidityScore", - "longType": "LiquidityScore", - "fullType": "vega.snapshot.v1.LiquidityScore", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_fee_distribution_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee_calculation_time_step", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "LiquidityV2Supplied", - "longName": "LiquidityV2Supplied", - "fullName": "vega.snapshot.v1.LiquidityV2Supplied", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "Market ID these liquidity parameters apply to. Required for key generation", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "consensus_reached", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bid_cache", - "description": "", - "label": "repeated", - "type": "LiquidityOffsetProbabilityPair", - "longType": "LiquidityOffsetProbabilityPair", - "fullType": "vega.snapshot.v1.LiquidityOffsetProbabilityPair", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ask_cache", - "description": "", - "label": "repeated", - "type": "LiquidityOffsetProbabilityPair", - "longType": "LiquidityOffsetProbabilityPair", - "fullType": "vega.snapshot.v1.LiquidityOffsetProbabilityPair", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Market", - "longName": "Market", - "fullName": "vega.snapshot.v1.Market", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitor", - "description": "", - "label": "", - "type": "PriceMonitor", - "longType": "PriceMonitor", - "fullType": "vega.snapshot.v1.PriceMonitor", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_state", - "description": "", - "label": "", - "type": "AuctionState", - "longType": "AuctionState", - "fullType": "vega.snapshot.v1.AuctionState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pegged_orders", - "description": "", - "label": "", - "type": "PeggedOrders", - "longType": "PeggedOrders", - "fullType": "vega.snapshot.v1.PeggedOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expiring_orders", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_best_bid", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_best_ask", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_mid_bid", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_mid_ask", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_market_value_proxy", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_equity_share_distributed", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "equity_share", - "description": "", - "label": "", - "type": "EquityShare", - "longType": "EquityShare", - "fullType": "vega.snapshot.v1.EquityShare", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_mark_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "risk_factor_short", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "risk_factor_long", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "risk_factor_consensus_reached", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee_splitter", - "description": "", - "label": "", - "type": "FeeSplitter", - "longType": "FeeSplitter", - "fullType": "vega.snapshot.v1.FeeSplitter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "settlement_data", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_mark_to_market", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_traded_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parties", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "closed", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "succeeded", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stop_orders", - "description": "", - "label": "", - "type": "StopOrders", - "longType": "StopOrders", - "fullType": "vega.snapshot.v1.StopOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expiring_stop_orders", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "product", - "description": "", - "label": "", - "type": "Product", - "longType": "Product", - "fullType": "vega.snapshot.v1.Product", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fees_stats", - "description": "", - "label": "", - "type": "FeesStats", - "longType": "vega.events.v1.FeesStats", - "fullType": "vega.events.v1.FeesStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_margin_factor", - "description": "", - "label": "repeated", - "type": "PartyMarginFactor", - "longType": "PartyMarginFactor", - "fullType": "vega.snapshot.v1.PartyMarginFactor", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "mark_price_calculator", - "description": "", - "label": "", - "type": "CompositePriceCalculator", - "longType": "CompositePriceCalculator", - "fullType": "vega.snapshot.v1.CompositePriceCalculator", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "index_price_calculator", - "description": "", - "label": "optional", - "type": "CompositePriceCalculator", - "longType": "CompositePriceCalculator", - "fullType": "vega.snapshot.v1.CompositePriceCalculator", - "ismap": false, - "isoneof": true, - "oneofdecl": "_index_price_calculator", - "defaultValue": "" - }, - { - "name": "next_index_price_calc", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketPositions", - "longName": "MarketPositions", - "fullName": "vega.snapshot.v1.MarketPositions", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "positions", - "description": "", - "label": "repeated", - "type": "Position", - "longType": "Position", - "fullType": "vega.snapshot.v1.Position", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parties_records", - "description": "", - "label": "repeated", - "type": "PartyPositionStats", - "longType": "PartyPositionStats", - "fullType": "vega.snapshot.v1.PartyPositionStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MarketTracker", - "longName": "MarketTracker", - "fullName": "vega.snapshot.v1.MarketTracker", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_activity", - "description": "", - "label": "repeated", - "type": "MarketActivityTracker", - "longType": "vega.checkpoint.v1.MarketActivityTracker", - "fullType": "vega.checkpoint.v1.MarketActivityTracker", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "taker_notional_volume", - "description": "", - "label": "repeated", - "type": "TakerNotionalVolume", - "longType": "vega.checkpoint.v1.TakerNotionalVolume", - "fullType": "vega.checkpoint.v1.TakerNotionalVolume", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "MatchingBook", - "longName": "MatchingBook", - "fullName": "vega.snapshot.v1.MatchingBook", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buy", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sell", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_traded_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "batch_id", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pegged_order_ids", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Membership", - "longName": "Membership", - "fullName": "vega.snapshot.v1.Membership", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "joined_at", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "started_at_epoch", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Metadata", - "longName": "Metadata", - "fullName": "vega.snapshot.v1.Metadata", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "version", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chunk_hashes", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_hashes", - "description": "", - "label": "repeated", - "type": "NodeHash", - "longType": "NodeHash", - "fullType": "vega.snapshot.v1.NodeHash", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "protocol_version", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "protocol_upgrade", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NetParams", - "longName": "NetParams", - "fullName": "vega.snapshot.v1.NetParams", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "params", - "description": "", - "label": "repeated", - "type": "NetworkParameter", - "longType": "vega.NetworkParameter", - "fullType": "vega.NetworkParameter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NextTimeTrigger", - "longName": "NextTimeTrigger", - "fullName": "vega.snapshot.v1.NextTimeTrigger", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_trigger", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NodeHash", - "longName": "NodeHash", - "fullName": "vega.snapshot.v1.NodeHash", - "description": "NodeHash represents an exported node from the AVL tree and contains all the\ndata necessary to reconstruct an identical copy of the AVL tree after it's\nbeen serialised", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "Node's full key, for example epoch.all", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "Hash of the node's value", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "height", - "description": "Height of the node in the tree", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "version", - "description": "Version of that node i.e., how many times its value has changed during tree\nupdates", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "is_leaf", - "description": "Whether or not the node contains a snapshot payload, only leaf nodes in the\nAVL contain payloads", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NonceRef", - "longName": "NonceRef", - "fullName": "vega.snapshot.v1.NonceRef", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NonceRefsAtHeight", - "longName": "NonceRefsAtHeight", - "fullName": "vega.snapshot.v1.NonceRefsAtHeight", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "refs", - "description": "", - "label": "repeated", - "type": "NonceRef", - "longType": "NonceRef", - "fullType": "vega.snapshot.v1.NonceRef", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Notary", - "longName": "Notary", - "fullName": "vega.snapshot.v1.Notary", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "notary_sigs", - "description": "", - "label": "repeated", - "type": "NotarySigs", - "longType": "NotarySigs", - "fullType": "vega.snapshot.v1.NotarySigs", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "NotarySigs", - "longName": "NotarySigs", - "fullName": "vega.snapshot.v1.NotarySigs", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "kind", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sig", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OffsetsAtPrice", - "longName": "OffsetsAtPrice", - "fullName": "vega.snapshot.v1.OffsetsAtPrice", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "offsets", - "description": "", - "label": "repeated", - "type": "OrdersAtOffset", - "longType": "OrdersAtOffset", - "fullType": "vega.snapshot.v1.OrdersAtOffset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleData", - "longName": "OracleData", - "fullName": "vega.snapshot.v1.OracleData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "signers", - "description": "", - "label": "repeated", - "type": "Signer", - "longType": "vega.data.v1.Signer", - "fullType": "vega.data.v1.Signer", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "data", - "description": "", - "label": "repeated", - "type": "OracleDataPair", - "longType": "OracleDataPair", - "fullType": "vega.snapshot.v1.OracleDataPair", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "meta_data", - "description": "", - "label": "repeated", - "type": "Property", - "longType": "vega.data.v1.Property", - "fullType": "vega.data.v1.Property", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleDataBatch", - "longName": "OracleDataBatch", - "fullName": "vega.snapshot.v1.OracleDataBatch", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "oracle_data", - "description": "", - "label": "repeated", - "type": "OracleData", - "longType": "OracleData", - "fullType": "vega.snapshot.v1.OracleData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OracleDataPair", - "longName": "OracleDataPair", - "fullName": "vega.snapshot.v1.OracleDataPair", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "value", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrderHoldingQuantities", - "longName": "OrderHoldingQuantities", - "fullName": "vega.snapshot.v1.OrderHoldingQuantities", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "quantity", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrdersAtOffset", - "longName": "OrdersAtOffset", - "fullName": "vega.snapshot.v1.OrdersAtOffset", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "offset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "orders", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "OrdersAtPrice", - "longName": "OrdersAtPrice", - "fullName": "vega.snapshot.v1.OrdersAtPrice", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "orders", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Parties", - "longName": "Parties", - "fullName": "vega.snapshot.v1.Parties", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "profiles", - "description": "", - "label": "repeated", - "type": "PartyProfile", - "longType": "PartyProfile", - "fullType": "vega.snapshot.v1.PartyProfile", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyActivityStreak", - "longName": "PartyActivityStreak", - "fullName": "vega.snapshot.v1.PartyActivityStreak", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "active", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "inactive", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_distribution_multiplier", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_vesting_multiplier", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyAssetAmount", - "longName": "PartyAssetAmount", - "fullName": "vega.snapshot.v1.PartyAssetAmount", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyMarginFactor", - "longName": "PartyMarginFactor", - "fullName": "vega.snapshot.v1.PartyMarginFactor", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "margin_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyOrders", - "longName": "PartyOrders", - "fullName": "vega.snapshot.v1.PartyOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "orders", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyPositionStats", - "longName": "PartyPositionStats", - "fullName": "vega.snapshot.v1.PartyPositionStats", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "latest_open_interest", - "description": "", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_latest_open_interest", - "defaultValue": "" - }, - { - "name": "lowest_open_interest", - "description": "", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_lowest_open_interest", - "defaultValue": "" - }, - { - "name": "traded_volume", - "description": "", - "label": "optional", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": true, - "oneofdecl": "_traded_volume", - "defaultValue": "" - } - ] - }, - { - "name": "PartyProfile", - "longName": "PartyProfile", - "fullName": "vega.snapshot.v1.PartyProfile", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "alias", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "", - "label": "repeated", - "type": "Metadata", - "longType": "vega.Metadata", - "fullType": "vega.Metadata", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyProposalVoteCount", - "longName": "PartyProposalVoteCount", - "fullName": "vega.snapshot.v1.PartyProposalVoteCount", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposal", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "count", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyReward", - "longName": "PartyReward", - "fullName": "vega.snapshot.v1.PartyReward", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset_locked", - "description": "", - "label": "repeated", - "type": "AssetLocked", - "longType": "AssetLocked", - "fullType": "vega.snapshot.v1.AssetLocked", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "in_vesting", - "description": "", - "label": "repeated", - "type": "InVesting", - "longType": "InVesting", - "fullType": "vega.snapshot.v1.InVesting", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyTokenBalance", - "longName": "PartyTokenBalance", - "fullName": "vega.snapshot.v1.PartyTokenBalance", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PartyVolume", - "longName": "PartyVolume", - "fullName": "vega.snapshot.v1.PartyVolume", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PastPrice", - "longName": "PastPrice", - "fullName": "vega.snapshot.v1.PastPrice", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume_weighted_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Payload", - "longName": "Payload", - "fullName": "vega.snapshot.v1.Payload", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "active_assets", - "description": "", - "label": "", - "type": "ActiveAssets", - "longType": "ActiveAssets", - "fullType": "vega.snapshot.v1.ActiveAssets", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "pending_assets", - "description": "", - "label": "", - "type": "PendingAssets", - "longType": "PendingAssets", - "fullType": "vega.snapshot.v1.PendingAssets", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_withdrawals", - "description": "", - "label": "", - "type": "BankingWithdrawals", - "longType": "BankingWithdrawals", - "fullType": "vega.snapshot.v1.BankingWithdrawals", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_deposits", - "description": "", - "label": "", - "type": "BankingDeposits", - "longType": "BankingDeposits", - "fullType": "vega.snapshot.v1.BankingDeposits", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_seen", - "description": "", - "label": "", - "type": "BankingSeen", - "longType": "BankingSeen", - "fullType": "vega.snapshot.v1.BankingSeen", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_asset_actions", - "description": "", - "label": "", - "type": "BankingAssetActions", - "longType": "BankingAssetActions", - "fullType": "vega.snapshot.v1.BankingAssetActions", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "checkpoint", - "description": "", - "label": "", - "type": "Checkpoint", - "longType": "Checkpoint", - "fullType": "vega.snapshot.v1.Checkpoint", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "collateral_accounts", - "description": "", - "label": "", - "type": "CollateralAccounts", - "longType": "CollateralAccounts", - "fullType": "vega.snapshot.v1.CollateralAccounts", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "collateral_assets", - "description": "", - "label": "", - "type": "CollateralAssets", - "longType": "CollateralAssets", - "fullType": "vega.snapshot.v1.CollateralAssets", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "delegation_active", - "description": "", - "label": "", - "type": "DelegationActive", - "longType": "DelegationActive", - "fullType": "vega.snapshot.v1.DelegationActive", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "delegation_pending", - "description": "", - "label": "", - "type": "DelegationPending", - "longType": "DelegationPending", - "fullType": "vega.snapshot.v1.DelegationPending", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "delegation_auto", - "description": "", - "label": "", - "type": "DelegationAuto", - "longType": "DelegationAuto", - "fullType": "vega.snapshot.v1.DelegationAuto", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "governance_active", - "description": "", - "label": "", - "type": "GovernanceActive", - "longType": "GovernanceActive", - "fullType": "vega.snapshot.v1.GovernanceActive", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "governance_enacted", - "description": "", - "label": "", - "type": "GovernanceEnacted", - "longType": "GovernanceEnacted", - "fullType": "vega.snapshot.v1.GovernanceEnacted", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "staking_accounts", - "description": "", - "label": "", - "type": "StakingAccounts", - "longType": "StakingAccounts", - "fullType": "vega.snapshot.v1.StakingAccounts", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "matching_book", - "description": "", - "label": "", - "type": "MatchingBook", - "longType": "MatchingBook", - "fullType": "vega.snapshot.v1.MatchingBook", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "network_parameters", - "description": "", - "label": "", - "type": "NetParams", - "longType": "NetParams", - "fullType": "vega.snapshot.v1.NetParams", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "execution_markets", - "description": "", - "label": "", - "type": "ExecutionMarkets", - "longType": "ExecutionMarkets", - "fullType": "vega.snapshot.v1.ExecutionMarkets", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "market_positions", - "description": "", - "label": "", - "type": "MarketPositions", - "longType": "MarketPositions", - "fullType": "vega.snapshot.v1.MarketPositions", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "app_state", - "description": "", - "label": "", - "type": "AppState", - "longType": "AppState", - "fullType": "vega.snapshot.v1.AppState", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "epoch", - "description": "", - "label": "", - "type": "EpochState", - "longType": "EpochState", - "fullType": "vega.snapshot.v1.EpochState", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "rewards_pending_payouts", - "description": "", - "label": "", - "type": "RewardsPendingPayouts", - "longType": "RewardsPendingPayouts", - "fullType": "vega.snapshot.v1.RewardsPendingPayouts", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "governance_node", - "description": "", - "label": "", - "type": "GovernanceNode", - "longType": "GovernanceNode", - "fullType": "vega.snapshot.v1.GovernanceNode", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "limit_state", - "description": "", - "label": "", - "type": "LimitState", - "longType": "LimitState", - "fullType": "vega.snapshot.v1.LimitState", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "vote_spam_policy", - "description": "", - "label": "", - "type": "VoteSpamPolicy", - "longType": "VoteSpamPolicy", - "fullType": "vega.snapshot.v1.VoteSpamPolicy", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "simple_spam_policy", - "description": "", - "label": "", - "type": "SimpleSpamPolicy", - "longType": "SimpleSpamPolicy", - "fullType": "vega.snapshot.v1.SimpleSpamPolicy", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "notary", - "description": "", - "label": "", - "type": "Notary", - "longType": "Notary", - "fullType": "vega.snapshot.v1.Notary", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "event_forwarder", - "description": "", - "label": "", - "type": "EventForwarder", - "longType": "EventForwarder", - "fullType": "vega.snapshot.v1.EventForwarder", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "stake_verifier_deposited", - "description": "", - "label": "", - "type": "StakeVerifierDeposited", - "longType": "StakeVerifierDeposited", - "fullType": "vega.snapshot.v1.StakeVerifierDeposited", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "stake_verifier_removed", - "description": "", - "label": "", - "type": "StakeVerifierRemoved", - "longType": "StakeVerifierRemoved", - "fullType": "vega.snapshot.v1.StakeVerifierRemoved", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "witness", - "description": "", - "label": "", - "type": "Witness", - "longType": "Witness", - "fullType": "vega.snapshot.v1.Witness", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "delegation_last_reconciliation_time", - "description": "", - "label": "", - "type": "DelegationLastReconciliationTime", - "longType": "DelegationLastReconciliationTime", - "fullType": "vega.snapshot.v1.DelegationLastReconciliationTime", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "topology", - "description": "", - "label": "", - "type": "Topology", - "longType": "Topology", - "fullType": "vega.snapshot.v1.Topology", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "oracle_data", - "description": "", - "label": "", - "type": "OracleDataBatch", - "longType": "OracleDataBatch", - "fullType": "vega.snapshot.v1.OracleDataBatch", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_parameters", - "description": "", - "label": "", - "type": "LiquidityParameters", - "longType": "LiquidityParameters", - "fullType": "vega.snapshot.v1.LiquidityParameters", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_pending_provisions", - "description": "", - "label": "", - "type": "LiquidityPendingProvisions", - "longType": "LiquidityPendingProvisions", - "fullType": "vega.snapshot.v1.LiquidityPendingProvisions", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_parties_liquidity_orders", - "description": "", - "label": "", - "type": "LiquidityPartiesLiquidityOrders", - "longType": "LiquidityPartiesLiquidityOrders", - "fullType": "vega.snapshot.v1.LiquidityPartiesLiquidityOrders", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_parties_orders", - "description": "", - "label": "", - "type": "LiquidityPartiesOrders", - "longType": "LiquidityPartiesOrders", - "fullType": "vega.snapshot.v1.LiquidityPartiesOrders", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_provisions", - "description": "", - "label": "", - "type": "LiquidityProvisions", - "longType": "LiquidityProvisions", - "fullType": "vega.snapshot.v1.LiquidityProvisions", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_supplied", - "description": "", - "label": "", - "type": "LiquiditySupplied", - "longType": "LiquiditySupplied", - "fullType": "vega.snapshot.v1.LiquiditySupplied", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_target", - "description": "", - "label": "", - "type": "LiquidityTarget", - "longType": "LiquidityTarget", - "fullType": "vega.snapshot.v1.LiquidityTarget", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "floating_point_consensus", - "description": "", - "label": "", - "type": "FloatingPointConsensus", - "longType": "FloatingPointConsensus", - "fullType": "vega.snapshot.v1.FloatingPointConsensus", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "market_tracker", - "description": "", - "label": "", - "type": "MarketTracker", - "longType": "MarketTracker", - "fullType": "vega.snapshot.v1.MarketTracker", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_recurring_transfers", - "description": "", - "label": "", - "type": "BankingRecurringTransfers", - "longType": "BankingRecurringTransfers", - "fullType": "vega.snapshot.v1.BankingRecurringTransfers", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_scheduled_transfers", - "description": "", - "label": "", - "type": "BankingScheduledTransfers", - "longType": "BankingScheduledTransfers", - "fullType": "vega.snapshot.v1.BankingScheduledTransfers", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "erc20_multisig_topology_verified", - "description": "", - "label": "", - "type": "ERC20MultiSigTopologyVerified", - "longType": "ERC20MultiSigTopologyVerified", - "fullType": "vega.snapshot.v1.ERC20MultiSigTopologyVerified", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "erc20_multisig_topology_pending", - "description": "", - "label": "", - "type": "ERC20MultiSigTopologyPending", - "longType": "ERC20MultiSigTopologyPending", - "fullType": "vega.snapshot.v1.ERC20MultiSigTopologyPending", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "proof_of_work", - "description": "", - "label": "", - "type": "ProofOfWork", - "longType": "ProofOfWork", - "fullType": "vega.snapshot.v1.ProofOfWork", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "pending_asset_updates", - "description": "", - "label": "", - "type": "PendingAssetUpdates", - "longType": "PendingAssetUpdates", - "fullType": "vega.snapshot.v1.PendingAssetUpdates", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_proposals", - "description": "", - "label": "", - "type": "ProtocolUpgradeProposals", - "longType": "ProtocolUpgradeProposals", - "fullType": "vega.snapshot.v1.ProtocolUpgradeProposals", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_bridge_state", - "description": "", - "label": "", - "type": "BankingBridgeState", - "longType": "BankingBridgeState", - "fullType": "vega.snapshot.v1.BankingBridgeState", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "settlement_state", - "description": "", - "label": "", - "type": "SettlementState", - "longType": "SettlementState", - "fullType": "vega.snapshot.v1.SettlementState", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_scores", - "description": "", - "label": "", - "type": "LiquidityScores", - "longType": "LiquidityScores", - "fullType": "vega.snapshot.v1.LiquidityScores", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "spot_liquidity_target", - "description": "", - "label": "", - "type": "SpotLiquidityTarget", - "longType": "SpotLiquidityTarget", - "fullType": "vega.snapshot.v1.SpotLiquidityTarget", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_recurring_governance_transfers", - "description": "", - "label": "", - "type": "BankingRecurringGovernanceTransfers", - "longType": "BankingRecurringGovernanceTransfers", - "fullType": "vega.snapshot.v1.BankingRecurringGovernanceTransfers", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_scheduled_governance_transfers", - "description": "", - "label": "", - "type": "BankingScheduledGovernanceTransfers", - "longType": "BankingScheduledGovernanceTransfers", - "fullType": "vega.snapshot.v1.BankingScheduledGovernanceTransfers", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "eth_contract_call_results", - "description": "", - "label": "", - "type": "EthContractCallResults", - "longType": "EthContractCallResults", - "fullType": "vega.snapshot.v1.EthContractCallResults", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "eth_oracle_verifier_last_block", - "description": "", - "label": "", - "type": "EthOracleVerifierLastBlock", - "longType": "EthOracleVerifierLastBlock", - "fullType": "vega.snapshot.v1.EthOracleVerifierLastBlock", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_v2_provisions", - "description": "", - "label": "", - "type": "LiquidityV2Provisions", - "longType": "LiquidityV2Provisions", - "fullType": "vega.snapshot.v1.LiquidityV2Provisions", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_v2_pending_provisions", - "description": "", - "label": "", - "type": "LiquidityV2PendingProvisions", - "longType": "LiquidityV2PendingProvisions", - "fullType": "vega.snapshot.v1.LiquidityV2PendingProvisions", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_v2_performances", - "description": "", - "label": "", - "type": "LiquidityV2Performances", - "longType": "LiquidityV2Performances", - "fullType": "vega.snapshot.v1.LiquidityV2Performances", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_v2_supplied", - "description": "", - "label": "", - "type": "LiquidityV2Supplied", - "longType": "LiquidityV2Supplied", - "fullType": "vega.snapshot.v1.LiquidityV2Supplied", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_v2_scores", - "description": "", - "label": "", - "type": "LiquidityV2Scores", - "longType": "LiquidityV2Scores", - "fullType": "vega.snapshot.v1.LiquidityV2Scores", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "holding_account_tracker", - "description": "", - "label": "", - "type": "HoldingAccountTracker", - "longType": "HoldingAccountTracker", - "fullType": "vega.snapshot.v1.HoldingAccountTracker", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "teams", - "description": "", - "label": "", - "type": "Teams", - "longType": "Teams", - "fullType": "vega.snapshot.v1.Teams", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "team_switches", - "description": "", - "label": "", - "type": "TeamSwitches", - "longType": "TeamSwitches", - "fullType": "vega.snapshot.v1.TeamSwitches", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "vesting", - "description": "", - "label": "", - "type": "Vesting", - "longType": "Vesting", - "fullType": "vega.snapshot.v1.Vesting", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "referral_program", - "description": "", - "label": "", - "type": "ReferralProgramData", - "longType": "ReferralProgramData", - "fullType": "vega.snapshot.v1.ReferralProgramData", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "activity_streak", - "description": "", - "label": "", - "type": "ActivityStreak", - "longType": "ActivityStreak", - "fullType": "vega.snapshot.v1.ActivityStreak", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "volume_discount_program", - "description": "", - "label": "", - "type": "VolumeDiscountProgram", - "longType": "VolumeDiscountProgram", - "fullType": "vega.snapshot.v1.VolumeDiscountProgram", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_v2_parameters", - "description": "", - "label": "", - "type": "LiquidityV2Parameters", - "longType": "LiquidityV2Parameters", - "fullType": "vega.snapshot.v1.LiquidityV2Parameters", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidity_v2_paid_fees_stats", - "description": "", - "label": "", - "type": "LiquidityV2PaidFeesStats", - "longType": "LiquidityV2PaidFeesStats", - "fullType": "vega.snapshot.v1.LiquidityV2PaidFeesStats", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "liquidation", - "description": "", - "label": "", - "type": "Liquidation", - "longType": "Liquidation", - "fullType": "vega.snapshot.v1.Liquidation", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "banking_transfer_fee_discounts", - "description": "", - "label": "", - "type": "BankingTransferFeeDiscounts", - "longType": "BankingTransferFeeDiscounts", - "fullType": "vega.snapshot.v1.BankingTransferFeeDiscounts", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "governance_batch_active", - "description": "", - "label": "", - "type": "GovernanceBatchActive", - "longType": "GovernanceBatchActive", - "fullType": "vega.snapshot.v1.GovernanceBatchActive", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "parties", - "description": "", - "label": "", - "type": "Parties", - "longType": "Parties", - "fullType": "vega.snapshot.v1.Parties", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - }, - { - "name": "l2_eth_oracles", - "description": "", - "label": "", - "type": "L2EthOracles", - "longType": "L2EthOracles", - "fullType": "vega.snapshot.v1.L2EthOracles", - "ismap": false, - "isoneof": true, - "oneofdecl": "data", - "defaultValue": "" - } - ] - }, - { - "name": "PeggedOrders", - "longName": "PeggedOrders", - "fullName": "vega.snapshot.v1.PeggedOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parked_orders", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingAssetUpdates", - "longName": "PendingAssetUpdates", - "fullName": "vega.snapshot.v1.PendingAssetUpdates", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "assets", - "description": "", - "label": "repeated", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingAssets", - "longName": "PendingAssets", - "fullName": "vega.snapshot.v1.PendingAssets", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "assets", - "description": "", - "label": "repeated", - "type": "Asset", - "longType": "vega.Asset", - "fullType": "vega.Asset", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingERC20MultisigControlSignature", - "longName": "PendingERC20MultisigControlSignature", - "fullName": "vega.snapshot.v1.PendingERC20MultisigControlSignature", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ethereum_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "added", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingEthereumKeyRotation", - "longName": "PendingEthereumKeyRotation", - "fullName": "vega.snapshot.v1.PendingEthereumKeyRotation", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "submitter", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "old_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PendingKeyRotation", - "longName": "PendingKeyRotation", - "fullName": "vega.snapshot.v1.PendingKeyRotation", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "node_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_pub_key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_pub_key_index", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PerformanceStats", - "longName": "PerformanceStats", - "fullName": "vega.snapshot.v1.PerformanceStats", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "validator_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "proposed", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "elected", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "voted", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_height_voted", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_height_proposed", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_height_elected", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Perps", - "longName": "Perps", - "fullName": "vega.snapshot.v1.Perps", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "external_data_point", - "description": "", - "label": "repeated", - "type": "DataPoint", - "longType": "DataPoint", - "fullType": "vega.snapshot.v1.DataPoint", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "internal_data_point", - "description": "", - "label": "repeated", - "type": "DataPoint", - "longType": "DataPoint", - "fullType": "vega.snapshot.v1.DataPoint", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seq", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "started_at", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "external_twap_data", - "description": "", - "label": "", - "type": "TWAPData", - "longType": "TWAPData", - "fullType": "vega.snapshot.v1.TWAPData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "internal_twap_data", - "description": "", - "label": "", - "type": "TWAPData", - "longType": "TWAPData", - "fullType": "vega.snapshot.v1.TWAPData", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_intervals", - "description": "", - "label": "", - "type": "AuctionIntervals", - "longType": "AuctionIntervals", - "fullType": "vega.snapshot.v1.AuctionIntervals", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Position", - "longName": "Position", - "fullName": "vega.snapshot.v1.Position", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buy", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sell", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "buy_sum_product", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sell_sum_product", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "distressed", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_entry_price", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceBound", - "longName": "PriceBound", - "fullName": "vega.snapshot.v1.PriceBound", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "active", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "up_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "down_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trigger", - "description": "", - "label": "", - "type": "PriceMonitoringTrigger", - "longType": "vega.PriceMonitoringTrigger", - "fullType": "vega.PriceMonitoringTrigger", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceMonitor", - "longName": "PriceMonitor", - "fullName": "vega.snapshot.v1.PriceMonitor", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "initialised", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fp_horizons", - "description": "", - "label": "repeated", - "type": "DecimalMap", - "longType": "DecimalMap", - "fullType": "vega.snapshot.v1.DecimalMap", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "now", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "update", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "bounds", - "description": "", - "label": "repeated", - "type": "PriceBound", - "longType": "PriceBound", - "fullType": "vega.snapshot.v1.PriceBound", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_range_cache_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_range_cache", - "description": "", - "label": "repeated", - "type": "PriceRangeCache", - "longType": "PriceRangeCache", - "fullType": "vega.snapshot.v1.PriceRangeCache", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ref_price_cache_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ref_price_cache", - "description": "", - "label": "repeated", - "type": "DecimalMap", - "longType": "DecimalMap", - "fullType": "vega.snapshot.v1.DecimalMap", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "prices_now", - "description": "", - "label": "repeated", - "type": "CurrentPrice", - "longType": "CurrentPrice", - "fullType": "vega.snapshot.v1.CurrentPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "prices_past", - "description": "", - "label": "repeated", - "type": "PastPrice", - "longType": "PastPrice", - "fullType": "vega.snapshot.v1.PastPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "consensus_reached", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceRange", - "longName": "PriceRange", - "fullName": "vega.snapshot.v1.PriceRange", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "min", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ref", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceRangeCache", - "longName": "PriceRangeCache", - "fullName": "vega.snapshot.v1.PriceRangeCache", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "bound", - "description": "", - "label": "", - "type": "PriceBound", - "longType": "PriceBound", - "fullType": "vega.snapshot.v1.PriceBound", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "range", - "description": "", - "label": "", - "type": "PriceRange", - "longType": "PriceRange", - "fullType": "vega.snapshot.v1.PriceRange", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PriceVolume", - "longName": "PriceVolume", - "fullName": "vega.snapshot.v1.PriceVolume", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "PricedStopOrders", - "longName": "PricedStopOrders", - "fullName": "vega.snapshot.v1.PricedStopOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "falls_bellow", - "description": "", - "label": "repeated", - "type": "OrdersAtPrice", - "longType": "OrdersAtPrice", - "fullType": "vega.snapshot.v1.OrdersAtPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rises_above", - "description": "", - "label": "repeated", - "type": "OrdersAtPrice", - "longType": "OrdersAtPrice", - "fullType": "vega.snapshot.v1.OrdersAtPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Product", - "longName": "Product", - "fullName": "vega.snapshot.v1.Product", - "description": "eventually support multiple products", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "perps", - "description": "", - "label": "", - "type": "Perps", - "longType": "Perps", - "fullType": "vega.snapshot.v1.Perps", - "ismap": false, - "isoneof": true, - "oneofdecl": "type", - "defaultValue": "" - } - ] - }, - { - "name": "ProofOfWork", - "longName": "ProofOfWork", - "fullName": "vega.snapshot.v1.ProofOfWork", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "", - "label": "repeated", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_hash", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_at_height", - "description": "", - "label": "repeated", - "type": "TransactionsAtHeight", - "longType": "TransactionsAtHeight", - "fullType": "vega.snapshot.v1.TransactionsAtHeight", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tid_at_height", - "description": "", - "label": "repeated", - "type": "TransactionsAtHeight", - "longType": "TransactionsAtHeight", - "fullType": "vega.snapshot.v1.TransactionsAtHeight", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "banned", - "description": "", - "label": "repeated", - "type": "BannedParty", - "longType": "BannedParty", - "fullType": "vega.snapshot.v1.BannedParty", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pow_params", - "description": "", - "label": "repeated", - "type": "ProofOfWorkParams", - "longType": "ProofOfWorkParams", - "fullType": "vega.snapshot.v1.ProofOfWorkParams", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pow_state", - "description": "", - "label": "repeated", - "type": "ProofOfWorkState", - "longType": "ProofOfWorkState", - "fullType": "vega.snapshot.v1.ProofOfWorkState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_pruning_block", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "nonce_refs_at_height", - "description": "", - "label": "repeated", - "type": "NonceRefsAtHeight", - "longType": "NonceRefsAtHeight", - "fullType": "vega.snapshot.v1.NonceRefsAtHeight", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProofOfWorkBlockState", - "longName": "ProofOfWorkBlockState", - "fullName": "vega.snapshot.v1.ProofOfWorkBlockState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "block_height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_state", - "description": "", - "label": "repeated", - "type": "ProofOfWorkPartyStateForBlock", - "longType": "ProofOfWorkPartyStateForBlock", - "fullType": "vega.snapshot.v1.ProofOfWorkPartyStateForBlock", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProofOfWorkParams", - "longName": "ProofOfWorkParams", - "fullName": "vega.snapshot.v1.ProofOfWorkParams", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "spam_pow_number_of_past_blocks", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_difficulty", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_hash_function", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_number_of_tx_per_block", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "spam_pow_increasing_difficulty", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "from_block", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "until_block", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProofOfWorkPartyStateForBlock", - "longName": "ProofOfWorkPartyStateForBlock", - "fullName": "vega.snapshot.v1.ProofOfWorkPartyStateForBlock", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "seen_count", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "observed_difficulty", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProofOfWorkState", - "longName": "ProofOfWorkState", - "fullName": "vega.snapshot.v1.ProofOfWorkState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "pow_state", - "description": "", - "label": "repeated", - "type": "ProofOfWorkBlockState", - "longType": "ProofOfWorkBlockState", - "fullType": "vega.snapshot.v1.ProofOfWorkBlockState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProposalData", - "longName": "ProposalData", - "fullName": "vega.snapshot.v1.ProposalData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "proposal", - "description": "", - "label": "", - "type": "Proposal", - "longType": "vega.Proposal", - "fullType": "vega.Proposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "yes", - "description": "", - "label": "repeated", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "no", - "description": "", - "label": "repeated", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "invalid", - "description": "", - "label": "repeated", - "type": "Vote", - "longType": "vega.Vote", - "fullType": "vega.Vote", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ProtocolUpgradeProposals", - "longName": "ProtocolUpgradeProposals", - "fullName": "vega.snapshot.v1.ProtocolUpgradeProposals", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "active_proposals", - "description": "", - "label": "repeated", - "type": "ProtocolUpgradeEvent", - "longType": "vega.events.v1.ProtocolUpgradeEvent", - "fullType": "vega.events.v1.ProtocolUpgradeEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "accepted_proposal", - "description": "", - "label": "", - "type": "AcceptedProtocolUpgradeProposal", - "longType": "AcceptedProtocolUpgradeProposal", - "fullType": "vega.snapshot.v1.AcceptedProtocolUpgradeProposal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralProgramData", - "longName": "ReferralProgramData", - "fullName": "vega.snapshot.v1.ReferralProgramData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "factor_by_referee", - "description": "", - "label": "repeated", - "type": "FactorByReferee", - "longType": "FactorByReferee", - "fullType": "vega.snapshot.v1.FactorByReferee", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_program", - "description": "", - "label": "", - "type": "ReferralProgram", - "longType": "vega.ReferralProgram", - "fullType": "vega.ReferralProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_program", - "description": "", - "label": "", - "type": "ReferralProgram", - "longType": "vega.ReferralProgram", - "fullType": "vega.ReferralProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_program_version", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "program_has_ended", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sets", - "description": "", - "label": "repeated", - "type": "ReferralSet", - "longType": "ReferralSet", - "fullType": "vega.snapshot.v1.ReferralSet", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ReferralSet", - "longName": "ReferralSet", - "fullName": "vega.snapshot.v1.ReferralSet", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "updated_at", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "", - "label": "", - "type": "Membership", - "longType": "Membership", - "fullType": "vega.snapshot.v1.Membership", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referees", - "description": "", - "label": "repeated", - "type": "Membership", - "longType": "Membership", - "fullType": "vega.snapshot.v1.Membership", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "running_volumes", - "description": "", - "label": "repeated", - "type": "RunningVolume", - "longType": "RunningVolume", - "fullType": "vega.snapshot.v1.RunningVolume", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_reward_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_rewards_multiplier", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_rewards_factor_multiplier", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Resource", - "longName": "Resource", - "fullName": "vega.snapshot.v1.Resource", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "check_until", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "votes", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardsPartyAmount", - "longName": "RewardsPartyAmount", - "fullName": "vega.snapshot.v1.RewardsPartyAmount", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardsPayout", - "longName": "RewardsPayout", - "fullName": "vega.snapshot.v1.RewardsPayout", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_account", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "reward_party_amount", - "description": "", - "label": "repeated", - "type": "RewardsPartyAmount", - "longType": "RewardsPartyAmount", - "fullType": "vega.snapshot.v1.RewardsPartyAmount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "total_reward", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_seq", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "timestamp", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RewardsPendingPayouts", - "longName": "RewardsPendingPayouts", - "fullName": "vega.snapshot.v1.RewardsPendingPayouts", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "scheduled_rewards_payout", - "description": "", - "label": "repeated", - "type": "ScheduledRewardsPayout", - "longType": "ScheduledRewardsPayout", - "fullType": "vega.snapshot.v1.ScheduledRewardsPayout", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "RunningVolume", - "longName": "RunningVolume", - "fullName": "vega.snapshot.v1.RunningVolume", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "epoch", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "volume", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SLANetworkParams", - "longName": "SLANetworkParams", - "fullName": "vega.snapshot.v1.SLANetworkParams", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "bond_penalty_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "early_exit_penalty", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_liquidity_fee", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "non_performance_bond_penalty_max", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "non_performance_bond_penalty_slope", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stake_to_ccy_volume", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "providers_fee_calculation_time_step", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ScheduledRewardsPayout", - "longName": "ScheduledRewardsPayout", - "fullName": "vega.snapshot.v1.ScheduledRewardsPayout", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "payout_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rewards_payout", - "description": "", - "label": "repeated", - "type": "RewardsPayout", - "longType": "RewardsPayout", - "fullType": "vega.snapshot.v1.RewardsPayout", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SettlementState", - "longName": "SettlementState", - "fullName": "vega.snapshot.v1.SettlementState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_mark_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_settled_positions", - "description": "", - "label": "repeated", - "type": "LastSettledPosition", - "longType": "LastSettledPosition", - "fullType": "vega.snapshot.v1.LastSettledPosition", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trades", - "description": "", - "label": "repeated", - "type": "SettlementTrade", - "longType": "SettlementTrade", - "fullType": "vega.snapshot.v1.SettlementTrade", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SettlementTrade", - "longName": "SettlementTrade", - "fullName": "vega.snapshot.v1.SettlementTrade", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "market_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "size", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_size", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SignerEventsPerAddress", - "longName": "SignerEventsPerAddress", - "fullName": "vega.snapshot.v1.SignerEventsPerAddress", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "events", - "description": "", - "label": "repeated", - "type": "ERC20MultiSigSignerEvent", - "longType": "vega.events.v1.ERC20MultiSigSignerEvent", - "fullType": "vega.events.v1.ERC20MultiSigSignerEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SimpleSpamPolicy", - "longName": "SimpleSpamPolicy", - "fullName": "vega.snapshot.v1.SimpleSpamPolicy", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "policy_name", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_to_count", - "description": "", - "label": "repeated", - "type": "SpamPartyTransactionCount", - "longType": "SpamPartyTransactionCount", - "fullType": "vega.snapshot.v1.SpamPartyTransactionCount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "banned_parties", - "description": "", - "label": "repeated", - "type": "BannedParty", - "longType": "BannedParty", - "fullType": "vega.snapshot.v1.BannedParty", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "token_balance", - "description": "", - "label": "repeated", - "type": "PartyTokenBalance", - "longType": "PartyTokenBalance", - "fullType": "vega.snapshot.v1.PartyTokenBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_epoch_seq", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Snapshot", - "longName": "Snapshot", - "fullName": "vega.snapshot.v1.Snapshot", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "format", - "description": "", - "label": "", - "type": "Format", - "longType": "Format", - "fullType": "vega.snapshot.v1.Format", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chunks", - "description": "", - "label": "", - "type": "uint32", - "longType": "uint32", - "fullType": "uint32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "metadata", - "description": "", - "label": "", - "type": "bytes", - "longType": "bytes", - "fullType": "bytes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SpamPartyTransactionCount", - "longName": "SpamPartyTransactionCount", - "fullName": "vega.snapshot.v1.SpamPartyTransactionCount", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "count", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SpotLiquidityTarget", - "longName": "SpotLiquidityTarget", - "fullName": "vega.snapshot.v1.SpotLiquidityTarget", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "scheduled_truncate", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_total_stake", - "description": "", - "label": "repeated", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "previous_total_stake", - "description": "", - "label": "repeated", - "type": "TimestampedTotalStake", - "longType": "TimestampedTotalStake", - "fullType": "vega.snapshot.v1.TimestampedTotalStake", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "max_total_stake", - "description": "", - "label": "", - "type": "TimestampedTotalStake", - "longType": "TimestampedTotalStake", - "fullType": "vega.snapshot.v1.TimestampedTotalStake", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "SpotMarket", - "longName": "SpotMarket", - "fullName": "vega.snapshot.v1.SpotMarket", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "market", - "description": "", - "label": "", - "type": "Market", - "longType": "vega.Market", - "fullType": "vega.Market", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price_monitor", - "description": "", - "label": "", - "type": "PriceMonitor", - "longType": "PriceMonitor", - "fullType": "vega.snapshot.v1.PriceMonitor", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "auction_state", - "description": "", - "label": "", - "type": "AuctionState", - "longType": "AuctionState", - "fullType": "vega.snapshot.v1.AuctionState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pegged_orders", - "description": "", - "label": "", - "type": "PeggedOrders", - "longType": "PeggedOrders", - "fullType": "vega.snapshot.v1.PeggedOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expiring_orders", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_best_bid", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_best_ask", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_mid_bid", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_mid_ask", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_market_value_proxy", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_equity_share_distributed", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "equity_share", - "description": "", - "label": "", - "type": "EquityShare", - "longType": "EquityShare", - "fullType": "vega.snapshot.v1.EquityShare", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_mark_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fee_splitter", - "description": "", - "label": "", - "type": "FeeSplitter", - "longType": "FeeSplitter", - "fullType": "vega.snapshot.v1.FeeSplitter", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "next_mark_to_market", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_traded_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "parties", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "closed", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "stop_orders", - "description": "", - "label": "", - "type": "StopOrders", - "longType": "StopOrders", - "fullType": "vega.snapshot.v1.StopOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "expiring_stop_orders", - "description": "", - "label": "repeated", - "type": "Order", - "longType": "vega.Order", - "fullType": "vega.Order", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "fees_stats", - "description": "", - "label": "", - "type": "FeesStats", - "longType": "vega.events.v1.FeesStats", - "fullType": "vega.events.v1.FeesStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakeVerifierDeposited", - "longName": "StakeVerifierDeposited", - "fullName": "vega.snapshot.v1.StakeVerifierDeposited", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "pending_deposited", - "description": "", - "label": "repeated", - "type": "StakeVerifierPending", - "longType": "StakeVerifierPending", - "fullType": "vega.snapshot.v1.StakeVerifierPending", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakeVerifierPending", - "longName": "StakeVerifierPending", - "fullName": "vega.snapshot.v1.StakeVerifierPending", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ethereum_address", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "vega_public_key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "amount", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_number", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "tx_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakeVerifierRemoved", - "longName": "StakeVerifierRemoved", - "fullName": "vega.snapshot.v1.StakeVerifierRemoved", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "pending_removed", - "description": "", - "label": "repeated", - "type": "StakeVerifierPending", - "longType": "StakeVerifierPending", - "fullType": "vega.snapshot.v1.StakeVerifierPending", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakingAccount", - "longName": "StakingAccount", - "fullName": "vega.snapshot.v1.StakingAccount", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "balance", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "events", - "description": "", - "label": "repeated", - "type": "StakeLinking", - "longType": "vega.events.v1.StakeLinking", - "fullType": "vega.events.v1.StakeLinking", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StakingAccounts", - "longName": "StakingAccounts", - "fullName": "vega.snapshot.v1.StakingAccounts", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "accounts", - "description": "", - "label": "repeated", - "type": "StakingAccount", - "longType": "StakingAccount", - "fullType": "vega.snapshot.v1.StakingAccount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "staking_asset_total_supply", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_stake_total_supply", - "description": "", - "label": "", - "type": "StakeTotalSupply", - "longType": "vega.StakeTotalSupply", - "fullType": "vega.StakeTotalSupply", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StateVarInternalState", - "longName": "StateVarInternalState", - "fullName": "vega.snapshot.v1.StateVarInternalState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "state", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "event_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validators_results", - "description": "", - "label": "repeated", - "type": "FloatingPointValidatorResult", - "longType": "FloatingPointValidatorResult", - "fullType": "vega.snapshot.v1.FloatingPointValidatorResult", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rounds_since_meaningful_update", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "StopOrders", - "longName": "StopOrders", - "fullName": "vega.snapshot.v1.StopOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "stop_orders", - "description": "", - "label": "repeated", - "type": "StopOrderEvent", - "longType": "vega.events.v1.StopOrderEvent", - "fullType": "vega.events.v1.StopOrderEvent", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "priced_stop_orders", - "description": "", - "label": "", - "type": "PricedStopOrders", - "longType": "PricedStopOrders", - "fullType": "vega.snapshot.v1.PricedStopOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "trailing_stop_orders", - "description": "", - "label": "", - "type": "TrailingStopOrders", - "longType": "TrailingStopOrders", - "fullType": "vega.snapshot.v1.TrailingStopOrders", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Successors", - "longName": "Successors", - "fullName": "vega.snapshot.v1.Successors", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parent_market", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "successor_markets", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TWAPData", - "longName": "TWAPData", - "fullName": "vega.snapshot.v1.TWAPData", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "start", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "end", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "sum_product", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Team", - "longName": "Team", - "fullName": "vega.snapshot.v1.Team", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referrer", - "description": "", - "label": "", - "type": "Membership", - "longType": "Membership", - "fullType": "vega.snapshot.v1.Membership", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "referees", - "description": "", - "label": "repeated", - "type": "Membership", - "longType": "Membership", - "fullType": "vega.snapshot.v1.Membership", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "name", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "team_url", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "avatar_url", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "created_at", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "closed", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "allow_list", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamSwitch", - "longName": "TeamSwitch", - "fullName": "vega.snapshot.v1.TeamSwitch", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "from_team_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "to_team_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "party_id", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TeamSwitches", - "longName": "TeamSwitches", - "fullName": "vega.snapshot.v1.TeamSwitches", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "team_switches", - "description": "", - "label": "repeated", - "type": "TeamSwitch", - "longType": "TeamSwitch", - "fullType": "vega.snapshot.v1.TeamSwitch", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Teams", - "longName": "Teams", - "fullName": "vega.snapshot.v1.Teams", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "teams", - "description": "", - "label": "repeated", - "type": "Team", - "longType": "Team", - "fullType": "vega.snapshot.v1.Team", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TimePrice", - "longName": "TimePrice", - "fullName": "vega.snapshot.v1.TimePrice", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TimestampedOpenInterest", - "longName": "TimestampedOpenInterest", - "fullName": "vega.snapshot.v1.TimestampedOpenInterest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "open_interest", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TimestampedTotalStake", - "longName": "TimestampedTotalStake", - "fullName": "vega.snapshot.v1.TimestampedTotalStake", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "total_stake", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "time", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ToplogySignatures", - "longName": "ToplogySignatures", - "fullName": "vega.snapshot.v1.ToplogySignatures", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "pending_signatures", - "description": "", - "label": "repeated", - "type": "PendingERC20MultisigControlSignature", - "longType": "PendingERC20MultisigControlSignature", - "fullType": "vega.snapshot.v1.PendingERC20MultisigControlSignature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "issued_signatures", - "description": "", - "label": "repeated", - "type": "IssuedERC20MultisigControlSignature", - "longType": "IssuedERC20MultisigControlSignature", - "fullType": "vega.snapshot.v1.IssuedERC20MultisigControlSignature", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Topology", - "longName": "Topology", - "fullName": "vega.snapshot.v1.Topology", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "validator_data", - "description": "", - "label": "repeated", - "type": "ValidatorState", - "longType": "ValidatorState", - "fullType": "vega.snapshot.v1.ValidatorState", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "chain_keys", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_pub_key_rotations", - "description": "", - "label": "repeated", - "type": "PendingKeyRotation", - "longType": "PendingKeyRotation", - "fullType": "vega.snapshot.v1.PendingKeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_performance", - "description": "", - "label": "", - "type": "ValidatorPerformance", - "longType": "ValidatorPerformance", - "fullType": "vega.snapshot.v1.ValidatorPerformance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "pending_ethereum_key_rotations", - "description": "", - "label": "repeated", - "type": "PendingEthereumKeyRotation", - "longType": "PendingEthereumKeyRotation", - "fullType": "vega.snapshot.v1.PendingEthereumKeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "signatures", - "description": "", - "label": "", - "type": "ToplogySignatures", - "longType": "ToplogySignatures", - "fullType": "vega.snapshot.v1.ToplogySignatures", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "unsolved_ethereum_key_rotations", - "description": "", - "label": "repeated", - "type": "PendingEthereumKeyRotation", - "longType": "PendingEthereumKeyRotation", - "fullType": "vega.snapshot.v1.PendingEthereumKeyRotation", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TrailingStopOrders", - "longName": "TrailingStopOrders", - "fullName": "vega.snapshot.v1.TrailingStopOrders", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "last_seen_price", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "falls_bellow", - "description": "", - "label": "repeated", - "type": "OffsetsAtPrice", - "longType": "OffsetsAtPrice", - "fullType": "vega.snapshot.v1.OffsetsAtPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "rises_above", - "description": "", - "label": "repeated", - "type": "OffsetsAtPrice", - "longType": "OffsetsAtPrice", - "fullType": "vega.snapshot.v1.OffsetsAtPrice", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TransactionsAtHeight", - "longName": "TransactionsAtHeight", - "fullName": "vega.snapshot.v1.TransactionsAtHeight", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "height", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "transactions", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "TxRef", - "longName": "TxRef", - "fullName": "vega.snapshot.v1.TxRef", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "asset", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_nr", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "hash", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "log_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ValidatorPerformance", - "longName": "ValidatorPerformance", - "fullName": "vega.snapshot.v1.ValidatorPerformance", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "validator_perf_stats", - "description": "", - "label": "repeated", - "type": "PerformanceStats", - "longType": "PerformanceStats", - "fullType": "vega.snapshot.v1.PerformanceStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "ValidatorState", - "longName": "ValidatorState", - "fullName": "vega.snapshot.v1.ValidatorState", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "validator_update", - "description": "", - "label": "", - "type": "ValidatorUpdate", - "longType": "vega.events.v1.ValidatorUpdate", - "fullType": "vega.events.v1.ValidatorUpdate", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "block_added", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status", - "description": "", - "label": "", - "type": "int32", - "longType": "int32", - "fullType": "int32", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "status_change_block", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_block_with_positive_ranking", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "eth_events_forwarded", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "heartbeat_tracker", - "description": "", - "label": "", - "type": "HeartbeatTracker", - "longType": "HeartbeatTracker", - "fullType": "vega.snapshot.v1.HeartbeatTracker", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "validator_power", - "description": "", - "label": "", - "type": "int64", - "longType": "int64", - "fullType": "int64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "ranking_score", - "description": "", - "label": "", - "type": "RankingScore", - "longType": "vega.RankingScore", - "fullType": "vega.RankingScore", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Vesting", - "longName": "Vesting", - "fullName": "vega.snapshot.v1.Vesting", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties_reward", - "description": "", - "label": "repeated", - "type": "PartyReward", - "longType": "PartyReward", - "fullType": "vega.snapshot.v1.PartyReward", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountProgram", - "longName": "VolumeDiscountProgram", - "fullName": "vega.snapshot.v1.VolumeDiscountProgram", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "parties", - "description": "", - "label": "repeated", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_party_volumes", - "description": "", - "label": "repeated", - "type": "EpochPartyVolumes", - "longType": "EpochPartyVolumes", - "fullType": "vega.snapshot.v1.EpochPartyVolumes", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "epoch_data_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "average_party_volume", - "description": "", - "label": "repeated", - "type": "PartyVolume", - "longType": "PartyVolume", - "fullType": "vega.snapshot.v1.PartyVolume", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_program", - "description": "", - "label": "", - "type": "VolumeDiscountProgram", - "longType": "vega.VolumeDiscountProgram", - "fullType": "vega.VolumeDiscountProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "new_program", - "description": "", - "label": "", - "type": "VolumeDiscountProgram", - "longType": "vega.VolumeDiscountProgram", - "fullType": "vega.VolumeDiscountProgram", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "factors_by_party", - "description": "", - "label": "repeated", - "type": "VolumeDiscountStats", - "longType": "VolumeDiscountStats", - "fullType": "vega.snapshot.v1.VolumeDiscountStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_program_version", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "program_has_ended", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VolumeDiscountStats", - "longName": "VolumeDiscountStats", - "fullName": "vega.snapshot.v1.VolumeDiscountStats", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "discount_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "VoteSpamPolicy", - "longName": "VoteSpamPolicy", - "fullName": "vega.snapshot.v1.VoteSpamPolicy", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "party_to_vote", - "description": "", - "label": "repeated", - "type": "PartyProposalVoteCount", - "longType": "PartyProposalVoteCount", - "fullType": "vega.snapshot.v1.PartyProposalVoteCount", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "banned_parties", - "description": "", - "label": "repeated", - "type": "BannedParty", - "longType": "BannedParty", - "fullType": "vega.snapshot.v1.BannedParty", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "token_balance", - "description": "", - "label": "repeated", - "type": "PartyTokenBalance", - "longType": "PartyTokenBalance", - "fullType": "vega.snapshot.v1.PartyTokenBalance", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "recent_blocks_reject_stats", - "description": "", - "label": "repeated", - "type": "BlockRejectStats", - "longType": "BlockRejectStats", - "fullType": "vega.snapshot.v1.BlockRejectStats", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_block_index", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "last_increase_block", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "current_epoch_seq", - "description": "", - "label": "", - "type": "uint64", - "longType": "uint64", - "fullType": "uint64", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "min_voting_tokens_factor", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Withdrawal", - "longName": "Withdrawal", - "fullName": "vega.snapshot.v1.Withdrawal", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "ref", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "withdrawal", - "description": "", - "label": "", - "type": "Withdrawal", - "longType": "vega.Withdrawal", - "fullType": "vega.Withdrawal", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - }, - { - "name": "Witness", - "longName": "Witness", - "fullName": "vega.snapshot.v1.Witness", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": false, - "extensions": [], - "fields": [ - { - "name": "resources", - "description": "", - "label": "repeated", - "type": "Resource", - "longType": "Resource", - "fullType": "vega.snapshot.v1.Resource", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - } - ] - } - ], - "services": [] - }, - { - "name": "vega/wallet/v1/wallet.proto", - "description": "", - "package": "vega.wallet.v1", - "hasEnums": false, - "hasExtensions": false, - "hasMessages": true, - "hasServices": false, - "enums": [], - "extensions": [], - "messages": [ - { - "name": "SubmitTransactionRequest", - "longName": "SubmitTransactionRequest", - "fullName": "vega.wallet.v1.SubmitTransactionRequest", - "description": "", - "hasExtensions": false, - "hasFields": true, - "hasOneofs": true, - "extensions": [], - "fields": [ - { - "name": "pub_key", - "description": "", - "label": "", - "type": "string", - "longType": "string", - "fullType": "string", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "propagate", - "description": "", - "label": "", - "type": "bool", - "longType": "bool", - "fullType": "bool", - "ismap": false, - "isoneof": false, - "oneofdecl": "", - "defaultValue": "" - }, - { - "name": "order_submission", - "description": "User commands", - "label": "", - "type": "OrderSubmission", - "longType": "vega.commands.v1.OrderSubmission", - "fullType": "vega.commands.v1.OrderSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "order_cancellation", - "description": "", - "label": "", - "type": "OrderCancellation", - "longType": "vega.commands.v1.OrderCancellation", - "fullType": "vega.commands.v1.OrderCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "order_amendment", - "description": "", - "label": "", - "type": "OrderAmendment", - "longType": "vega.commands.v1.OrderAmendment", - "fullType": "vega.commands.v1.OrderAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "withdraw_submission", - "description": "", - "label": "", - "type": "WithdrawSubmission", - "longType": "vega.commands.v1.WithdrawSubmission", - "fullType": "vega.commands.v1.WithdrawSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "proposal_submission", - "description": "", - "label": "", - "type": "ProposalSubmission", - "longType": "vega.commands.v1.ProposalSubmission", - "fullType": "vega.commands.v1.ProposalSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "vote_submission", - "description": "", - "label": "", - "type": "VoteSubmission", - "longType": "vega.commands.v1.VoteSubmission", - "fullType": "vega.commands.v1.VoteSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "liquidity_provision_submission", - "description": "", - "label": "", - "type": "LiquidityProvisionSubmission", - "longType": "vega.commands.v1.LiquidityProvisionSubmission", - "fullType": "vega.commands.v1.LiquidityProvisionSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "delegate_submission", - "description": "", - "label": "", - "type": "DelegateSubmission", - "longType": "vega.commands.v1.DelegateSubmission", - "fullType": "vega.commands.v1.DelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "undelegate_submission", - "description": "", - "label": "", - "type": "UndelegateSubmission", - "longType": "vega.commands.v1.UndelegateSubmission", - "fullType": "vega.commands.v1.UndelegateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "liquidity_provision_cancellation", - "description": "", - "label": "", - "type": "LiquidityProvisionCancellation", - "longType": "vega.commands.v1.LiquidityProvisionCancellation", - "fullType": "vega.commands.v1.LiquidityProvisionCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "liquidity_provision_amendment", - "description": "", - "label": "", - "type": "LiquidityProvisionAmendment", - "longType": "vega.commands.v1.LiquidityProvisionAmendment", - "fullType": "vega.commands.v1.LiquidityProvisionAmendment", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "transfer", - "description": "", - "label": "", - "type": "Transfer", - "longType": "vega.commands.v1.Transfer", - "fullType": "vega.commands.v1.Transfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "cancel_transfer", - "description": "", - "label": "", - "type": "CancelTransfer", - "longType": "vega.commands.v1.CancelTransfer", - "fullType": "vega.commands.v1.CancelTransfer", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "announce_node", - "description": "", - "label": "", - "type": "AnnounceNode", - "longType": "vega.commands.v1.AnnounceNode", - "fullType": "vega.commands.v1.AnnounceNode", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "batch_market_instructions", - "description": "", - "label": "", - "type": "BatchMarketInstructions", - "longType": "vega.commands.v1.BatchMarketInstructions", - "fullType": "vega.commands.v1.BatchMarketInstructions", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "stop_orders_submission", - "description": "", - "label": "", - "type": "StopOrdersSubmission", - "longType": "vega.commands.v1.StopOrdersSubmission", - "fullType": "vega.commands.v1.StopOrdersSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "stop_orders_cancellation", - "description": "", - "label": "", - "type": "StopOrdersCancellation", - "longType": "vega.commands.v1.StopOrdersCancellation", - "fullType": "vega.commands.v1.StopOrdersCancellation", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "create_referral_set", - "description": "", - "label": "", - "type": "CreateReferralSet", - "longType": "vega.commands.v1.CreateReferralSet", - "fullType": "vega.commands.v1.CreateReferralSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "update_referral_set", - "description": "", - "label": "", - "type": "UpdateReferralSet", - "longType": "vega.commands.v1.UpdateReferralSet", - "fullType": "vega.commands.v1.UpdateReferralSet", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "apply_referral_code", - "description": "", - "label": "", - "type": "ApplyReferralCode", - "longType": "vega.commands.v1.ApplyReferralCode", - "fullType": "vega.commands.v1.ApplyReferralCode", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "update_margin_mode", - "description": "", - "label": "", - "type": "UpdateMarginMode", - "longType": "vega.commands.v1.UpdateMarginMode", - "fullType": "vega.commands.v1.UpdateMarginMode", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "join_team", - "description": "", - "label": "", - "type": "JoinTeam", - "longType": "vega.commands.v1.JoinTeam", - "fullType": "vega.commands.v1.JoinTeam", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "batch_proposal_submission", - "description": "", - "label": "", - "type": "BatchProposalSubmission", - "longType": "vega.commands.v1.BatchProposalSubmission", - "fullType": "vega.commands.v1.BatchProposalSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "update_party_profile", - "description": "", - "label": "", - "type": "UpdatePartyProfile", - "longType": "vega.commands.v1.UpdatePartyProfile", - "fullType": "vega.commands.v1.UpdatePartyProfile", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "node_vote", - "description": "Validator commands", - "label": "", - "type": "NodeVote", - "longType": "vega.commands.v1.NodeVote", - "fullType": "vega.commands.v1.NodeVote", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "node_signature", - "description": "", - "label": "", - "type": "NodeSignature", - "longType": "vega.commands.v1.NodeSignature", - "fullType": "vega.commands.v1.NodeSignature", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "chain_event", - "description": "", - "label": "", - "type": "ChainEvent", - "longType": "vega.commands.v1.ChainEvent", - "fullType": "vega.commands.v1.ChainEvent", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "key_rotate_submission", - "description": "", - "label": "", - "type": "KeyRotateSubmission", - "longType": "vega.commands.v1.KeyRotateSubmission", - "fullType": "vega.commands.v1.KeyRotateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "state_variable_proposal", - "description": "", - "label": "", - "type": "StateVariableProposal", - "longType": "vega.commands.v1.StateVariableProposal", - "fullType": "vega.commands.v1.StateVariableProposal", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "validator_heartbeat", - "description": "", - "label": "", - "type": "ValidatorHeartbeat", - "longType": "vega.commands.v1.ValidatorHeartbeat", - "fullType": "vega.commands.v1.ValidatorHeartbeat", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "ethereum_key_rotate_submission", - "description": "", - "label": "", - "type": "EthereumKeyRotateSubmission", - "longType": "vega.commands.v1.EthereumKeyRotateSubmission", - "fullType": "vega.commands.v1.EthereumKeyRotateSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "protocol_upgrade_proposal", - "description": "", - "label": "", - "type": "ProtocolUpgradeProposal", - "longType": "vega.commands.v1.ProtocolUpgradeProposal", - "fullType": "vega.commands.v1.ProtocolUpgradeProposal", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "issue_signatures", - "description": "", - "label": "", - "type": "IssueSignatures", - "longType": "vega.commands.v1.IssueSignatures", - "fullType": "vega.commands.v1.IssueSignatures", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - }, - { - "name": "oracle_data_submission", - "description": "Oracle commands", - "label": "", - "type": "OracleDataSubmission", - "longType": "vega.commands.v1.OracleDataSubmission", - "fullType": "vega.commands.v1.OracleDataSubmission", - "ismap": false, - "isoneof": true, - "oneofdecl": "command", - "defaultValue": "" - } - ] - } - ], - "services": [] - } - ], - "scalarValueTypes": [ - { - "protoType": "double", - "notes": "", - "cppType": "double", - "csType": "double", - "goType": "float64", - "javaType": "double", - "phpType": "float", - "pythonType": "float", - "rubyType": "Float" - }, - { - "protoType": "float", - "notes": "", - "cppType": "float", - "csType": "float", - "goType": "float32", - "javaType": "float", - "phpType": "float", - "pythonType": "float", - "rubyType": "Float" - }, - { - "protoType": "int32", - "notes": "Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead.", - "cppType": "int32", - "csType": "int", - "goType": "int32", - "javaType": "int", - "phpType": "integer", - "pythonType": "int", - "rubyType": "Bignum or Fixnum (as required)" - }, - { - "protoType": "int64", - "notes": "Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead.", - "cppType": "int64", - "csType": "long", - "goType": "int64", - "javaType": "long", - "phpType": "integer/string", - "pythonType": "int/long", - "rubyType": "Bignum" - }, - { - "protoType": "uint32", - "notes": "Uses variable-length encoding.", - "cppType": "uint32", - "csType": "uint", - "goType": "uint32", - "javaType": "int", - "phpType": "integer", - "pythonType": "int/long", - "rubyType": "Bignum or Fixnum (as required)" - }, - { - "protoType": "uint64", - "notes": "Uses variable-length encoding.", - "cppType": "uint64", - "csType": "ulong", - "goType": "uint64", - "javaType": "long", - "phpType": "integer/string", - "pythonType": "int/long", - "rubyType": "Bignum or Fixnum (as required)" - }, - { - "protoType": "sint32", - "notes": "Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s.", - "cppType": "int32", - "csType": "int", - "goType": "int32", - "javaType": "int", - "phpType": "integer", - "pythonType": "int", - "rubyType": "Bignum or Fixnum (as required)" - }, - { - "protoType": "sint64", - "notes": "Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s.", - "cppType": "int64", - "csType": "long", - "goType": "int64", - "javaType": "long", - "phpType": "integer/string", - "pythonType": "int/long", - "rubyType": "Bignum" - }, - { - "protoType": "fixed32", - "notes": "Always four bytes. More efficient than uint32 if values are often greater than 2^28.", - "cppType": "uint32", - "csType": "uint", - "goType": "uint32", - "javaType": "int", - "phpType": "integer", - "pythonType": "int", - "rubyType": "Bignum or Fixnum (as required)" - }, - { - "protoType": "fixed64", - "notes": "Always eight bytes. More efficient than uint64 if values are often greater than 2^56.", - "cppType": "uint64", - "csType": "ulong", - "goType": "uint64", - "javaType": "long", - "phpType": "integer/string", - "pythonType": "int/long", - "rubyType": "Bignum" - }, - { - "protoType": "sfixed32", - "notes": "Always four bytes.", - "cppType": "int32", - "csType": "int", - "goType": "int32", - "javaType": "int", - "phpType": "integer", - "pythonType": "int", - "rubyType": "Bignum or Fixnum (as required)" - }, - { - "protoType": "sfixed64", - "notes": "Always eight bytes.", - "cppType": "int64", - "csType": "long", - "goType": "int64", - "javaType": "long", - "phpType": "integer/string", - "pythonType": "int/long", - "rubyType": "Bignum" - }, - { - "protoType": "bool", - "notes": "", - "cppType": "bool", - "csType": "bool", - "goType": "bool", - "javaType": "boolean", - "phpType": "boolean", - "pythonType": "boolean", - "rubyType": "TrueClass/FalseClass" - }, - { - "protoType": "string", - "notes": "A string must always contain UTF-8 encoded or 7-bit ASCII text.", - "cppType": "string", - "csType": "string", - "goType": "string", - "javaType": "String", - "phpType": "string", - "pythonType": "str/unicode", - "rubyType": "String (UTF-8)" - }, - { - "protoType": "bytes", - "notes": "May contain any arbitrary sequence of bytes.", - "cppType": "string", - "csType": "ByteString", - "goType": "[]byte", - "javaType": "ByteString", - "phpType": "string", - "pythonType": "str", - "rubyType": "String (ASCII-8BIT)" - } - ] -} \ No newline at end of file diff --git a/specs/v0.74.0-preview.6/vega/swagger/blockexplorer/api/v1/blockexplorer.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/blockexplorer/api/v1/blockexplorer.swagger.json deleted file mode 100644 index c31322d6b..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/blockexplorer/api/v1/blockexplorer.swagger.json +++ /dev/null @@ -1,3753 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega block explorer APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "BlockExplorerService" - } - ], - "host": "lb.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "OracleDataSubmissionOracleSource": { - "type": "string", - "enum": [ - "ORACLE_SOURCE_UNSPECIFIED", - "ORACLE_SOURCE_OPEN_ORACLE", - "ORACLE_SOURCE_JSON", - "ORACLE_SOURCE_ETHEREUM" - ], - "default": "ORACLE_SOURCE_UNSPECIFIED", - "description": "- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.", - "title": "Supported oracle sources" - }, - "OrderTimeInForce": { - "type": "string", - "enum": [ - "TIME_IN_FORCE_UNSPECIFIED", - "TIME_IN_FORCE_GTC", - "TIME_IN_FORCE_GTT", - "TIME_IN_FORCE_IOC", - "TIME_IN_FORCE_FOK", - "TIME_IN_FORCE_GFA", - "TIME_IN_FORCE_GFN" - ], - "default": "TIME_IN_FORCE_UNSPECIFIED", - "description": "- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)", - "title": "Time In Force for an order" - }, - "StopOrderExpiryStrategy": { - "type": "string", - "enum": [ - "EXPIRY_STRATEGY_UNSPECIFIED", - "EXPIRY_STRATEGY_CANCELS", - "EXPIRY_STRATEGY_SUBMIT" - ], - "default": "EXPIRY_STRATEGY_UNSPECIFIED", - "description": " - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached." - }, - "StopOrderSizeOverrideSetting": { - "type": "string", - "enum": [ - "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "SIZE_OVERRIDE_SETTING_NONE", - "SIZE_OVERRIDE_SETTING_POSITION" - ], - "default": "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "title": "- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader" - }, - "StopOrderSizeOverrideValue": { - "type": "object", - "properties": { - "percentage": { - "type": "string", - "title": "Scaling percentage of the current position’s size" - } - } - }, - "UpdateMarginModeMode": { - "type": "string", - "enum": [ - "MODE_UNSPECIFIED", - "MODE_CROSS_MARGIN", - "MODE_ISOLATED_MARGIN" - ], - "default": "MODE_UNSPECIFIED", - "title": "- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "blockexplorerapiv1Transaction": { - "type": "object", - "properties": { - "block": { - "type": "string", - "format": "uint64", - "title": "Height of the block the transaction was found in" - }, - "index": { - "type": "integer", - "format": "int64", - "title": "Index of the transaction in the block" - }, - "hash": { - "type": "string", - "title": "Hash of the transaction" - }, - "submitter": { - "type": "string", - "title": "Vega public key of the transaction's submitter" - }, - "type": { - "type": "string", - "title": "Type of transaction" - }, - "code": { - "type": "integer", - "format": "int64", - "title": "Results code of the transaction. 0 indicates the transaction was successful" - }, - "cursor": { - "type": "string", - "title": "Cursor for this transaction. This is used for paginating results" - }, - "command": { - "$ref": "#/definitions/v1InputData", - "title": "Actual command of the transaction" - }, - "signature": { - "$ref": "#/definitions/v1Signature", - "title": "Signature generated by the submitter for the transaction" - }, - "error": { - "type": "string", - "title": "Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0" - }, - "createdAt": { - "type": "string", - "description": "Timestamp when the transaction happened, using RFC3399 format." - }, - "version": { - "$ref": "#/definitions/v1TxVersion", - "title": "Version format of the transaction" - }, - "pow": { - "$ref": "#/definitions/v1ProofOfWork", - "title": "Proof of Work parameters of the transaction" - } - } - }, - "commandsv1CancelTransfer": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer ID of the transfer to cancel." - } - }, - "description": "Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction." - }, - "commandsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account." - } - }, - "description": "Details for a one-off transfer." - }, - "commandsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64", - "description": "First epoch from which this transfer shall be executed." - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be executed." - }, - "factor": { - "type": "string", - "description": "Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Details for a recurring transfer" - }, - "commandsv1Transfer": { - "type": "object", - "properties": { - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type from which the funds of the party should be taken." - }, - "to": { - "type": "string", - "description": "Public key of the destination account." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the destination account." - }, - "asset": { - "type": "string", - "description": "Asset ID of the asset to be transferred." - }, - "amount": { - "type": "string", - "description": "Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places." - }, - "reference": { - "type": "string", - "description": "Reference to be attached to the transfer." - }, - "oneOff": { - "$ref": "#/definitions/commandsv1OneOffTransfer", - "description": "Details of a one-off transfer that is executed once at a specified time." - }, - "recurring": { - "$ref": "#/definitions/commandsv1RecurringTransfer", - "description": "Details of a transfer that is executed once every epoch until stopped." - } - }, - "title": "Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`" - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1AnnounceNode": { - "type": "object", - "properties": { - "vegaPubKey": { - "type": "string", - "description": "Vega public key of the node being announced." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node being announced." - }, - "chainPubKey": { - "type": "string", - "description": "Public key for the blockchain, currently the node's CometBFT key." - }, - "infoUrl": { - "type": "string", - "description": "URL to the node operators homepage allowing stake holders to make an informed decision when delegating." - }, - "country": { - "type": "string", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node." - }, - "id": { - "type": "string", - "description": "Node ID of the validator, which is the node's public master key." - }, - "name": { - "type": "string", - "description": "Human-readable name of the node." - }, - "avatarUrl": { - "type": "string", - "description": "URL to the node operator's avatar." - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "Vega public key derivation index." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch from which the node is expected to be ready to validate blocks." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the Vega wallet." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - } - }, - "description": "A command that allows a new node operator to announce themselves to the network as a new validator." - }, - "v1ApplyReferralCode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Referral code, normally the referral set ID, for the party to join." - } - }, - "description": "Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch." - }, - "v1BatchMarketInstructions": { - "type": "object", - "properties": { - "cancellations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "description": "List of order cancellations to be processed sequentially." - }, - "amendments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "description": "List of order amendments to be processed sequentially." - }, - "submissions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "description": "List of order submissions to be processed sequentially." - }, - "stopOrdersCancellation": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "description": "List of stop order cancellations to be processed sequentially." - }, - "stopOrdersSubmission": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "description": "List of stop order submissions to be processed sequentially." - }, - "updateMarginMode": { - "type": "array", - "items": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "title": "Update margin mode instruction" - } - }, - "description": "A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\"." - }, - "v1BatchProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/v1BatchProposalSubmissionTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it." - }, - "v1BatchProposalSubmissionTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal submission" - }, - "v1ChainEvent": { - "type": "object", - "properties": { - "txId": { - "type": "string", - "description": "ID of the transaction on the foreign chain that caused the event." - }, - "nonce": { - "type": "string", - "format": "uint64", - "description": "Arbitrary one-time integer used to prevent replay attacks." - }, - "builtin": { - "$ref": "#/definitions/vegaBuiltinAssetEvent", - "description": "Built-in asset event." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Event", - "description": "Ethereum ERC20 event." - }, - "stakingEvent": { - "$ref": "#/definitions/vegaStakingEvent", - "description": "Ethereum Staking event." - }, - "erc20Multisig": { - "$ref": "#/definitions/vegaERC20MultiSigEvent", - "description": "Ethereum ERC20 multisig event." - }, - "contractCall": { - "$ref": "#/definitions/vegaEthContractCallEvent", - "description": "Ethereum contract call event." - } - }, - "description": "A validator command sent automatically that provides information of events that have happened on foreign chains." - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1CreateReferralSet": { - "type": "object", - "properties": { - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1CreateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set." - }, - "v1CreateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "External link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "External link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1DelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to delegate stake to." - }, - "amount": { - "type": "string", - "description": "Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places." - } - }, - "description": "Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator." - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1EthereumKeyRotateSubmission": { - "type": "object", - "properties": { - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newAddress": { - "type": "string", - "description": "Ethereum address that is being rotated to." - }, - "currentAddress": { - "type": "string", - "description": "Ethereum address of the node's current Ethereum keys." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature signed by the new Ethereum key that can be verified to prove ownership." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated." - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1GetTransactionResponse": { - "type": "object", - "properties": { - "transaction": { - "$ref": "#/definitions/blockexplorerapiv1Transaction", - "title": "Transaction corresponding to the hash" - } - } - }, - "v1IcebergOpts": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is made visible and can be traded with during the execution of a single order." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "Minimum allowed remaining size of the order before it is replenished back to its peak size." - } - }, - "title": "Iceberg order options" - }, - "v1InfoResponse": { - "type": "object", - "properties": { - "version": { - "type": "string", - "title": "Semver formatted version of the data node" - }, - "commitHash": { - "type": "string", - "title": "Commit hash from which the data node was built" - } - } - }, - "v1InputData": { - "type": "object", - "properties": { - "nonce": { - "type": "string", - "format": "uint64", - "description": "Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height which has been used to calculate the transaction proof-of-work." - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Command to submit an order." - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation", - "description": "Command to cancel an order." - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment", - "description": "Command to amend an order." - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission", - "description": "Command to submit a withdrawal." - }, - "proposalSubmission": { - "$ref": "#/definitions/v1ProposalSubmission", - "description": "Command to submit a governance proposal." - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission", - "description": "Command to submit a vote on a governance proposal." - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission", - "description": "Command to submit a liquidity commitment." - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission", - "description": "Command to delegate tokens to a validator." - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission", - "description": "Command to remove tokens delegated to a validator." - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation", - "description": "Command to cancel a liquidity commitment." - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment", - "description": "Command to amend a liquidity commitment." - }, - "transfer": { - "$ref": "#/definitions/commandsv1Transfer", - "description": "Command to submit a transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer", - "description": "Command to cancel a recurring transfer." - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode", - "description": "Command used by a node operator to announce its node as a pending validator." - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions", - "description": "Command to submit a batch of order instructions." - }, - "stopOrdersSubmission": { - "$ref": "#/definitions/v1StopOrdersSubmission", - "description": "Command to submit a pair of stop orders." - }, - "stopOrdersCancellation": { - "$ref": "#/definitions/v1StopOrdersCancellation", - "description": "Command to cancel stop orders." - }, - "createReferralSet": { - "$ref": "#/definitions/v1CreateReferralSet", - "description": "Command to create a referral set." - }, - "updateReferralSet": { - "$ref": "#/definitions/v1UpdateReferralSet", - "description": "Command to update a referral set." - }, - "applyReferralCode": { - "$ref": "#/definitions/v1ApplyReferralCode", - "description": "Command to apply a referral code." - }, - "updateMarginMode": { - "$ref": "#/definitions/v1UpdateMarginMode", - "description": "Command to update the margin mode of a party in a market." - }, - "joinTeam": { - "$ref": "#/definitions/v1JoinTeam", - "description": "Command to join a team." - }, - "nodeVote": { - "$ref": "#/definitions/v1NodeVote", - "description": "Validator command sent automatically to vote on that validity of an external resource." - }, - "nodeSignature": { - "$ref": "#/definitions/v1NodeSignature", - "description": "Validator command sent automatically to provide signatures for the Ethereum bridge." - }, - "chainEvent": { - "$ref": "#/definitions/v1ChainEvent", - "description": "Validator command sent automatically to notify the Vega chain of an off-chain event." - }, - "keyRotateSubmission": { - "$ref": "#/definitions/v1KeyRotateSubmission", - "description": "Validator command sent manually by a node operator to rotate their node's Vega keys." - }, - "stateVariableProposal": { - "$ref": "#/definitions/v1StateVariableProposal", - "description": "Validator command sent automatically to reach consensus on floating point values." - }, - "validatorHeartbeat": { - "$ref": "#/definitions/v1ValidatorHeartbeat", - "description": "Validator command sent automatically to signal regular participation in the network." - }, - "ethereumKeyRotateSubmission": { - "$ref": "#/definitions/v1EthereumKeyRotateSubmission", - "description": "Validator command sent manually by a node operator to rotate their node's Ethereum keys." - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal", - "description": "Validator command sent manually to propose a protocol upgrade." - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures", - "description": "Command to request signatures to amend the multisig-control contract." - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission", - "description": "Command to submit external oracle data." - }, - "batchProposalSubmission": { - "$ref": "#/definitions/v1BatchProposalSubmission", - "description": "Command to submit a batch governance proposal." - }, - "updatePartyProfile": { - "$ref": "#/definitions/v1UpdatePartyProfile", - "description": "Command to update a party's profile." - } - }, - "description": "Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message." - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1IssueSignatures": { - "type": "object", - "properties": { - "submitter": { - "type": "string", - "description": "Ethereum address which will submit the signatures to the smart contract." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "What kind of signatures to generate, namely for whether a signer is being added or removed." - }, - "validatorNodeId": { - "type": "string", - "description": "Node ID of the validator node that will be signed in or out of the smart contract." - } - }, - "description": "Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command." - }, - "v1JoinTeam": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the team to join, this is the same as the referral code used to generate the team." - } - }, - "description": "Command that allows the submitter to join a team or change teams if they are already a member of a team." - }, - "v1KeyRotateSubmission": { - "type": "object", - "properties": { - "newPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "New Vega public key derivation index." - }, - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newPubKey": { - "type": "string", - "description": "Vega public key that would be rotated to." - }, - "currentPubKeyHash": { - "type": "string", - "description": "Hash of the node's current Vega public key." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated." - }, - "v1LiquidityProvisionAmendment": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wants to amend the liquidity commitment for." - }, - "commitmentAmount": { - "type": "string", - "description": "New commitment amount." - }, - "fee": { - "type": "string", - "description": "New nominated liquidity fee factor." - }, - "reference": { - "type": "string", - "description": "New arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged." - }, - "v1LiquidityProvisionCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter will stop providing liquidity for." - } - }, - "description": "Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market." - }, - "v1LiquidityProvisionSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wishes to provide liquidity for." - }, - "commitmentAmount": { - "type": "string", - "description": "Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "reference": { - "type": "string", - "description": "Arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market." - }, - "v1ListTransactionsResponse": { - "type": "object", - "properties": { - "transactions": { - "type": "array", - "items": { - "$ref": "#/definitions/blockexplorerapiv1Transaction" - }, - "title": "Transaction corresponding to the specific request and filters" - } - } - }, - "v1NodeSignature": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the resource that the signature relates to." - }, - "sig": { - "type": "string", - "format": "byte", - "description": "Signature generated by the node." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "Kind of resource being signed." - } - }, - "description": "A validator command sent automatically containing a signature that can be used on a foreign chain to process an action." - }, - "v1NodeSignatureKind": { - "type": "string", - "enum": [ - "NODE_SIGNATURE_KIND_UNSPECIFIED", - "NODE_SIGNATURE_KIND_ASSET_NEW", - "NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED", - "NODE_SIGNATURE_KIND_ASSET_UPDATE" - ], - "default": "NODE_SIGNATURE_KIND_UNSPECIFIED", - "description": "- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.", - "title": "Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc" - }, - "v1NodeVote": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Reference identifying the resource that has been verified." - }, - "type": { - "$ref": "#/definitions/v1NodeVoteType", - "description": "Type of external event that has been verified." - } - }, - "description": "A validator command which is sent automatically by a node when it has verified a resource external to the network." - }, - "v1NodeVoteType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_STAKE_DEPOSITED", - "TYPE_STAKE_REMOVED", - "TYPE_FUNDS_DEPOSITED", - "TYPE_SIGNER_ADDED", - "TYPE_SIGNER_REMOVED", - "TYPE_BRIDGE_STOPPED", - "TYPE_BRIDGE_RESUMED", - "TYPE_ASSET_LISTED", - "TYPE_LIMITS_UPDATED", - "TYPE_STAKE_TOTAL_SUPPLY", - "TYPE_SIGNER_THRESHOLD_SET", - "TYPE_GOVERNANCE_VALIDATE_ASSET", - "TYPE_ETHEREUM_CONTRACT_CALL_RESULT" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Represents an unspecified or missing value from the input\n - TYPE_STAKE_DEPOSITED: Node vote for a new stake deposit\n - TYPE_STAKE_REMOVED: Node vote for a new stake removed event\n - TYPE_FUNDS_DEPOSITED: Node vote for a new collateral deposit\n - TYPE_SIGNER_ADDED: Node vote for a new signer added to the erc20 bridge\n - TYPE_SIGNER_REMOVED: Node vote for a signer removed from the erc20 bridge\n - TYPE_BRIDGE_STOPPED: Node vote for a bridge stopped event\n - TYPE_BRIDGE_RESUMED: Node vote for a bridge resumed event\n - TYPE_ASSET_LISTED: Node vote for a newly listed asset\n - TYPE_LIMITS_UPDATED: Node vote for an asset limits update\n - TYPE_STAKE_TOTAL_SUPPLY: Node vote to share the total supply of the staking token\n - TYPE_SIGNER_THRESHOLD_SET: Node vote to update the threshold of the signer set for the multisig contract\n - TYPE_GOVERNANCE_VALIDATE_ASSET: Node vote to validate a new assert governance proposal\n - TYPE_ETHEREUM_CONTRACT_CALL_RESULT: Node vote for an Ethereum contract call result" - }, - "v1OracleDataSubmission": { - "type": "object", - "properties": { - "source": { - "$ref": "#/definitions/OracleDataSubmissionOracleSource", - "description": "Source from which the data is coming from." - }, - "payload": { - "type": "string", - "format": "byte", - "description": "Data provided by the data source." - } - }, - "title": "Command to submit new oracle data from third party providers" - }, - "v1OrderAmendment": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "ID of the order to amend." - }, - "marketId": { - "type": "string", - "description": "Market ID that the order was originally submitted to." - }, - "price": { - "type": "string", - "description": "New price for the order. This field is an unsigned integer scaled to the market's decimal places." - }, - "sizeDelta": { - "type": "string", - "format": "int64", - "description": "Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for the new expiry time for the order." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "New time in force for the order." - }, - "peggedOffset": { - "type": "string", - "description": "New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "peggedReference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "New pegged reference for the order." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0." - } - }, - "description": "A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command." - }, - "v1OrderCancellation": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided." - }, - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - } - }, - "description": "A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command." - }, - "v1OrderSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID to submit the order to." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of units." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Which side of the order book the order is for, e.g. buy or sell." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "Time in force indicates how long an order will remain active before it is executed or expires.." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT." - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type of the order." - }, - "reference": { - "type": "string", - "description": "Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times." - }, - "postOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders." - }, - "reduceOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders." - }, - "icebergOpts": { - "$ref": "#/definitions/v1IcebergOpts", - "description": "Iceberg order details. If set, the order will exist on the order book in chunks." - } - }, - "description": "A command that submits an order to the Vega network for a given market." - }, - "v1ProofOfWork": { - "type": "object", - "properties": { - "tid": { - "type": "string", - "description": "Unique transaction identifier used to seed the proof-of-work hash." - }, - "nonce": { - "type": "string", - "format": "uint64", - "description": "Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network." - } - }, - "description": "Components needed for the network to verify proof-of-work." - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1ProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market." - }, - "v1ProtocolUpgradeProposal": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height at which to perform the upgrade." - }, - "vegaReleaseTag": { - "type": "string", - "description": "Release tag for the Vega binary." - } - }, - "description": "A validator command sent manually by a node operator to propose a protocol upgrade." - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1Signature": { - "type": "object", - "properties": { - "value": { - "type": "string", - "description": "Hex encoded bytes of the signature." - }, - "algo": { - "type": "string", - "description": "Algorithm used to create the signature." - }, - "version": { - "type": "integer", - "format": "int64", - "description": "Version of the algorithm used to create the signature." - } - }, - "description": "Signature definition that allows the network to authenticate external data." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1StateVariableProposal": { - "type": "object", - "properties": { - "proposal": { - "$ref": "#/definitions/vegaStateValueProposal", - "description": "Details of the state variable being proposed." - } - }, - "description": "A validator command sent automatically to reach consensus on floating point values." - }, - "v1StopOrderSetup": { - "type": "object", - "properties": { - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Order to be submitted once the trigger is breached." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Indicates if this order is linked to an order or position to derive the order size" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "If this order is linked to a position, provide an optional scaling factor" - }, - "price": { - "type": "string", - "description": "Order will be submitted if the last traded price on the market breaches the given price." - }, - "trailingPercentOffset": { - "type": "string", - "description": "Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted." - } - }, - "description": "Price and expiry configuration for a stop order." - }, - "v1StopOrdersCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - }, - "stopOrderId": { - "type": "string", - "description": "Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided." - } - }, - "description": "A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command." - }, - "v1StopOrdersSubmission": { - "type": "object", - "properties": { - "risesAbove": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price rises above a given trigger price." - }, - "fallsBelow": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price falls below a given trigger price." - } - }, - "description": "A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO)." - }, - "v1TxVersion": { - "type": "string", - "enum": [ - "TX_VERSION_UNSPECIFIED", - "TX_VERSION_V2", - "TX_VERSION_V3" - ], - "default": "TX_VERSION_UNSPECIFIED", - "description": "Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks." - }, - "v1UndelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to undelegate stake from." - }, - "amount": { - "type": "string", - "description": "Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed." - }, - "method": { - "$ref": "#/definitions/v1UndelegateSubmissionMethod", - "description": "Method of delegation." - } - }, - "description": "Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node." - }, - "v1UndelegateSubmissionMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_NOW", - "METHOD_AT_END_OF_EPOCH" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch." - }, - "v1UpdateMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market to change margin mode for." - }, - "mode": { - "$ref": "#/definitions/UpdateMarginModeMode", - "description": "Margin mode to use." - }, - "marginFactor": { - "type": "string", - "title": "Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside" - } - } - }, - "v1UpdatePartyProfile": { - "type": "object", - "properties": { - "alias": { - "type": "string", - "description": "Alias given to the party. It must be unique network-wide." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Freeform data to associate to the party.\nSupport a maximum of 10 entries." - } - }, - "description": "Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed." - }, - "v1UpdateReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the referral set to update." - }, - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1UpdateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged." - }, - "v1UpdateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "New name of the team." - }, - "teamUrl": { - "type": "string", - "description": "New link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "New link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1ValidatorHeartbeat": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID of the validator emitting the heartbeat." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the validator made using their Ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the validator made using their Vega wallet." - }, - "message": { - "type": "string", - "description": "Message which has been signed." - } - }, - "description": "A validator command which is sent automatically at regular intervals by any validator participating in the network.\nIt is used to allow the network to know whether a validator is active, or if they have shut down." - }, - "v1VoteSubmission": { - "type": "object", - "properties": { - "proposalId": { - "type": "string", - "description": "Submit vote for the specified proposal ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Actual value of the vote." - } - }, - "description": "Command that allows a token holder to vote for or against an active governance proposal." - }, - "v1WithdrawSubmission": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "description": "Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to be withdrawn." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Details specific to the foreign chain, such as the receiver address." - } - }, - "description": "Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge." - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaBuiltinAssetDeposit": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "partyId": { - "type": "string", - "description": "Vega party ID i.e. public key." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Deposit for a Vega built-in asset" - }, - "vegaBuiltinAssetEvent": { - "type": "object", - "properties": { - "deposit": { - "$ref": "#/definitions/vegaBuiltinAssetDeposit", - "description": "Built-in asset deposit." - }, - "withdrawal": { - "$ref": "#/definitions/vegaBuiltinAssetWithdrawal", - "description": "Built-in asset withdrawal." - } - }, - "title": "Event related to a Vega built-in asset" - }, - "vegaBuiltinAssetWithdrawal": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "partyId": { - "type": "string", - "description": "Vega network party ID i.e. public key." - }, - "amount": { - "type": "string", - "description": "The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Withdrawal for a Vega built-in asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20AssetDelist": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - } - }, - "title": "Asset deny-listing for an ERC20 token" - }, - "vegaERC20AssetLimitsUpdated": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "sourceEthereumAddress": { - "type": "string", - "description": "Ethereum wallet that initiated the deposit." - }, - "lifetimeLimits": { - "type": "string", - "description": "Updated lifetime limits." - }, - "withdrawThreshold": { - "type": "string", - "description": "Updated withdrawal threshold." - } - } - }, - "vegaERC20AssetList": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "assetSource": { - "type": "string", - "description": "Ethereum address of the asset." - } - }, - "title": "Asset allow-listing for an ERC20 token" - }, - "vegaERC20Deposit": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "sourceEthereumAddress": { - "type": "string", - "description": "Ethereum wallet that initiated the deposit." - }, - "targetPartyId": { - "type": "string", - "description": "Vega party ID i.e. public key that is the target of the deposit." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited." - } - }, - "title": "Asset deposit for an ERC20 token" - }, - "vegaERC20Event": { - "type": "object", - "properties": { - "index": { - "type": "string", - "format": "uint64", - "description": "Index of the log in the transaction." - }, - "block": { - "type": "string", - "format": "uint64", - "description": "Block in which the transaction was added." - }, - "assetList": { - "$ref": "#/definitions/vegaERC20AssetList", - "description": "List an ERC20 asset." - }, - "assetDelist": { - "$ref": "#/definitions/vegaERC20AssetDelist", - "description": "De-list an ERC20 asset." - }, - "deposit": { - "$ref": "#/definitions/vegaERC20Deposit", - "description": "Deposit ERC20 asset." - }, - "withdrawal": { - "$ref": "#/definitions/vegaERC20Withdrawal", - "description": "Withdraw ERC20 asset." - }, - "assetLimitsUpdated": { - "$ref": "#/definitions/vegaERC20AssetLimitsUpdated", - "description": "Update an ERC20 asset." - }, - "bridgeStopped": { - "type": "boolean", - "description": "Bridge operations has been stopped." - }, - "bridgeResumed": { - "type": "boolean", - "description": "Bridge operations has been resumed." - } - }, - "title": "Event related to an ERC20 token" - }, - "vegaERC20MultiSigEvent": { - "type": "object", - "properties": { - "index": { - "type": "string", - "format": "uint64", - "title": "Index of the log in the transaction" - }, - "block": { - "type": "string", - "format": "uint64", - "title": "Block in which the transaction was added" - }, - "signerAdded": { - "$ref": "#/definitions/vegaERC20SignerAdded", - "title": "Add a signer to the erc20 bridge" - }, - "signerRemoved": { - "$ref": "#/definitions/vegaERC20SignerRemoved", - "title": "Remove a signer from the erc20 bridge" - }, - "thresholdSet": { - "$ref": "#/definitions/vegaERC20ThresholdSet", - "title": "Threshold set" - } - }, - "title": "Event related to the ERC20 MultiSig" - }, - "vegaERC20SignerAdded": { - "type": "object", - "properties": { - "newSigner": { - "type": "string", - "title": "Ethereum address of the new signer" - }, - "nonce": { - "type": "string", - "title": "Nonce created by the Vega network used for this new signer" - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable." - } - }, - "title": "New signer added to the ERC20 bridge" - }, - "vegaERC20SignerRemoved": { - "type": "object", - "properties": { - "oldSigner": { - "type": "string", - "title": "Ethereum address of the old signer" - }, - "nonce": { - "type": "string", - "title": "Nonce created by the Vega network used for this old signer" - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable." - } - }, - "title": "Signer removed from the ERC20 bridge" - }, - "vegaERC20ThresholdSet": { - "type": "object", - "properties": { - "newThreshold": { - "type": "integer", - "format": "int64", - "title": "New threshold value to set" - }, - "nonce": { - "type": "string", - "title": "Nonce created by the Vega network" - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable." - } - }, - "title": "Threshold has been updated on the multisig control" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaERC20Withdrawal": { - "type": "object", - "properties": { - "vegaAssetId": { - "type": "string", - "description": "Vega network internal asset ID." - }, - "targetEthereumAddress": { - "type": "string", - "description": "Target Ethereum wallet address." - }, - "referenceNonce": { - "type": "string", - "description": "Reference nonce used for the transaction." - } - }, - "title": "Asset withdrawal for an ERC20 token" - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaErc20WithdrawExt": { - "type": "object", - "properties": { - "receiverAddress": { - "type": "string", - "description": "Address into which the bridge will release the funds." - } - }, - "title": "Extension of data required for the withdraw submissions" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthContractCallEvent": { - "type": "object", - "properties": { - "specId": { - "type": "string", - "description": "ID of the data source spec that triggered this contract call." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Ethereum block height." - }, - "blockTime": { - "type": "string", - "format": "uint64", - "description": "Ethereum block time in Unix seconds." - }, - "result": { - "type": "string", - "format": "byte", - "description": "Result of contract call, packed according to the ABI stored in the associated data source spec." - }, - "error": { - "type": "string", - "description": "Error message if the call failed." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "Source chain for this chain event." - } - }, - "title": "Result of calling an arbitrary Ethereum contract method" - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaKeyValueBundle": { - "type": "object", - "properties": { - "key": { - "type": "string" - }, - "tolerance": { - "type": "string" - }, - "value": { - "$ref": "#/definitions/vegaStateVarValue" - } - } - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMatrixValue": { - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVectorValue" - } - } - } - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaOrderType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LIMIT", - "TYPE_MARKET", - "TYPE_NETWORK" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)", - "title": "Type values for an order" - }, - "vegaPeggedOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Price point the order is linked to." - }, - "offset": { - "type": "string", - "description": "Offset from the price reference." - } - }, - "title": "Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading" - }, - "vegaPeggedReference": { - "type": "string", - "enum": [ - "PEGGED_REFERENCE_UNSPECIFIED", - "PEGGED_REFERENCE_MID", - "PEGGED_REFERENCE_BEST_BID", - "PEGGED_REFERENCE_BEST_ASK" - ], - "default": "PEGGED_REFERENCE_UNSPECIFIED", - "description": "- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference", - "title": "Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point" - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaScalarValue": { - "type": "object", - "properties": { - "value": { - "type": "string" - } - } - }, - "vegaSide": { - "type": "string", - "enum": [ - "SIDE_UNSPECIFIED", - "SIDE_BUY", - "SIDE_SELL" - ], - "default": "SIDE_UNSPECIFIED", - "description": "- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order", - "title": "Side relates to the direction of an order, to Buy, or Sell" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakeDeposited": { - "type": "object", - "properties": { - "ethereumAddress": { - "type": "string", - "title": "Ethereum Address of the user depositing stake (hex encode with 0x prefix)" - }, - "vegaPublicKey": { - "type": "string", - "description": "Hex encoded public key of the party receiving the stake deposit." - }, - "amount": { - "type": "string", - "description": "Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available." - } - } - }, - "vegaStakeRemoved": { - "type": "object", - "properties": { - "ethereumAddress": { - "type": "string", - "description": "Ethereum address of the user removing stake. This should be hex encoded with 0x prefix." - }, - "vegaPublicKey": { - "type": "string", - "description": "Hex encoded public key of the party from which to remove stake." - }, - "amount": { - "type": "string", - "description": "Amount removed as a base 10 unsigned integer scaled to the asset's decimal places." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable." - } - } - }, - "vegaStakeTotalSupply": { - "type": "object", - "properties": { - "tokenAddress": { - "type": "string", - "title": "Address of the staking asset" - }, - "totalSupply": { - "type": "string", - "description": "Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places." - } - } - }, - "vegaStakingEvent": { - "type": "object", - "properties": { - "index": { - "type": "string", - "format": "uint64", - "description": "Index of the log in the transaction." - }, - "block": { - "type": "string", - "format": "uint64", - "description": "Block in which the transaction was added." - }, - "stakeDeposited": { - "$ref": "#/definitions/vegaStakeDeposited" - }, - "stakeRemoved": { - "$ref": "#/definitions/vegaStakeRemoved" - }, - "totalSupply": { - "$ref": "#/definitions/vegaStakeTotalSupply" - } - }, - "description": "Event related to staking on the Vega network." - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaStateValueProposal": { - "type": "object", - "properties": { - "stateVarId": { - "type": "string", - "description": "State variable ID." - }, - "eventId": { - "type": "string", - "description": "Event ID." - }, - "kvb": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaKeyValueBundle" - }, - "description": "Key value tolerance triplets." - } - } - }, - "vegaStateVarValue": { - "type": "object", - "properties": { - "scalarVal": { - "$ref": "#/definitions/vegaScalarValue" - }, - "vectorVal": { - "$ref": "#/definitions/vegaVectorValue" - }, - "matrixVal": { - "$ref": "#/definitions/vegaMatrixValue" - } - } - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaVectorValue": { - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - }, - "vegaWithdrawExt": { - "type": "object", - "properties": { - "erc20": { - "$ref": "#/definitions/vegaErc20WithdrawExt", - "description": "ERC20 withdrawal details." - } - }, - "title": "Withdrawal external details" - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/data-node/api/v2/trading_data.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/data-node/api/v2/trading_data.swagger.json deleted file mode 100644 index 2a5dc57e0..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/data-node/api/v2/trading_data.swagger.json +++ /dev/null @@ -1,13191 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "Vega data node APIs", - "version": "v0.74.0-preview.6" - }, - "tags": [ - { - "name": "TradingDataService" - } - ], - "host": "https://api.testnet.vega.xyz", - "schemes": [ - "http", - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "ConditionOperator": { - "type": "string", - "enum": [ - "OPERATOR_UNSPECIFIED", - "OPERATOR_EQUALS", - "OPERATOR_GREATER_THAN", - "OPERATOR_GREATER_THAN_OR_EQUAL", - "OPERATOR_LESS_THAN", - "OPERATOR_LESS_THAN_OR_EQUAL" - ], - "default": "OPERATOR_UNSPECIFIED", - "description": "Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue." - }, - "FundingPeriodDataPointSource": { - "type": "string", - "enum": [ - "SOURCE_UNSPECIFIED", - "SOURCE_EXTERNAL", - "SOURCE_INTERNAL" - ], - "default": "SOURCE_UNSPECIFIED", - "description": " - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market." - }, - "ListTransfersRequestScope": { - "type": "string", - "enum": [ - "SCOPE_UNSPECIFIED", - "SCOPE_INDIVIDUAL", - "SCOPE_TEAM" - ], - "default": "SCOPE_UNSPECIFIED", - "description": "Defines the types of a dispatch strategy's scope the API can filter on.\n\n - SCOPE_INDIVIDUAL: Matches transfers that have dispatch strategy scope of individual set.\n - SCOPE_TEAM: Matches transfers that have dispatch strategy scope of team set." - }, - "MarketTradingMode": { - "type": "string", - "enum": [ - "TRADING_MODE_UNSPECIFIED", - "TRADING_MODE_CONTINUOUS", - "TRADING_MODE_BATCH_AUCTION", - "TRADING_MODE_OPENING_AUCTION", - "TRADING_MODE_MONITORING_AUCTION", - "TRADING_MODE_NO_TRADING", - "TRADING_MODE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "TRADING_MODE_UNSPECIFIED", - "description": "- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance", - "title": "Trading mode the market is currently running, also referred to as 'market state'" - }, - "OracleDataSubmissionOracleSource": { - "type": "string", - "enum": [ - "ORACLE_SOURCE_UNSPECIFIED", - "ORACLE_SOURCE_OPEN_ORACLE", - "ORACLE_SOURCE_JSON", - "ORACLE_SOURCE_ETHEREUM" - ], - "default": "ORACLE_SOURCE_UNSPECIFIED", - "description": "- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.", - "title": "Supported oracle sources" - }, - "OrderTimeInForce": { - "type": "string", - "enum": [ - "TIME_IN_FORCE_UNSPECIFIED", - "TIME_IN_FORCE_GTC", - "TIME_IN_FORCE_GTT", - "TIME_IN_FORCE_IOC", - "TIME_IN_FORCE_FOK", - "TIME_IN_FORCE_GFA", - "TIME_IN_FORCE_GFN" - ], - "default": "TIME_IN_FORCE_UNSPECIFIED", - "description": "- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)", - "title": "Time In Force for an order" - }, - "StopOrderExpiryStrategy": { - "type": "string", - "enum": [ - "EXPIRY_STRATEGY_UNSPECIFIED", - "EXPIRY_STRATEGY_CANCELS", - "EXPIRY_STRATEGY_SUBMIT" - ], - "default": "EXPIRY_STRATEGY_UNSPECIFIED", - "description": " - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached." - }, - "StopOrderRejectionReason": { - "type": "string", - "enum": [ - "REJECTION_REASON_UNSPECIFIED", - "REJECTION_REASON_TRADING_NOT_ALLOWED", - "REJECTION_REASON_EXPIRY_IN_THE_PAST", - "REJECTION_REASON_MUST_BE_REDUCE_ONLY", - "REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION", - "REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION", - "REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID", - "REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION", - "REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES" - ], - "default": "REJECTION_REASON_UNSPECIFIED", - "title": "- REJECTION_REASON_UNSPECIFIED: Never valid\n - REJECTION_REASON_TRADING_NOT_ALLOWED: Trading is not allowed yet\n - REJECTION_REASON_EXPIRY_IN_THE_PAST: Expiry of the stop order is in the past\n - REJECTION_REASON_MUST_BE_REDUCE_ONLY: Stop orders submission must be reduce only\n - REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED: Party has reached the maximum stop orders allowed for this market\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION: Stop orders are not allowed if there is no open position\n - REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION: This stop order does not close the position\n - REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID: The percentage value for the linked stop order is invalid\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION: Stop orders are not allowed during the opening auction\n - REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES: Stop OCO orders cannot have the same expiry timestamp" - }, - "StopOrderSizeOverrideSetting": { - "type": "string", - "enum": [ - "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "SIZE_OVERRIDE_SETTING_NONE", - "SIZE_OVERRIDE_SETTING_POSITION" - ], - "default": "SIZE_OVERRIDE_SETTING_UNSPECIFIED", - "title": "- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader" - }, - "StopOrderSizeOverrideValue": { - "type": "object", - "properties": { - "percentage": { - "type": "string", - "title": "Scaling percentage of the current position’s size" - } - } - }, - "StopOrderTriggerDirection": { - "type": "string", - "enum": [ - "TRIGGER_DIRECTION_UNSPECIFIED", - "TRIGGER_DIRECTION_RISES_ABOVE", - "TRIGGER_DIRECTION_FALLS_BELOW" - ], - "default": "TRIGGER_DIRECTION_UNSPECIFIED", - "title": "- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level" - }, - "TransactionResultFailureDetails": { - "type": "object", - "properties": { - "error": { - "type": "string", - "title": "Error message explaining the reason for the transaction failing processing" - } - } - }, - "TransactionResultSuccessDetails": { - "type": "object" - }, - "UpdateMarginModeMode": { - "type": "string", - "enum": [ - "MODE_UNSPECIFIED", - "MODE_CROSS_MARGIN", - "MODE_ISOLATED_MARGIN" - ], - "default": "MODE_UNSPECIFIED", - "title": "- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "apiHttpBody": { - "type": "object", - "properties": { - "contentType": { - "type": "string", - "description": "The HTTP Content-Type header value specifying the content type of the body." - }, - "data": { - "type": "string", - "format": "byte", - "description": "The HTTP request/response body as raw binary." - }, - "extensions": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - }, - "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs." - } - }, - "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged." - }, - "apiv2Candle": { - "type": "object", - "properties": { - "start": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened." - }, - "lastUpdate": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for the point in time when the candle was last updated." - }, - "high": { - "type": "string", - "description": "Highest price for trading during the candle interval." - }, - "low": { - "type": "string", - "description": "Lowest price for trading during the candle interval." - }, - "open": { - "type": "string", - "description": "Open trade price." - }, - "close": { - "type": "string", - "description": "Closing trade price." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Total trading volume during the candle interval." - }, - "notional": { - "type": "string", - "format": "uint64", - "description": "Total notional value traded during the candle interval." - } - }, - "title": "Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle" - }, - "apiv2FundingPayment": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party that received the funding payment." - }, - "marketId": { - "type": "string", - "description": "Market that produced the funding payment." - }, - "fundingPeriodSeq": { - "type": "string", - "format": "uint64", - "description": "Funding period sequence this payment was calculated from." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, at which this funding payment occured." - }, - "amount": { - "type": "string", - "description": "Funding payment amount, where a positive value indicates an earned payment received and a negative value a loss." - } - }, - "title": "A funding payment for a party on a perpetual market" - }, - "apiv2LiquidityProvision": { - "type": "object", - "properties": { - "current": { - "$ref": "#/definitions/vegaLiquidityProvision", - "description": "Liquidity provision that is currently live." - }, - "pending": { - "$ref": "#/definitions/vegaLiquidityProvision", - "description": "Liquidity provision that is currently pending and will go live in the next epoch." - } - }, - "description": "Liquidity provider commitment. For API purposes this can report a pending liquidity provision,\nthe current live provision or both in the event that an update has been accepted on the network, but has yet\nto go live and thus there is still a pending provision that will become active in the next epoch." - }, - "apiv2ReferralProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined tiers in increasing order. First element will give Tier 1, second\nelement will give Tier 2, and so on." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends, the\nprogram will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which the referral set's running volume is evaluated." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the program ended." - } - }, - "description": "Referral program details." - }, - "apiv2Team": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "ID of the created team." - }, - "referrer": { - "type": "string", - "description": "Party ID that created the team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the team was created." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "createdAtEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the team was created." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams." - } - }, - "description": "Team record containing the team information." - }, - "apiv2VolumeDiscountProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which a volume discount statistics' running volume is evaluated." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, at which the program ended." - } - }, - "description": "Volume discount program details." - }, - "commandsv1CancelTransfer": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer ID of the transfer to cancel." - } - }, - "description": "Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction." - }, - "eventsv1FundingPayment": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "ID of the party." - }, - "amount": { - "type": "string", - "description": "The amount paid, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "The amount gained or lost by a party as a result of a funding payment." - }, - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics." - } - }, - "additionalProperties": {}, - "description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := \u0026pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }" - }, - "protobufNullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "v1AnnounceNode": { - "type": "object", - "properties": { - "vegaPubKey": { - "type": "string", - "description": "Vega public key of the node being announced." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node being announced." - }, - "chainPubKey": { - "type": "string", - "description": "Public key for the blockchain, currently the node's CometBFT key." - }, - "infoUrl": { - "type": "string", - "description": "URL to the node operators homepage allowing stake holders to make an informed decision when delegating." - }, - "country": { - "type": "string", - "description": "Country code (ISO 3166-1 alpha-2) for the location of the node." - }, - "id": { - "type": "string", - "description": "Node ID of the validator, which is the node's public master key." - }, - "name": { - "type": "string", - "description": "Human-readable name of the node." - }, - "avatarUrl": { - "type": "string", - "description": "URL to the node operator's avatar." - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "Vega public key derivation index." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch from which the node is expected to be ready to validate blocks." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the ethereum wallet." - }, - "vegaSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature from the node made using the Vega wallet." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - } - }, - "description": "A command that allows a new node operator to announce themselves to the network as a new validator." - }, - "v1ApplyReferralCode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Referral code, normally the referral set ID, for the party to join." - } - }, - "description": "Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch." - }, - "v1AuctionEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "openingAuction": { - "type": "boolean", - "title": "True if the event indicates an auction opening and False otherwise" - }, - "leave": { - "type": "boolean", - "title": "True if the event indicates leaving auction mode and False otherwise" - }, - "start": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the start time for an auction" - }, - "end": { - "type": "string", - "format": "int64", - "title": "Timestamp containing the end time for an auction" - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "Reason this market is/was in auction" - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "title": "If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction" - } - }, - "title": "Auction event indicating a change in auction state, for example starting or ending an auction" - }, - "v1BatchMarketInstructions": { - "type": "object", - "properties": { - "cancellations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "description": "List of order cancellations to be processed sequentially." - }, - "amendments": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "description": "List of order amendments to be processed sequentially." - }, - "submissions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "description": "List of order submissions to be processed sequentially." - }, - "stopOrdersCancellation": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "description": "List of stop order cancellations to be processed sequentially." - }, - "stopOrdersSubmission": { - "type": "array", - "items": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "description": "List of stop order submissions to be processed sequentially." - }, - "updateMarginMode": { - "type": "array", - "items": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "title": "Update margin mode instruction" - } - }, - "description": "A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\"." - }, - "v1BatchProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/v1BatchProposalSubmissionTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it." - }, - "v1BatchProposalSubmissionTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal submission" - }, - "v1BeginBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "hash": { - "type": "string" - } - }, - "title": "BeginBlock" - }, - "v1BusEvent": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Unique event ID for the message" - }, - "block": { - "type": "string", - "title": "The batch or block of transactions that the events relate to" - }, - "type": { - "$ref": "#/definitions/v1BusEventType", - "title": "The type of bus event. Must be one of the list below:" - }, - "timeUpdate": { - "$ref": "#/definitions/v1TimeUpdate", - "title": "Time update events" - }, - "ledgerMovements": { - "$ref": "#/definitions/v1LedgerMovements", - "title": "Transfer responses update events" - }, - "positionResolution": { - "$ref": "#/definitions/v1PositionResolution", - "title": "Position resolution events" - }, - "order": { - "$ref": "#/definitions/vegaOrder", - "title": "Order events" - }, - "account": { - "$ref": "#/definitions/vegaAccount", - "title": "Account events" - }, - "party": { - "$ref": "#/definitions/vegaParty", - "title": "Party events" - }, - "trade": { - "$ref": "#/definitions/vegaTrade", - "title": "Trade events" - }, - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "title": "Margin level update events" - }, - "proposal": { - "$ref": "#/definitions/vegaProposal", - "title": "Proposal events for governance" - }, - "vote": { - "$ref": "#/definitions/vegaVote", - "title": "Vote events for governance" - }, - "marketData": { - "$ref": "#/definitions/vegaMarketData", - "title": "Market data events" - }, - "nodeSignature": { - "$ref": "#/definitions/v1NodeSignature", - "title": "Node signature events" - }, - "lossSocialization": { - "$ref": "#/definitions/v1LossSocialization", - "title": "Loss socialization events" - }, - "settlePosition": { - "$ref": "#/definitions/v1SettlePosition", - "title": "Position settlement events" - }, - "settleDistressed": { - "$ref": "#/definitions/v1SettleDistressed", - "title": "Position distressed events" - }, - "marketCreated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "asset": { - "$ref": "#/definitions/vegaAsset", - "title": "Asset events" - }, - "marketTick": { - "$ref": "#/definitions/v1MarketTick", - "title": "Market tick events" - }, - "withdrawal": { - "$ref": "#/definitions/vegaWithdrawal", - "title": "Withdrawal events" - }, - "deposit": { - "$ref": "#/definitions/vegaDeposit", - "title": "Deposit events" - }, - "auction": { - "$ref": "#/definitions/v1AuctionEvent", - "title": "Auction events" - }, - "riskFactor": { - "$ref": "#/definitions/vegaRiskFactor", - "title": "Risk factor events" - }, - "networkParameter": { - "$ref": "#/definitions/vegaNetworkParameter", - "title": "Network parameter events" - }, - "liquidityProvision": { - "$ref": "#/definitions/vegaLiquidityProvision", - "title": "LiquidityProvision events" - }, - "marketUpdated": { - "$ref": "#/definitions/vegaMarket", - "title": "Market created events" - }, - "oracleSpec": { - "$ref": "#/definitions/vegaOracleSpec", - "title": "OracleSpec events" - }, - "oracleData": { - "$ref": "#/definitions/vegaOracleData", - "title": "OracleData events" - }, - "delegationBalance": { - "$ref": "#/definitions/v1DelegationBalanceEvent", - "title": "Delegation balance events" - }, - "validatorScore": { - "$ref": "#/definitions/v1ValidatorScoreEvent", - "title": "Validator score calculated" - }, - "epochEvent": { - "$ref": "#/definitions/v1EpochEvent", - "title": "Epoch update events" - }, - "validatorUpdate": { - "$ref": "#/definitions/v1ValidatorUpdate", - "title": "Validator update events" - }, - "stakeLinking": { - "$ref": "#/definitions/v1StakeLinking", - "title": "Staking event" - }, - "rewardPayout": { - "$ref": "#/definitions/v1RewardPayoutEvent", - "title": "Reward payout event" - }, - "checkpoint": { - "$ref": "#/definitions/v1CheckpointEvent", - "title": "Checkpoint was created" - }, - "keyRotation": { - "$ref": "#/definitions/v1KeyRotation", - "title": "Key rotation took place" - }, - "stateVar": { - "$ref": "#/definitions/v1StateVar", - "title": "State variable consensus state transition update" - }, - "networkLimits": { - "$ref": "#/definitions/vegaNetworkLimits", - "title": "Network limits events" - }, - "transfer": { - "$ref": "#/definitions/vegaeventsv1Transfer", - "title": "Transfer event" - }, - "rankingEvent": { - "$ref": "#/definitions/v1ValidatorRankingEvent", - "title": "Ranking event" - }, - "erc20MultisigSignerEvent": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEvent", - "title": "ERC20 multi sig signer event" - }, - "erc20MultisigSetThresholdEvent": { - "$ref": "#/definitions/v1ERC20MultiSigThresholdSetEvent", - "title": "ERC20 multi sig set threshold event" - }, - "erc20MultisigSignerAdded": { - "$ref": "#/definitions/v1ERC20MultiSigSignerAdded", - "title": "ERC20 multi sig signer added" - }, - "erc20MultisigSignerRemoved": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemoved", - "title": "ERC20 multi sig signer removed" - }, - "positionStateEvent": { - "$ref": "#/definitions/v1PositionStateEvent", - "title": "Position status for a party in a market" - }, - "ethereumKeyRotation": { - "$ref": "#/definitions/v1EthereumKeyRotation", - "title": "Ethereum key rotation took place" - }, - "protocolUpgradeEvent": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent", - "title": "Protocol upgrade proposal updates" - }, - "beginBlock": { - "$ref": "#/definitions/v1BeginBlock", - "title": "Core is starting to process a new block" - }, - "endBlock": { - "$ref": "#/definitions/v1EndBlock", - "title": "Core finished processing a block" - }, - "protocolUpgradeStarted": { - "$ref": "#/definitions/v1ProtocolUpgradeStarted", - "title": "Core is starting a protocol upgrade" - }, - "settleMarket": { - "$ref": "#/definitions/v1SettleMarket", - "title": "Settle market event for data-node to update positions for settled markets" - }, - "transactionResult": { - "$ref": "#/definitions/v1TransactionResult", - "title": "Result of a transaction processed by the network" - }, - "coreSnapshotEvent": { - "$ref": "#/definitions/v1CoreSnapshotData", - "title": "Core snapshot has been taken at the end of the block" - }, - "protocolUpgradeDataNodeReady": { - "$ref": "#/definitions/v1ProtocolUpgradeDataNodeReady", - "title": "Core snapshot has been taken at the end of the block" - }, - "distressedOrders": { - "$ref": "#/definitions/v1DistressedOrders", - "title": "Parties that had their orders closed because they were distressed" - }, - "expiredOrders": { - "$ref": "#/definitions/v1ExpiredOrders", - "title": "Orders that expired for a given market" - }, - "distressedPositions": { - "$ref": "#/definitions/v1DistressedPositions", - "title": "Open positions on the market that are/were distressed" - }, - "stopOrder": { - "$ref": "#/definitions/v1StopOrderEvent", - "title": "A stop order event" - }, - "fundingPeriod": { - "$ref": "#/definitions/v1FundingPeriod", - "description": "Start or end of a funding period." - }, - "fundingPeriodDataPoint": { - "$ref": "#/definitions/v1FundingPeriodDataPoint", - "description": "Data point within a funding period." - }, - "teamCreated": { - "$ref": "#/definitions/v1TeamCreated", - "title": "Event notifying of the creation of a team.m" - }, - "teamUpdated": { - "$ref": "#/definitions/v1TeamUpdated", - "description": "Event notifying of an update to a team." - }, - "refereeSwitchedTeam": { - "$ref": "#/definitions/v1RefereeSwitchedTeam", - "description": "Event notifying that a referee switched teams." - }, - "refereeJoinedTeam": { - "$ref": "#/definitions/v1RefereeJoinedTeam", - "description": "Event notifying that a referee joined a team." - }, - "referralProgramStarted": { - "$ref": "#/definitions/v1ReferralProgramStarted", - "description": "Event notifying that a referral program has started." - }, - "referralProgramUpdated": { - "$ref": "#/definitions/v1ReferralProgramUpdated", - "description": "Event notifying that a referral program has been updated." - }, - "referralProgramEnded": { - "$ref": "#/definitions/v1ReferralProgramEnded", - "description": "Event notifying that a referral program has ended." - }, - "referralSetCreated": { - "$ref": "#/definitions/v1ReferralSetCreated", - "description": "Event notifying a referral set has been created." - }, - "refereeJoinedReferralSet": { - "$ref": "#/definitions/v1RefereeJoinedReferralSet", - "description": "Event notifying a referee has joined a referral set." - }, - "partyActivityStreak": { - "$ref": "#/definitions/v1PartyActivityStreak", - "title": "Event notifying of an update to a party's activity streak" - }, - "volumeDiscountProgramStarted": { - "$ref": "#/definitions/v1VolumeDiscountProgramStarted", - "description": "Event notifying that a volume discount program has started." - }, - "volumeDiscountProgramUpdated": { - "$ref": "#/definitions/v1VolumeDiscountProgramUpdated", - "description": "Event notifying that a volume discount program has been updated." - }, - "volumeDiscountProgramEnded": { - "$ref": "#/definitions/v1VolumeDiscountProgramEnded", - "description": "Event notifying that a volume discount program has ended." - }, - "referralSetStatsUpdated": { - "$ref": "#/definitions/v1ReferralSetStatsUpdated", - "description": "Event notifying of an update to a referral set's statistics." - }, - "vestingStatsUpdated": { - "$ref": "#/definitions/v1VestingStatsUpdated", - "description": "Event notifying of an update to the vesting statistics." - }, - "volumeDiscountStatsUpdated": { - "$ref": "#/definitions/v1VolumeDiscountStatsUpdated", - "description": "Event notifying of an update to the volume discount statistics." - }, - "feesStats": { - "$ref": "#/definitions/v1FeesStats", - "description": "Event notifying of an update the fees stats for a market." - }, - "fundingPayments": { - "$ref": "#/definitions/v1FundingPayments", - "description": "Event notifying of funding payments at the end of a funding period." - }, - "paidLiquidityFeesStats": { - "$ref": "#/definitions/v1PaidLiquidityFeesStats", - "description": "Event notifying of an update to the liqudity fees stats for a market." - }, - "vestingBalancesSummary": { - "$ref": "#/definitions/v1VestingBalancesSummary", - "description": "Event notifying of an update to the vesting and locked balances." - }, - "transferFees": { - "$ref": "#/definitions/v1TransferFees", - "description": "Event notifying of fees related to a transfer being paid." - }, - "transferFeesDiscount": { - "$ref": "#/definitions/v1TransferFeesDiscount", - "description": "Event notifying of a party's available discounts for transfer fees, per asset." - }, - "partyMarginModeUpdated": { - "$ref": "#/definitions/v1PartyMarginModeUpdated", - "description": "Event notifying of a party's margin mode update on a market." - }, - "partyProfileUpdated": { - "$ref": "#/definitions/v1PartyProfileUpdated", - "description": "Event notifying of a party's profile update." - }, - "market": { - "$ref": "#/definitions/v1MarketEvent", - "title": "Market tick events" - }, - "txErrEvent": { - "$ref": "#/definitions/v1TxErrorEvent", - "title": "Transaction error events, not included in the ALL event type" - }, - "version": { - "type": "integer", - "format": "int64", - "title": "Version of bus event" - }, - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - } - }, - "title": "Bus event is a container for event bus events emitted by Vega" - }, - "v1BusEventType": { - "type": "string", - "enum": [ - "BUS_EVENT_TYPE_UNSPECIFIED", - "BUS_EVENT_TYPE_ALL", - "BUS_EVENT_TYPE_TIME_UPDATE", - "BUS_EVENT_TYPE_LEDGER_MOVEMENTS", - "BUS_EVENT_TYPE_POSITION_RESOLUTION", - "BUS_EVENT_TYPE_ORDER", - "BUS_EVENT_TYPE_ACCOUNT", - "BUS_EVENT_TYPE_PARTY", - "BUS_EVENT_TYPE_TRADE", - "BUS_EVENT_TYPE_MARGIN_LEVELS", - "BUS_EVENT_TYPE_PROPOSAL", - "BUS_EVENT_TYPE_VOTE", - "BUS_EVENT_TYPE_MARKET_DATA", - "BUS_EVENT_TYPE_NODE_SIGNATURE", - "BUS_EVENT_TYPE_LOSS_SOCIALIZATION", - "BUS_EVENT_TYPE_SETTLE_POSITION", - "BUS_EVENT_TYPE_SETTLE_DISTRESSED", - "BUS_EVENT_TYPE_MARKET_CREATED", - "BUS_EVENT_TYPE_ASSET", - "BUS_EVENT_TYPE_MARKET_TICK", - "BUS_EVENT_TYPE_WITHDRAWAL", - "BUS_EVENT_TYPE_DEPOSIT", - "BUS_EVENT_TYPE_AUCTION", - "BUS_EVENT_TYPE_RISK_FACTOR", - "BUS_EVENT_TYPE_NETWORK_PARAMETER", - "BUS_EVENT_TYPE_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_MARKET_UPDATED", - "BUS_EVENT_TYPE_ORACLE_SPEC", - "BUS_EVENT_TYPE_ORACLE_DATA", - "BUS_EVENT_TYPE_DELEGATION_BALANCE", - "BUS_EVENT_TYPE_VALIDATOR_SCORE", - "BUS_EVENT_TYPE_EPOCH_UPDATE", - "BUS_EVENT_TYPE_VALIDATOR_UPDATE", - "BUS_EVENT_TYPE_STAKE_LINKING", - "BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT", - "BUS_EVENT_TYPE_CHECKPOINT", - "BUS_EVENT_TYPE_STREAM_START", - "BUS_EVENT_TYPE_KEY_ROTATION", - "BUS_EVENT_TYPE_STATE_VAR", - "BUS_EVENT_TYPE_NETWORK_LIMITS", - "BUS_EVENT_TYPE_TRANSFER", - "BUS_EVENT_TYPE_VALIDATOR_RANKING", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED", - "BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED", - "BUS_EVENT_TYPE_POSITION_STATE", - "BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL", - "BUS_EVENT_TYPE_BEGIN_BLOCK", - "BUS_EVENT_TYPE_END_BLOCK", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED", - "BUS_EVENT_TYPE_SETTLE_MARKET", - "BUS_EVENT_TYPE_TRANSACTION_RESULT", - "BUS_EVENT_TYPE_SNAPSHOT_TAKEN", - "BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY", - "BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED", - "BUS_EVENT_TYPE_EXPIRED_ORDERS", - "BUS_EVENT_TYPE_DISTRESSED_POSITIONS", - "BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION", - "BUS_EVENT_TYPE_STOP_ORDER", - "BUS_EVENT_TYPE_FUNDING_PERIOD", - "BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT", - "BUS_EVENT_TYPE_TEAM_CREATED", - "BUS_EVENT_TYPE_TEAM_UPDATED", - "BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM", - "BUS_EVENT_TYPE_REFEREE_JOINED_TEAM", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_CREATED", - "BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET", - "BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED", - "BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_STATS_UPDATED", - "BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED", - "BUS_EVENT_TYPE_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_FUNDING_PAYMENTS", - "BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED", - "BUS_EVENT_TYPE_VESTING_SUMMARY", - "BUS_EVENT_TYPE_TRANSFER_FEES_PAID", - "BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED", - "BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED", - "BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED", - "BUS_EVENT_TYPE_MARKET", - "BUS_EVENT_TYPE_TX_ERROR" - ], - "default": "BUS_EVENT_TYPE_UNSPECIFIED", - "description": "- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type", - "title": "Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items" - }, - "v1CheckpointEvent": { - "type": "object", - "properties": { - "hash": { - "type": "string" - }, - "blockHash": { - "type": "string" - }, - "blockHeight": { - "type": "string", - "format": "uint64" - } - } - }, - "v1Condition": { - "type": "object", - "properties": { - "operator": { - "$ref": "#/definitions/ConditionOperator", - "description": "Type of comparison to make on the value." - }, - "value": { - "type": "string", - "description": "Value to be compared with by the operator." - } - }, - "title": "Condition describes the condition that must be validated by the network" - }, - "v1CoreSnapshotData": { - "type": "object", - "properties": { - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which snapshot was taken" - }, - "blockHash": { - "type": "string", - "title": "Hash of the snapshot block" - }, - "coreVersion": { - "type": "string", - "description": "Semver version number of the core." - }, - "protocolUpgradeBlock": { - "type": "boolean", - "title": "Indicates if the snapshot is taken as part of protocol upgrade" - } - }, - "description": "CoreSnapshotData represents the core snapshot data." - }, - "v1CreateReferralSet": { - "type": "object", - "properties": { - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1CreateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set." - }, - "v1CreateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "External link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "External link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1Data": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - } - }, - "data": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Data holds all the properties of the data" - }, - "matchedSpecIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data." - }, - "broadcastAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec." - }, - "metaData": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Property" - }, - "title": "Holds all metadata properties" - }, - "error": { - "type": "string", - "description": "Error message if the data could not be sourced." - } - }, - "description": "Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data." - }, - "v1DelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to delegate stake to." - }, - "amount": { - "type": "string", - "description": "Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places." - } - }, - "description": "Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator." - }, - "v1DelegationBalanceEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "nodeId": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "epochSeq": { - "type": "string" - } - }, - "title": "DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect" - }, - "v1DistressedOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "parties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of Party IDs i.e. each party's public key for the event" - } - }, - "title": "Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders" - }, - "v1DistressedPositions": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressedParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, that are distressed but still have open volume" - }, - "safeParties": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position" - } - }, - "description": "Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field." - }, - "v1ERC20MultiSigSignerAdded": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "title": "ID of the signature bundle" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node to be added" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "newSigner": { - "type": "string", - "title": "Ethereum address of the new signer" - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was added for" - } - } - }, - "v1ERC20MultiSigSignerEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/v1ERC20MultiSigSignerEventType" - }, - "signer": { - "type": "string" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ERC20MultiSigSignerEventType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ADDED", - "TYPE_REMOVED" - ], - "default": "TYPE_UNSPECIFIED" - }, - "v1ERC20MultiSigSignerRemoved": { - "type": "object", - "properties": { - "signatureSubmitters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ERC20MultiSigSignerRemovedSubmitter" - }, - "title": "List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set" - }, - "validatorId": { - "type": "string", - "title": "Node ID of the Vega node which is to be removed" - }, - "timestamp": { - "type": "string", - "format": "int64", - "title": "Time at which this happened" - }, - "oldSigner": { - "type": "string", - "title": "Ethereum address of the signer to be removed" - }, - "nonce": { - "type": "string", - "description": "Nonce used." - }, - "epochSeq": { - "type": "string", - "title": "Epoch that the node was removed for" - } - } - }, - "v1ERC20MultiSigSignerRemovedSubmitter": { - "type": "object", - "properties": { - "signatureId": { - "type": "string", - "description": "Signature ID of the signer removed." - }, - "submitter": { - "type": "string", - "title": "Address of the submitter of the transaction" - } - } - }, - "v1ERC20MultiSigThresholdSetEvent": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "newThreshold": { - "type": "integer", - "format": "int64" - }, - "nonce": { - "type": "string" - }, - "blockTime": { - "type": "string", - "format": "int64" - }, - "txHash": { - "type": "string" - }, - "logIndex": { - "type": "string", - "format": "uint64" - }, - "blockNumber": { - "type": "string", - "format": "uint64" - } - } - }, - "v1ETHAddress": { - "type": "object", - "properties": { - "address": { - "type": "string" - } - } - }, - "v1EndBlock": { - "type": "object", - "properties": { - "height": { - "type": "string", - "format": "uint64" - } - }, - "title": "EndBlock" - }, - "v1EpochEvent": { - "type": "object", - "properties": { - "seq": { - "type": "string", - "format": "uint64", - "title": "Sequence number that increases by one each epoch" - }, - "action": { - "$ref": "#/definitions/vegaEpochAction", - "title": "Action tells us what action is taking place" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch started" - }, - "expireTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch should end" - }, - "endTime": { - "type": "string", - "format": "int64", - "title": "Vega time at which this epoch actually ended" - } - }, - "title": "Epoch details" - }, - "v1EthereumKeyRotateSubmission": { - "type": "object", - "properties": { - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newAddress": { - "type": "string", - "description": "Ethereum address that is being rotated to." - }, - "currentAddress": { - "type": "string", - "description": "Ethereum address of the node's current Ethereum keys." - }, - "submitterAddress": { - "type": "string", - "description": "Ethereum public key to use as a submitter to allow automatic signature generation." - }, - "ethereumSignature": { - "$ref": "#/definitions/v1Signature", - "description": "Signature signed by the new Ethereum key that can be verified to prove ownership." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated." - }, - "v1EthereumKeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Ethereum key" - }, - "oldAddress": { - "type": "string", - "title": "Ethereum address that was previously associated with the node" - }, - "newAddress": { - "type": "string", - "title": "Ethereum address that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about an Ethereum key rotation" - }, - "v1ExpiredOrders": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "orderIds": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Slice of expired order IDs" - } - } - }, - "v1ExternalData": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/v1Data" - } - } - }, - "v1FeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "title": "Market the fees were paid in" - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalRewardsReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral rewards received by the referrer of the referral set." - }, - "referrerRewardsGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ReferrerRewardsGenerated" - }, - "description": "Referral rewards generated by all referee taker fees." - }, - "refereesDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total referral discounts applied to all referee taker fees." - }, - "volumeDiscountApplied": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total volume discounts applied to all referee taker fees." - }, - "totalMakerFeesReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total maker fees received by the maker side." - }, - "makerFeesGenerated": { - "type": "array", - "items": { - "$ref": "#/definitions/v1MakerFeesGenerated" - }, - "description": "Maker fees paid by all trade aggressors, and which makers the fees were paid to." - }, - "totalFeesPaidAndReceived": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Total trading fees received and paid by the party." - } - }, - "title": "Fees rewards and discounts paid / received per parties during an epoch" - }, - "v1Filter": { - "type": "object", - "properties": { - "key": { - "$ref": "#/definitions/v1PropertyKey", - "description": "Data source's data property key targeted by the filter." - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that should be matched by the data to be\nconsidered of interest." - } - }, - "description": "Filter describes the conditions under which a data source data is considered of\ninterest or not." - }, - "v1FundingPayments": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period associated with these payments." - }, - "payments": { - "type": "array", - "items": { - "$ref": "#/definitions/eventsv1FundingPayment" - }, - "description": "List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period." - } - }, - "description": "Event notifying of funding payments at the end of a funding period." - }, - "v1FundingPeriod": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "ID of the market for which this funding period relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period." - }, - "start": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period started." - }, - "end": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the funding period ended." - }, - "fundingPayment": { - "type": "string", - "description": "Funding payment for this period as the difference between the time-weighted average price of the external and internal data point." - }, - "fundingRate": { - "type": "string", - "description": "Percentage difference between the time-weighted average price of the external and internal data point." - }, - "internalTwap": { - "type": "string", - "description": "TWAP for this period based on the internal data-points." - }, - "externalTwap": { - "type": "string", - "description": "TWAP for this period based on the external data-points." - } - }, - "description": "Event notifying on the details of a funding interval for a perpetuals market." - }, - "v1FundingPeriodDataPoint": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID which the data point relates to." - }, - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the funding period this data point belongs to." - }, - "dataPointType": { - "$ref": "#/definitions/FundingPeriodDataPointSource", - "description": "Origin of the data point." - }, - "price": { - "type": "string", - "description": "Price of the asset as seen by this data point." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the data point was received." - }, - "twap": { - "type": "string", - "description": "The TWAP for this source with this data-point added." - } - }, - "description": "Event notifying a data point for a funding period." - }, - "v1IcebergOpts": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is made visible and can be traded with during the execution of a single order." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "Minimum allowed remaining size of the order before it is replenished back to its peak size." - } - }, - "title": "Iceberg order options" - }, - "v1InternalTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "int64", - "description": "Trigger when the vega time is greater or equal to this time, in Unix seconds." - }, - "every": { - "type": "string", - "format": "int64", - "description": "Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately." - } - }, - "description": "Trigger for an internal time data source." - }, - "v1IssueSignatures": { - "type": "object", - "properties": { - "submitter": { - "type": "string", - "description": "Ethereum address which will submit the signatures to the smart contract." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "What kind of signatures to generate, namely for whether a signer is being added or removed." - }, - "validatorNodeId": { - "type": "string", - "description": "Node ID of the validator node that will be signed in or out of the smart contract." - } - }, - "description": "Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command." - }, - "v1JoinTeam": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the team to join, this is the same as the referral code used to generate the team." - } - }, - "description": "Command that allows the submitter to join a team or change teams if they are already a member of a team." - }, - "v1KeyRotateSubmission": { - "type": "object", - "properties": { - "newPubKeyIndex": { - "type": "integer", - "format": "int64", - "description": "New Vega public key derivation index." - }, - "targetBlock": { - "type": "string", - "format": "uint64", - "description": "Block height at which the key rotation will take effect." - }, - "newPubKey": { - "type": "string", - "description": "Vega public key that would be rotated to." - }, - "currentPubKeyHash": { - "type": "string", - "description": "Hash of the node's current Vega public key." - } - }, - "description": "A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated." - }, - "v1KeyRotation": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the node that rotated their Vega key" - }, - "oldPubKey": { - "type": "string", - "title": "Vega public key that was previously associated with the node" - }, - "newPubKey": { - "type": "string", - "title": "Vega public key that is newly associated with the node" - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height when the key rotation took effect" - } - }, - "title": "Event that contains information about a Vega key rotation" - }, - "v1LedgerMovements": { - "type": "object", - "properties": { - "ledgerMovements": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerMovement" - }, - "title": "One or more entries containing internal transfer information" - } - }, - "title": "Transfer responses event contains a collection of transfer information" - }, - "v1LiquidityProvisionAmendment": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wants to amend the liquidity commitment for." - }, - "commitmentAmount": { - "type": "string", - "description": "New commitment amount." - }, - "fee": { - "type": "string", - "description": "New nominated liquidity fee factor." - }, - "reference": { - "type": "string", - "description": "New arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged." - }, - "v1LiquidityProvisionCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter will stop providing liquidity for." - } - }, - "description": "Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market." - }, - "v1LiquidityProvisionSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market that the submitter wishes to provide liquidity for." - }, - "commitmentAmount": { - "type": "string", - "description": "Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "reference": { - "type": "string", - "description": "Arbitrary reference to be added to every order created out of this liquidity provision submission." - } - }, - "description": "A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market." - }, - "v1LossSocialization": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "amount": { - "type": "string", - "title": "Amount distributed" - } - }, - "title": "Loss socialization event contains details on the amount of wins unable to be distributed" - }, - "v1MakerFeesGenerated": { - "type": "object", - "properties": { - "taker": { - "type": "string", - "description": "Party that paid the fees." - }, - "makerFeesPaid": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of maker fees paid by the taker to the maker." - } - }, - "title": "Maker fees generated by the trade aggressor" - }, - "v1MarketEvent": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "payload": { - "type": "string", - "title": "Payload is a unique information string" - } - }, - "title": "MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging" - }, - "v1MarketTick": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Market ID for the event" - }, - "time": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Market tick event contains the time value for when a particular market was last processed on Vega" - }, - "v1NodeSignature": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the resource that the signature relates to." - }, - "sig": { - "type": "string", - "format": "byte", - "description": "Signature generated by the node." - }, - "kind": { - "$ref": "#/definitions/v1NodeSignatureKind", - "description": "Kind of resource being signed." - } - }, - "description": "A validator command sent automatically containing a signature that can be used on a foreign chain to process an action." - }, - "v1NodeSignatureKind": { - "type": "string", - "enum": [ - "NODE_SIGNATURE_KIND_UNSPECIFIED", - "NODE_SIGNATURE_KIND_ASSET_NEW", - "NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED", - "NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED", - "NODE_SIGNATURE_KIND_ASSET_UPDATE" - ], - "default": "NODE_SIGNATURE_KIND_UNSPECIFIED", - "description": "- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.", - "title": "Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc" - }, - "v1OneOffGovernanceTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "v1OracleDataSubmission": { - "type": "object", - "properties": { - "source": { - "$ref": "#/definitions/OracleDataSubmissionOracleSource", - "description": "Source from which the data is coming from." - }, - "payload": { - "type": "string", - "format": "byte", - "description": "Data provided by the data source." - } - }, - "title": "Command to submit new oracle data from third party providers" - }, - "v1OrderAmendment": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "ID of the order to amend." - }, - "marketId": { - "type": "string", - "description": "Market ID that the order was originally submitted to." - }, - "price": { - "type": "string", - "description": "New price for the order. This field is an unsigned integer scaled to the market's decimal places." - }, - "sizeDelta": { - "type": "string", - "format": "int64", - "description": "Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for the new expiry time for the order." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "New time in force for the order." - }, - "peggedOffset": { - "type": "string", - "description": "New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "peggedReference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "New pegged reference for the order." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0." - } - }, - "description": "A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command." - }, - "v1OrderCancellation": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided." - }, - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - } - }, - "description": "A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command." - }, - "v1OrderSubmission": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID to submit the order to." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of units." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Which side of the order book the order is for, e.g. buy or sell." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "description": "Time in force indicates how long an order will remain active before it is executed or expires.." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT." - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type of the order." - }, - "reference": { - "type": "string", - "description": "Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times." - }, - "postOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders." - }, - "reduceOnly": { - "type": "boolean", - "description": "If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders." - }, - "icebergOpts": { - "$ref": "#/definitions/v1IcebergOpts", - "description": "Iceberg order details. If set, the order will exist on the order book in chunks." - } - }, - "description": "A command that submits an order to the Vega network for a given market." - }, - "v1PaidLiquidityFeesStats": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market the fees were paid in." - }, - "asset": { - "type": "string", - "description": "Settlement asset of the market." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these stats where valid." - }, - "totalFeesPaid": { - "type": "string", - "description": "Total fees paid across all parties." - }, - "feesPaidPerParty": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Fees paid per party." - } - } - }, - "v1PartyActivityStreak": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "The party." - }, - "activeFor": { - "type": "string", - "format": "uint64", - "description": "How many epoch this party has been active for." - }, - "inactiveFor": { - "type": "string", - "format": "uint64", - "description": "how many epoch this party has been inactive for." - }, - "isActive": { - "type": "boolean", - "description": "Is this party considered active or not." - }, - "rewardDistributionActivityMultiplier": { - "type": "string", - "description": "The current rewards distribution multiplier for this party." - }, - "rewardVestingActivityMultiplier": { - "type": "string", - "description": "The vesting multiplier for this party." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "The epoch this information is relevant to." - }, - "tradedVolume": { - "type": "string", - "title": "Party's traded volume at the end of the given epoch" - }, - "openVolume": { - "type": "string", - "title": "Party's open interest volume at the end of the given epoch" - } - }, - "title": "The updated activity streak of a party at end of epoch" - }, - "v1PartyAmount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Receiving party ID." - }, - "amount": { - "type": "string", - "description": "Amount received." - }, - "quantumAmount": { - "type": "string", - "description": "Amount value in quantum." - } - }, - "title": "A pair of a party and amount" - }, - "v1PartyLockedBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "untilEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the balance will be released." - }, - "balance": { - "type": "string", - "description": "Locked balance." - } - }, - "description": "A party's locked balance for a given asset." - }, - "v1PartyMarginModeUpdated": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Unique ID of the market in which the update happened." - }, - "partyId": { - "type": "string", - "description": "Unique ID of the party that updated their margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Updated margin mode." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor for the market. Isolated mode only." - }, - "minTheoreticalMarginFactor": { - "type": "string", - "description": "Minimum theoretical margin factor for the market. Isolated mode only." - }, - "maxTheoreticalLeverage": { - "type": "string", - "description": "Maximum theoretical leverage for the market. Isolated mode only." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the update happened." - } - } - }, - "v1PartyProfileUpdated": { - "type": "object", - "properties": { - "updatedProfile": { - "$ref": "#/definitions/vegaPartyProfile", - "description": "Party's profile updated." - } - } - }, - "v1PartyVestingBalance": { - "type": "object", - "properties": { - "asset": { - "type": "string", - "description": "Asset ID." - }, - "balance": { - "type": "string", - "description": "Balance that is vested." - } - }, - "description": "Balance that is being vested for the party." - }, - "v1PartyVestingStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "The party." - }, - "rewardBonusMultiplier": { - "type": "string", - "description": "The bonus multiplier applied on the reward." - }, - "quantumBalance": { - "type": "string", - "description": "The balance of the party, in quantum." - } - }, - "description": "The vesting stats for a given party." - }, - "v1PartyVestingSummary": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party ID." - }, - "partyLockedBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyLockedBalance" - }, - "description": "List of locked balances." - }, - "partyVestingBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingBalance" - }, - "description": "List of vesting balances." - } - }, - "title": "Summary of a party's vesting balances" - }, - "v1PartyVolumeDiscountStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to fees." - }, - "runningVolume": { - "type": "string", - "description": "The party's running volume." - } - }, - "description": "Volume discount stats for a given party." - }, - "v1PositionResolution": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "distressed": { - "type": "string", - "format": "int64", - "title": "Number of distressed traders" - }, - "closed": { - "type": "string", - "format": "int64", - "title": "Number of close outs" - }, - "markPrice": { - "type": "string", - "title": "Mark price as a string representing a scaled price" - } - }, - "title": "Position resolution event contains information on distressed trades" - }, - "v1PositionStateEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Party ID for this position update" - }, - "marketId": { - "type": "string", - "title": "Market ID for this position update" - }, - "size": { - "type": "string", - "format": "int64", - "title": "Current position" - }, - "potentialBuys": { - "type": "string", - "format": "int64", - "title": "Potential orders" - }, - "potentialSells": { - "type": "string", - "format": "int64" - }, - "vwBuyPrice": { - "type": "string", - "title": "Volume weighted prices" - }, - "vwSellPrice": { - "type": "string" - } - }, - "title": "Position state event contains the current position state for a single party in a single market" - }, - "v1Property": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "value": { - "type": "string", - "description": "Value of the property." - } - }, - "description": "Property describes one property of data spec with a key with its value." - }, - "v1PropertyKey": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the property." - }, - "type": { - "$ref": "#/definitions/v1PropertyKeyType", - "description": "Data type of the property." - }, - "numberDecimalPlaces": { - "type": "string", - "format": "uint64", - "title": "Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER" - } - }, - "description": "PropertyKey describes the property key contained in data source data." - }, - "v1PropertyKeyType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_EMPTY", - "TYPE_INTEGER", - "TYPE_STRING", - "TYPE_BOOLEAN", - "TYPE_DECIMAL", - "TYPE_TIMESTAMP" - ], - "default": "TYPE_UNSPECIFIED", - "description": "Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type." - }, - "v1ProposalSubmission": { - "type": "object", - "properties": { - "reference": { - "type": "string", - "description": "Arbitrary human-readable reference identifying the proposal." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - } - }, - "description": "Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market." - }, - "v1ProtocolUpgradeDataNodeReady": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the data node is ready for protocol upgrade" - }, - "v1ProtocolUpgradeEvent": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "title": "Block height at which to perform the upgrade" - }, - "vegaReleaseTag": { - "type": "string", - "title": "Release tag for the vega binary" - }, - "approvers": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Tendermint validators that have agreed to the upgrade" - }, - "status": { - "$ref": "#/definitions/v1ProtocolUpgradeProposalStatus", - "title": "Status of the proposal" - } - } - }, - "v1ProtocolUpgradeProposal": { - "type": "object", - "properties": { - "upgradeBlockHeight": { - "type": "string", - "format": "uint64", - "description": "Block height at which to perform the upgrade." - }, - "vegaReleaseTag": { - "type": "string", - "description": "Release tag for the Vega binary." - } - }, - "description": "A validator command sent manually by a node operator to propose a protocol upgrade." - }, - "v1ProtocolUpgradeProposalStatus": { - "type": "string", - "enum": [ - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED", - "PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED" - ], - "default": "PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED", - "title": "- PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected" - }, - "v1ProtocolUpgradeStarted": { - "type": "object", - "properties": { - "lastBlockHeight": { - "type": "string", - "format": "uint64" - } - }, - "title": "Event indicating the core is starting a protocol upgrade" - }, - "v1PubKey": { - "type": "object", - "properties": { - "key": { - "type": "string" - } - }, - "description": "PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated." - }, - "v1RecurringGovernanceTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "v1RefereeJoinedReferralSet": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the referral set the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the set." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the set." - } - } - }, - "v1RefereeJoinedTeam": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the team the referee joined." - }, - "referee": { - "type": "string", - "description": "The party that joined the team." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party joined a team." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - } - }, - "v1RefereeStats": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Unique ID of the party." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to the party." - }, - "epochNotionalTakerVolume": { - "type": "string", - "title": "Current referee notional taker volume" - } - } - }, - "v1RefereeSwitchedTeam": { - "type": "object", - "properties": { - "fromTeamId": { - "type": "string", - "description": "The unique identifier of the team the referee left." - }, - "toTeamId": { - "type": "string", - "description": "The unique identifier of the team joined." - }, - "referee": { - "type": "string", - "description": "The party that switched team." - }, - "switchedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party switched the team." - } - } - }, - "v1ReferralProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the referral program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1ReferralProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "Referral program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program started." - } - } - }, - "v1ReferralProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaReferralProgram", - "description": "The updated referral program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program was updated." - } - } - }, - "v1ReferralSetCreated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the created set." - }, - "referrer": { - "type": "string", - "description": "Party that created the set." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the set was updated." - } - } - }, - "v1ReferralSetStatsUpdated": { - "type": "object", - "properties": { - "setId": { - "type": "string", - "description": "Unique ID of the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the set's statistics are updated." - }, - "referralSetRunningNotionalTakerVolume": { - "type": "string", - "description": "Running volume for the set based on the window length of the current\nreferral program." - }, - "refereesStats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1RefereeStats" - }, - "description": "Referees' statistics for that epoch." - }, - "rewardFactor": { - "type": "string", - "description": "Reward factor applied to the trades." - }, - "rewardsMultiplier": { - "type": "string", - "description": "Rewards multiplier applied to the trades." - }, - "rewardsFactorMultiplier": { - "type": "string", - "description": "Rewards factor multiplier for the trades." - }, - "wasEligible": { - "type": "boolean", - "description": "Indicates if the referral set was eligible to be part of the referral program." - }, - "referrerTakerVolume": { - "type": "string", - "title": "Taker volume of the referrer" - } - } - }, - "v1ReferrerRewardsGenerated": { - "type": "object", - "properties": { - "referrer": { - "type": "string", - "description": "Referrer party." - }, - "generatedReward": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyAmount" - }, - "description": "Amount of rewards generated per party." - } - }, - "title": "Rewards generated for referrers by each of their referees" - }, - "v1RewardPayoutEvent": { - "type": "object", - "properties": { - "party": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "percentOfTotalReward": { - "type": "string" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "rewardType": { - "type": "string" - }, - "lockedUntilEpoch": { - "type": "string" - }, - "quantumAmount": { - "type": "string" - }, - "gameId": { - "type": "string" - } - } - }, - "v1SettleDistressed": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID i.e. a party's public key for the event" - }, - "margin": { - "type": "string", - "title": "Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - }, - "price": { - "type": "string", - "title": "Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places" - } - }, - "title": "Settle distressed event contains information on distressed trading parties who are closed out" - }, - "v1SettleMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly" - }, - "v1SettlePosition": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "Market ID for the event" - }, - "partyId": { - "type": "string", - "title": "Party ID (public key) for the event" - }, - "price": { - "type": "string", - "title": "Price of settlement as a string" - }, - "tradeSettlements": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TradeSettlement" - }, - "title": "A collection of 1 or more trade settlements" - }, - "positionFactor": { - "type": "string", - "title": "Position factor - 10 ^ number of position decimal places" - } - }, - "title": "Settle position event contains position settlement information for a party" - }, - "v1Signature": { - "type": "object", - "properties": { - "value": { - "type": "string", - "description": "Hex encoded bytes of the signature." - }, - "algo": { - "type": "string", - "description": "Algorithm used to create the signature." - }, - "version": { - "type": "integer", - "format": "int64", - "description": "Version of the algorithm used to create the signature." - } - }, - "description": "Signature definition that allows the network to authenticate external data." - }, - "v1Signer": { - "type": "object", - "properties": { - "pubKey": { - "$ref": "#/definitions/v1PubKey", - "description": "List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys." - }, - "ethAddress": { - "$ref": "#/definitions/v1ETHAddress", - "description": "In case of an open oracle - Ethereum address will be submitted." - } - } - }, - "v1StakeLinking": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Internal ID for this staking event" - }, - "type": { - "$ref": "#/definitions/v1StakeLinkingType", - "description": "Stake linking event type." - }, - "ts": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of when the event was emitted by Ethereum." - }, - "party": { - "type": "string", - "description": "Party to whom the event is directed at." - }, - "amount": { - "type": "string", - "description": "Amount of stake deposited or removed." - }, - "status": { - "$ref": "#/definitions/v1StakeLinkingStatus", - "description": "Status of the event." - }, - "finalizedAt": { - "type": "string", - "format": "int64", - "description": "Time at which the Vega network finalised the state of the event." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction in which the event happened." - }, - "blockHeight": { - "type": "string", - "format": "uint64", - "description": "Block when the event happened." - }, - "blockTime": { - "type": "string", - "format": "int64", - "description": "Block time." - }, - "logIndex": { - "type": "string", - "format": "uint64", - "description": "Log index." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum address from which the stake link was initiated." - } - }, - "title": "StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network" - }, - "v1StakeLinkingStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_ACCEPTED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network" - }, - "v1StakeLinkingType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LINK", - "TYPE_UNLINK" - ], - "default": "TYPE_UNSPECIFIED", - "title": "- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction" - }, - "v1StateVar": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "eventId": { - "type": "string" - }, - "state": { - "type": "string" - } - }, - "title": "StateVar event updates on state changes in state variable consensus" - }, - "v1StopOrderEvent": { - "type": "object", - "properties": { - "submission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "stopOrder": { - "$ref": "#/definitions/vegaStopOrder" - } - } - }, - "v1StopOrderSetup": { - "type": "object", - "properties": { - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission", - "description": "Order to be submitted once the trigger is breached." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Indicates if this order is linked to an order or position to derive the order size" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "If this order is linked to a position, provide an optional scaling factor" - }, - "price": { - "type": "string", - "description": "Order will be submitted if the last traded price on the market breaches the given price." - }, - "trailingPercentOffset": { - "type": "string", - "description": "Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted." - } - }, - "description": "Price and expiry configuration for a stop order." - }, - "v1StopOrdersCancellation": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled." - }, - "stopOrderId": { - "type": "string", - "description": "Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided." - } - }, - "description": "A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command." - }, - "v1StopOrdersSubmission": { - "type": "object", - "properties": { - "risesAbove": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price rises above a given trigger price." - }, - "fallsBelow": { - "$ref": "#/definitions/v1StopOrderSetup", - "description": "Stop order that will be triggered if the price falls below a given trigger price." - } - }, - "description": "A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO)." - }, - "v1TeamCreated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier of the created team." - }, - "referrer": { - "type": "string", - "description": "The party that created the team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the team is created." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the team was created." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TeamUpdated": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "The unique identifier for the updated team." - }, - "name": { - "type": "string", - "description": "Name of the team." - }, - "teamUrl": { - "type": "string", - "description": "Link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "Link to an image of the team's avatar." - }, - "closed": { - "type": "boolean", - "description": "Tells if a party can join the team or not." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team." - } - } - }, - "v1TimeUpdate": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "title": "Timestamp containing latest update from Vega blockchain aka Vega-time" - } - }, - "title": "Time update event contains the latest time update from Vega blockchain and indicates the start of a new block" - }, - "v1TradeSettlement": { - "type": "object", - "properties": { - "size": { - "type": "string", - "format": "int64", - "title": "Size of trade settlement" - }, - "price": { - "type": "string", - "title": "Price of settlement as string (in asset decimals)" - }, - "marketPrice": { - "type": "string", - "title": "Price of settlement as a string (in market decimals)" - } - }, - "title": "Trade settlement is part of the settle position event" - }, - "v1TransactionResult": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "status": { - "type": "boolean", - "description": "Status of the transaction, did it succeed or an error was raised." - }, - "hash": { - "type": "string", - "title": "Hash of the transaction" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - }, - "keyRotateSubmission": { - "$ref": "#/definitions/v1KeyRotateSubmission" - }, - "ethereumKeyRotateSubmission": { - "$ref": "#/definitions/v1EthereumKeyRotateSubmission" - }, - "stopOrderSubmission": { - "$ref": "#/definitions/v1StopOrdersSubmission" - }, - "stopOrderCancellation": { - "$ref": "#/definitions/v1StopOrdersCancellation" - }, - "createReferralSet": { - "$ref": "#/definitions/v1CreateReferralSet" - }, - "updateReferralSet": { - "$ref": "#/definitions/v1UpdateReferralSet" - }, - "applyReferralCode": { - "$ref": "#/definitions/v1ApplyReferralCode" - }, - "updateMarginMode": { - "$ref": "#/definitions/v1UpdateMarginMode" - }, - "joinTeam": { - "$ref": "#/definitions/v1JoinTeam" - }, - "batchProposal": { - "$ref": "#/definitions/v1BatchProposalSubmission" - }, - "updatePartyProfile": { - "$ref": "#/definitions/v1UpdatePartyProfile" - }, - "success": { - "$ref": "#/definitions/TransactionResultSuccessDetails" - }, - "failure": { - "$ref": "#/definitions/TransactionResultFailureDetails" - } - } - }, - "v1TransferFees": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "Transfer that triggered the collection of fees." - }, - "amount": { - "type": "string", - "description": "Amount of fees paid." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch when the transfer was dispatched, and fees were paid." - }, - "discountApplied": { - "type": "string", - "description": "Amount that was subtracted from the transfer fee based on available discounts." - } - } - }, - "v1TransferFeesDiscount": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party that the transfer fee discount applies to." - }, - "asset": { - "type": "string", - "description": "Asset that the transfer fee discount is relevant to." - }, - "amount": { - "type": "string", - "description": "Amount that the transfer fee was discounted by." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the discount was first available." - } - } - }, - "v1TransferStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_DONE", - "STATUS_REJECTED", - "STATUS_STOPPED", - "STATUS_CANCELLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user" - }, - "v1TxErrorEvent": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "title": "Unique party ID for the related party" - }, - "errMsg": { - "type": "string", - "title": "Error message describing what went wrong" - }, - "orderSubmission": { - "$ref": "#/definitions/v1OrderSubmission" - }, - "orderAmendment": { - "$ref": "#/definitions/v1OrderAmendment" - }, - "orderCancellation": { - "$ref": "#/definitions/v1OrderCancellation" - }, - "proposal": { - "$ref": "#/definitions/v1ProposalSubmission" - }, - "voteSubmission": { - "$ref": "#/definitions/v1VoteSubmission" - }, - "liquidityProvisionSubmission": { - "$ref": "#/definitions/v1LiquidityProvisionSubmission" - }, - "withdrawSubmission": { - "$ref": "#/definitions/v1WithdrawSubmission" - }, - "delegateSubmission": { - "$ref": "#/definitions/v1DelegateSubmission" - }, - "undelegateSubmission": { - "$ref": "#/definitions/v1UndelegateSubmission" - }, - "liquidityProvisionCancellation": { - "$ref": "#/definitions/v1LiquidityProvisionCancellation" - }, - "liquidityProvisionAmendment": { - "$ref": "#/definitions/v1LiquidityProvisionAmendment" - }, - "transfer": { - "$ref": "#/definitions/vegacommandsv1Transfer" - }, - "cancelTransfer": { - "$ref": "#/definitions/commandsv1CancelTransfer" - }, - "announceNode": { - "$ref": "#/definitions/v1AnnounceNode" - }, - "oracleDataSubmission": { - "$ref": "#/definitions/v1OracleDataSubmission" - }, - "protocolUpgradeProposal": { - "$ref": "#/definitions/v1ProtocolUpgradeProposal" - }, - "issueSignatures": { - "$ref": "#/definitions/v1IssueSignatures" - }, - "batchMarketInstructions": { - "$ref": "#/definitions/v1BatchMarketInstructions" - } - } - }, - "v1UndelegateSubmission": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "description": "Node ID to undelegate stake from." - }, - "amount": { - "type": "string", - "description": "Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed." - }, - "method": { - "$ref": "#/definitions/v1UndelegateSubmissionMethod", - "description": "Method of delegation." - } - }, - "description": "Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node." - }, - "v1UndelegateSubmissionMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_NOW", - "METHOD_AT_END_OF_EPOCH" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch." - }, - "v1UpdateMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market to change margin mode for." - }, - "mode": { - "$ref": "#/definitions/UpdateMarginModeMode", - "description": "Margin mode to use." - }, - "marginFactor": { - "type": "string", - "title": "Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside" - } - } - }, - "v1UpdatePartyProfile": { - "type": "object", - "properties": { - "alias": { - "type": "string", - "description": "Alias given to the party. It must be unique network-wide." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Freeform data to associate to the party.\nSupport a maximum of 10 entries." - } - }, - "description": "Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed." - }, - "v1UpdateReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "ID of the referral set to update." - }, - "isTeam": { - "type": "boolean", - "description": "Whether or not the referral set should be considered a team that can participate in team games on the network." - }, - "team": { - "$ref": "#/definitions/v1UpdateReferralSetTeam", - "description": "Team details, if the referral set is to be considered a team." - } - }, - "description": "A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged." - }, - "v1UpdateReferralSetTeam": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "New name of the team." - }, - "teamUrl": { - "type": "string", - "description": "New link to the team's homepage." - }, - "avatarUrl": { - "type": "string", - "description": "New link to an avatar for the team." - }, - "closed": { - "type": "boolean", - "description": "Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team." - }, - "allowList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team." - } - } - }, - "v1ValidatorRankingEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "stakeScore": { - "type": "string", - "title": "Stake based score - no anti-whaling" - }, - "performanceScore": { - "type": "string", - "title": "Performance base score" - }, - "rankingScore": { - "type": "string", - "title": "Final score" - }, - "previousStatus": { - "type": "string", - "title": "Status of the validator in the previous epoch" - }, - "nextStatus": { - "type": "string", - "title": "Status of the validator in the next epoch" - }, - "epochSeq": { - "type": "string", - "title": "Epoch seq for which the status is valid" - }, - "tmVotingPower": { - "type": "integer", - "format": "int64", - "title": "Tendermint voting power of the validator" - } - }, - "title": "Event that explains the status of the validator for the coming epoch" - }, - "v1ValidatorScoreEvent": { - "type": "object", - "properties": { - "nodeId": { - "type": "string" - }, - "epochSeq": { - "type": "string" - }, - "validatorScore": { - "type": "string" - }, - "normalisedScore": { - "type": "string" - }, - "validatorPerformance": { - "type": "string" - }, - "rawValidatorScore": { - "type": "string" - }, - "validatorStatus": { - "type": "string" - }, - "multisigScore": { - "type": "string" - } - }, - "title": "ValidatorScoreEvent is the score a validator gets for a given epoch" - }, - "v1ValidatorUpdate": { - "type": "object", - "properties": { - "nodeId": { - "type": "string", - "title": "Node ID of the validator node" - }, - "vegaPubKey": { - "type": "string", - "title": "Vega public key of validator node" - }, - "ethereumAddress": { - "type": "string", - "title": "Ethereum public key of validator node" - }, - "tmPubKey": { - "type": "string", - "title": "Public key of Tendermint" - }, - "infoUrl": { - "type": "string", - "title": "URL with more info on the node" - }, - "country": { - "type": "string", - "title": "Country code (ISO 3166-1 alpha-2) for the location of the node" - }, - "name": { - "type": "string", - "title": "Name of the validator" - }, - "avatarUrl": { - "type": "string", - "title": "AvatarURL of the validator" - }, - "vegaPubKeyIndex": { - "type": "integer", - "format": "int64", - "title": "Vega public key derivation index" - }, - "added": { - "type": "boolean", - "title": "Flag indicating if the validator has been added to or removed from vega" - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the announced pending node will start participating in the network" - }, - "submitterAddress": { - "type": "string", - "title": "Ethereum public key being used as the submitter to allow automatic signature generation" - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "title": "Epoch in which the node was announced or removed from the network" - } - }, - "title": "Validator update event contains information about validator node" - }, - "v1VestingBalancesSummary": { - "type": "object", - "properties": { - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these balances are valid." - }, - "partiesVestingSummary": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingSummary" - }, - "description": "Parties' summaries." - } - }, - "title": "Summary of the vesting and locked balances for an epoch" - }, - "v1VestingStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the vesting statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingStats" - }, - "description": "All parties stats." - } - }, - "description": "Stats of all parties invested in the vesting program." - }, - "v1VolumeDiscountProgramEnded": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Program update version." - }, - "id": { - "type": "string", - "description": "Unique ID of the volume discount program." - }, - "endedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the referral program ended." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the referral program ended." - } - } - }, - "v1VolumeDiscountProgramStarted": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "Volume discount program that has started." - }, - "startedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program started." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program started." - } - } - }, - "v1VolumeDiscountProgramUpdated": { - "type": "object", - "properties": { - "program": { - "$ref": "#/definitions/vegaVolumeDiscountProgram", - "description": "The updated volume discount program." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the volume discount program was updated." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount program was updated." - } - } - }, - "v1VolumeDiscountStatsUpdated": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the volume discount statistics are updated." - }, - "stats": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVolumeDiscountStats" - }, - "description": "All parties' stats." - } - }, - "description": "Stats of all parties eligible for volume discount." - }, - "v1VoteSubmission": { - "type": "object", - "properties": { - "proposalId": { - "type": "string", - "description": "Submit vote for the specified proposal ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Actual value of the vote." - } - }, - "description": "Command that allows a token holder to vote for or against an active governance proposal." - }, - "v1WithdrawSubmission": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "description": "Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to be withdrawn." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Details specific to the foreign chain, such as the receiver address." - } - }, - "description": "Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge." - }, - "v2AccountBalance": { - "type": "object", - "properties": { - "owner": { - "type": "string", - "description": "Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position." - }, - "balance": { - "type": "string", - "description": "Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative." - }, - "asset": { - "type": "string", - "description": "Asset ID for the account." - }, - "marketId": { - "type": "string", - "description": "Market ID for the account, this field will be empty if the asset is in a general account." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type of this account." - } - }, - "title": "Represents the current balance of an account for an asset on Vega, for a particular owner or party" - }, - "v2AccountEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2AccountBalance", - "description": "Account balance data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages with reference to this account." - } - }, - "description": "Account data item with the corresponding cursor." - }, - "v2AccountFilter": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Restrict accounts to those holding balances in this asset ID." - }, - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter." - }, - "accountTypes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAccountType" - }, - "description": "Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter." - } - }, - "description": "Account filter is used to filter account data.\n\nAn account is defined as a set of asset ID, type, party ID, and market ID.\n- Every account has an associated asset and type.\n- Certain account types such as the global reward pool for example, do not have an associated party.\n These are denoted by the special party ID 'network'.\n- Certain account types do not have an associated market such as the general party accounts, for example.\n These are denoted by the special market ID '' (an empty string)." - }, - "v2AccountSnapshotPage": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountBalance" - }, - "description": "List of account balances." - }, - "lastPage": { - "type": "boolean", - "description": "Indicator if the current page is the last one or not." - } - }, - "title": "'Initial image' snapshot containing current account balances - may be sent over several response messages" - }, - "v2AccountUpdates": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountBalance" - }, - "description": "List of account balances." - } - }, - "title": "List of account updates in the last block" - }, - "v2AccountsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountEdge" - }, - "description": "Page of accounts data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of accounts data and corresponding page information." - }, - "v2AggregatedBalance": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of the block in which the balance exists." - }, - "balance": { - "type": "string", - "description": "Balance of the set of requested accounts at the time above." - }, - "partyId": { - "type": "string", - "description": "If grouping by party, the party ID." - }, - "assetId": { - "type": "string", - "description": "If grouping by asset, the asset ID." - }, - "marketId": { - "type": "string", - "title": "If grouping by market, the market ID" - }, - "accountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "If grouping by account type, the account type." - } - }, - "title": "AggregatedBalance data contains the balance of the set of requested accounts combined with corresponding\nparty ID, market ID and account type details" - }, - "v2AggregatedBalanceConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AggregatedBalanceEdge" - }, - "description": "Page of aggregated balance data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of aggregated balance objects and corresponding page information" - }, - "v2AggregatedBalanceEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2AggregatedBalance", - "description": "Balance of the set of requested accounts." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Aggregated balance data with the corresponding cursor." - }, - "v2AggregatedLedgerEntriesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AggregatedLedgerEntriesEdge" - }, - "description": "Page of 'AggregatedLedgerEntry' data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of aggregated ledger entries data and corresponding page information." - }, - "v2AggregatedLedgerEntriesEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2AggregatedLedgerEntry", - "description": "'AggregatedLedgerEntry' data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "title": "Represents the aggregated ledger entry data with corresponding cursor for it" - }, - "v2AggregatedLedgerEntry": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds of the block in which the result is referring to." - }, - "quantity": { - "type": "string", - "description": "Amount of ledger entries for the set of requested accounts at the time above." - }, - "transferType": { - "$ref": "#/definitions/vegaTransferType", - "description": "Transfer type." - }, - "assetId": { - "type": "string", - "description": "Asset ID for the asset associated with the entry." - }, - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of account sent from." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of account received to." - }, - "fromAccountPartyId": { - "type": "string", - "description": "Sender's party ID." - }, - "toAccountPartyId": { - "type": "string", - "description": "Receiver's party ID." - }, - "fromAccountMarketId": { - "type": "string", - "description": "Sender market ID." - }, - "toAccountMarketId": { - "type": "string", - "description": "Receiver market ID." - }, - "fromAccountBalance": { - "type": "string", - "description": "Sender account balance after the transfer." - }, - "toAccountBalance": { - "type": "string", - "description": "Receiver account balance after the transfer." - } - }, - "title": "Represents an aggregated view of ledger entry data, sender and receiver accounts,\ndetails and balances for both sides after the transfer has been made" - }, - "v2AssetEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaAsset", - "description": "Asset data returned." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Assets data with the corresponding cursor." - }, - "v2AssetsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AssetEdge" - }, - "description": "Page of assets data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of asset data and corresponding page information" - }, - "v2CandleDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2CandleEdge" - }, - "description": "Page of candle data items and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of candles data and corresponding page information" - }, - "v2CandleEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2Candle", - "description": "Candlestick data, i.e. high, low, open, and closing prices for an interval of trading." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Candle data with the corresponding cursor." - }, - "v2Checkpoint": { - "type": "object", - "properties": { - "hash": { - "type": "string", - "description": "Hash of the checkpoint." - }, - "blockHash": { - "type": "string", - "description": "Block hash at which the checkpoint is made." - }, - "atBlock": { - "type": "string", - "format": "uint64", - "description": "Block number at which the checkpoint is made." - } - }, - "title": "Actual data regarding a checkpoint" - }, - "v2CheckpointEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2Checkpoint", - "description": "Data relating to a single checkpoint generated by the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Checkpoint data with the corresponding cursor." - }, - "v2CheckpointsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2CheckpointEdge" - }, - "description": "Page of checkpoints data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of checkpoints data and corresponding page information" - }, - "v2CollateralIncreaseEstimate": { - "type": "object", - "properties": { - "worstCase": { - "type": "string", - "title": "Estimate assuming slippage cap is applied" - }, - "bestCase": { - "type": "string", - "title": "Estimate assuming no slippage" - } - }, - "title": "Estimates the additional funds needed to support the specified position" - }, - "v2CoreSnapshotConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2CoreSnapshotEdge" - }, - "description": "Page of core snapshot data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of core snapshot data and corresponding page information." - }, - "v2CoreSnapshotEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1CoreSnapshotData", - "description": "Core snapshot data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Core snapshot data with the corresponding cursor." - }, - "v2DateRange": { - "type": "object", - "properties": { - "startTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds indicating the start of the date range." - }, - "endTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds indicating the end of the date range." - } - }, - "description": "Date range for queries that can return historical data\nTimestamps should be provided as unix time in Unix nanoseconds and are inclusive." - }, - "v2DelegationEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaDelegation", - "description": "How much a party is delegating to a node and when." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Delegation data with the corresponding cursor." - }, - "v2DelegationsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2DelegationEdge" - }, - "description": "Page of delegations data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of delegations data and corresponding page information" - }, - "v2DepositEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaDeposit", - "description": "Data associated with a single deposit made on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Deposits data with the corresponding cursor." - }, - "v2DepositsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2DepositEdge" - }, - "description": "Page of deposits data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of deposits data received and corresponding page information" - }, - "v2ERC20MultiSigSignerAddedBundle": { - "type": "object", - "properties": { - "newSigner": { - "type": "string", - "description": "Ethereum address of the signer to be removed." - }, - "submitter": { - "type": "string", - "description": "Ethereum address of the submitter." - }, - "nonce": { - "type": "string", - "description": "Nonce used in the signing operation." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Unixnano timestamp for when the validator was added." - }, - "signatures": { - "type": "string", - "description": "Bundle of signatures from current validators to sign in the new signer." - }, - "epochSeq": { - "type": "string", - "description": "Epoch in which the validator was added." - } - }, - "title": "Signature bundle data to be added" - }, - "v2ERC20MultiSigSignerAddedBundleEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedBundle", - "description": "Signature bundle data to be added." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Signature bundle data that is to be added with the corresponding cursor." - }, - "v2ERC20MultiSigSignerAddedConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedBundleEdge" - }, - "description": "Page of signature bundle data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of signature data items to be added and corresponding page information" - }, - "v2ERC20MultiSigSignerRemovedBundle": { - "type": "object", - "properties": { - "oldSigner": { - "type": "string", - "description": "Ethereum address of the signer to be removed." - }, - "submitter": { - "type": "string", - "description": "Ethereum address of the submitter." - }, - "nonce": { - "type": "string", - "description": "Nonce used in the signing operation." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Unixnano timestamp for when the validator was added." - }, - "signatures": { - "type": "string", - "description": "Bundle of signatures from current validators to sign in the new signer." - }, - "epochSeq": { - "type": "string", - "description": "Epoch in which the validator was removed." - } - }, - "title": "Signature bundle data to be removed" - }, - "v2ERC20MultiSigSignerRemovedBundleEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedBundle", - "description": "Signature bundle data to be added." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Signature bundle data to be removed, with the corresponding cursor." - }, - "v2ERC20MultiSigSignerRemovedConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedBundleEdge" - }, - "description": "Page of signature bundle data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of signature data items to be removed and corresponding page information." - }, - "v2EpochRewardSummaryConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2EpochRewardSummaryEdge" - }, - "description": "Page of rewards summary data for epochs and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of rewards summary data for epoch and corresponding page information" - }, - "v2EpochRewardSummaryEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaEpochRewardSummary", - "description": "Rewards summary data for epoch." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Rewards summary data for epoch with the corresponding cursor." - }, - "v2EstimateFeeResponse": { - "type": "object", - "properties": { - "fee": { - "$ref": "#/definitions/vegaFee", - "description": "Summary of the estimated fees for this order if it were to trade now." - } - }, - "title": "Response that is received from EstimateFeeRequest, contains the estimated fees for a given order" - }, - "v2EstimateMarginResponse": { - "type": "object", - "properties": { - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Summary of the estimated margins for this order if it were to trade now." - } - }, - "title": "Response to an estimate margin request, containing the estimated margin levels for a given order" - }, - "v2EstimatePositionResponse": { - "type": "object", - "properties": { - "margin": { - "$ref": "#/definitions/v2MarginEstimate", - "description": "Margin level range estimate for the specified position." - }, - "collateralIncreaseEstimate": { - "$ref": "#/definitions/v2CollateralIncreaseEstimate", - "description": "Estimated margin account balance increase." - }, - "liquidation": { - "$ref": "#/definitions/v2LiquidationEstimate", - "description": "Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request." - } - }, - "description": "Response for the estimated margin level, margin account balance change, and liquidation price for the specified position." - }, - "v2EstimateTransferFeeResponse": { - "type": "object", - "properties": { - "fee": { - "type": "string", - "description": "Estimated fee for the transfer." - }, - "discount": { - "type": "string", - "description": "Discount applied to the fee." - } - }, - "title": "Results of estimation of transfer fee and the fee discount" - }, - "v2EthereumKeyRotationEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1EthereumKeyRotation", - "description": "Data relating to an Ethereum key rotation performed by a node on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Ethereum key rotation data with the corresponding cursor." - }, - "v2EthereumKeyRotationsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2EthereumKeyRotationEdge" - }, - "description": "Page of Ethereum key rotations data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of Ethereum key rotations data and corresponding page information" - }, - "v2FeesStatsForParty": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Settlement asset of the market." - }, - "totalRewardsReceived": { - "type": "string", - "description": "Total referral rewards received by referrer of the referral set." - }, - "refereesDiscountApplied": { - "type": "string", - "description": "Total referral discounts applied to referee fees." - }, - "volumeDiscountApplied": { - "type": "string", - "description": "Total volume discounts applied to referee fees." - }, - "totalMakerFeesReceived": { - "type": "string", - "description": "Total maker fees received by the maker side." - } - } - }, - "v2FundingPaymentConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FundingPaymentEdge" - }, - "description": "Page of funding payment data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of funding payment data and corresponding page information." - }, - "v2FundingPaymentEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2FundingPayment", - "description": "Funding payment data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Funding payment data with the corresponding cursor." - }, - "v2FundingPeriodConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FundingPeriodEdge" - }, - "description": "Page of funding period data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of funding period data and corresponding page information." - }, - "v2FundingPeriodDataPointConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FundingPeriodDataPointEdge" - }, - "description": "Page of funding period data points and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of funding period data points and corresponding page information." - }, - "v2FundingPeriodDataPointEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1FundingPeriodDataPoint", - "description": "Funding period data point." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Funding period data point with the corresponding cursor." - }, - "v2FundingPeriodEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1FundingPeriod", - "description": "Funding period data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Funding period data with the corresponding cursor." - }, - "v2Game": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "Unique ID of the game" - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the last game metrics were captured." - }, - "participants": { - "type": "string", - "format": "uint64", - "description": "The number of participants in the game." - }, - "team": { - "$ref": "#/definitions/v2TeamGameEntities", - "title": "Team entities that are participating in the game" - }, - "individual": { - "$ref": "#/definitions/v2IndividualGameEntities", - "title": "Individual entities that are participating in the game" - } - }, - "description": "Data relating to a game." - }, - "v2GameEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2Game", - "description": "Game data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Game information and corresponding cursor." - }, - "v2GamesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2GameEdge" - }, - "description": "Page of games data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of games data and corresponding page information." - }, - "v2GetActiveNetworkHistoryPeerAddressesResponse": { - "type": "object", - "properties": { - "ipAddresses": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of IP addresses for the active peers." - } - }, - "title": "Response containing the addresses of active network history peers" - }, - "v2GetAssetResponse": { - "type": "object", - "properties": { - "asset": { - "$ref": "#/definitions/vegaAsset", - "description": "Asset information that is returned." - } - }, - "title": "Response from getting an asset" - }, - "v2GetCurrentReferralProgramResponse": { - "type": "object", - "properties": { - "currentReferralProgram": { - "$ref": "#/definitions/apiv2ReferralProgram", - "description": "Referral program currently activated on the network." - } - }, - "title": "Response containing the current referral program" - }, - "v2GetCurrentVolumeDiscountProgramResponse": { - "type": "object", - "properties": { - "currentVolumeDiscountProgram": { - "$ref": "#/definitions/apiv2VolumeDiscountProgram", - "description": "Volume discount program currently activated on the network." - } - }, - "title": "Response containing the current referral program" - }, - "v2GetDepositResponse": { - "type": "object", - "properties": { - "deposit": { - "$ref": "#/definitions/vegaDeposit", - "description": "Deposit matching the ID from the request." - } - }, - "title": "Response that is received from getting deposit data" - }, - "v2GetERC20ListAssetBundleResponse": { - "type": "object", - "properties": { - "assetSource": { - "type": "string", - "description": "Address of the asset on Ethereum." - }, - "vegaAssetId": { - "type": "string", - "description": "Asset ID for the underlying Vega asset." - }, - "nonce": { - "type": "string", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission." - }, - "signatures": { - "type": "string", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`." - } - }, - "title": "Response from listing the signature bundle to an ERC-20 token in the collateral bridge" - }, - "v2GetERC20SetAssetLimitsBundleResponse": { - "type": "object", - "properties": { - "assetSource": { - "type": "string", - "description": "Address of the asset on Ethereum." - }, - "vegaAssetId": { - "type": "string", - "description": "Asset ID for the underlying Vega asset." - }, - "nonce": { - "type": "string", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limit deposit for this asset." - }, - "threshold": { - "type": "string", - "description": "Threshold withdraw for this asset." - }, - "signatures": { - "type": "string", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`." - } - }, - "title": "Response for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge" - }, - "v2GetERC20WithdrawalApprovalResponse": { - "type": "object", - "properties": { - "assetSource": { - "type": "string", - "description": "Address of asset on Ethereum." - }, - "amount": { - "type": "string", - "description": "Amount to be withdrawn." - }, - "nonce": { - "type": "string", - "description": "Nonce that uniquely identifies this signature bundle and prevents resubmission." - }, - "signatures": { - "type": "string", - "description": "Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: 0x + sig1 + sig2 + ... + sixN." - }, - "targetAddress": { - "type": "string", - "description": "Ethereum address, prefixed with `0x`, that will receive the withdrawn assets." - }, - "creation": { - "type": "string", - "format": "int64", - "description": "Creation timestamps." - } - }, - "title": "Response with all information required to bundle the call to finalise the withdrawal on the erc20 bridge\nfunction withdraw_asset(address asset_source, uint256 asset_id, uint256 amount, uint256 expiry, uint256 nonce, bytes memory signatures)" - }, - "v2GetEpochResponse": { - "type": "object", - "properties": { - "epoch": { - "$ref": "#/definitions/vegaEpoch", - "description": "Data specific to a single epoch on the Vega network. This includes the epoch number,\nstart and end times, and the nodes that participated in the epoch." - } - }, - "title": "Response from getting epoch" - }, - "v2GetFeesStatsForPartyResponse": { - "type": "object", - "properties": { - "feesStatsForParty": { - "type": "array", - "items": { - "$ref": "#/definitions/v2FeesStatsForParty" - }, - "description": "Fees statistics for the given request." - } - }, - "description": "Response that is sent when requesting fees statistics for a given party." - }, - "v2GetFeesStatsResponse": { - "type": "object", - "properties": { - "feesStats": { - "$ref": "#/definitions/v1FeesStats", - "description": "Fees statistics for the given request." - } - }, - "description": "Response that is sent when requesting fees statistics." - }, - "v2GetGovernanceDataResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/vegaGovernanceData", - "description": "Governance data content, i.e. proposal and votes for and against." - } - }, - "title": "Response from getting governance data" - }, - "v2GetLastTradeResponse": { - "type": "object", - "properties": { - "trade": { - "$ref": "#/definitions/vegaTrade", - "description": "Information about the trade, if one is found." - } - }, - "title": "Response for the latest trade that occurred on Vega for a given market" - }, - "v2GetLatestMarketDataResponse": { - "type": "object", - "properties": { - "marketData": { - "$ref": "#/definitions/vegaMarketData", - "description": "Market data that was requested." - } - }, - "title": "Response that is received when listing the latest market data for a given market" - }, - "v2GetLatestMarketDepthResponse": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID of the depth levels returned." - }, - "buy": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Zero or more price levels for the buy side of the market depth data." - }, - "sell": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Zero or more price levels for the sell side of the market depth data." - }, - "lastTrade": { - "$ref": "#/definitions/vegaTrade", - "description": "Last trade recorded on Vega." - }, - "sequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number incremented after each update." - } - }, - "title": "Response that is received when latest market depth data is queried" - }, - "v2GetMarketDataHistoryByIDResponse": { - "type": "object", - "properties": { - "marketData": { - "$ref": "#/definitions/v2MarketDataConnection", - "description": "Page of market data history with the corresponding page information." - } - }, - "title": "Response that is received when querying Market Data History" - }, - "v2GetMarketResponse": { - "type": "object", - "properties": { - "market": { - "$ref": "#/definitions/vegaMarket", - "description": "Information about the market requested." - } - }, - "title": "Response from getting a market by ID" - }, - "v2GetMostRecentNetworkHistorySegmentResponse": { - "type": "object", - "properties": { - "segment": { - "$ref": "#/definitions/v2HistorySegment", - "description": "Data relating to a history segment created by a Vega data node." - }, - "swarmKeySeed": { - "type": "string", - "description": "Key seed for the swarm section." - } - }, - "title": "Response from getting most recent history segment" - }, - "v2GetNetworkDataResponse": { - "type": "object", - "properties": { - "nodeData": { - "$ref": "#/definitions/vegaNodeData", - "description": "Summary of information with respect to nodes on the Vega network." - } - }, - "title": "Response from getting network data" - }, - "v2GetNetworkHistoryBootstrapPeersResponse": { - "type": "object", - "properties": { - "bootstrapPeers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of peers that can be used to bootstrap a Vega data node." - } - }, - "title": "Response containing the nodes network history bootstrap peers" - }, - "v2GetNetworkHistoryStatusResponse": { - "type": "object", - "properties": { - "ipfsAddress": { - "type": "string", - "description": "IPFS address of the data node currently connected to." - }, - "swarmKey": { - "type": "string", - "description": "Swarm key used by the IPFS swarm." - }, - "swarmKeySeed": { - "type": "string", - "description": "Swarm key seed used by the IPFS swarm." - }, - "connectedPeers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of peers connected to the IPFS swarm." - } - }, - "title": "Response containing the status of network history" - }, - "v2GetNetworkLimitsResponse": { - "type": "object", - "properties": { - "limits": { - "$ref": "#/definitions/vegaNetworkLimits", - "description": "List of received network limits." - } - }, - "title": "Response received when querying the current network limits" - }, - "v2GetNetworkParameterResponse": { - "type": "object", - "properties": { - "networkParameter": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "Network parameter key and value." - } - }, - "title": "Response that is received when getting a network parameter" - }, - "v2GetNodeResponse": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaNode", - "description": "Data specific to a single node on the Vega network." - } - }, - "title": "Response from getting node" - }, - "v2GetOracleSpecResponse": { - "type": "object", - "properties": { - "oracleSpec": { - "$ref": "#/definitions/vegaOracleSpec", - "description": "External data spec matching the ID." - } - }, - "title": "Response for a oracle spec" - }, - "v2GetOrderResponse": { - "type": "object", - "properties": { - "order": { - "$ref": "#/definitions/vegaOrder", - "description": "Order details, if one was found." - } - }, - "title": "Response received from the query for getting a single order" - }, - "v2GetPartyActivityStreakResponse": { - "type": "object", - "properties": { - "activityStreak": { - "$ref": "#/definitions/v1PartyActivityStreak", - "description": "Party's activity streak in a given epoch." - } - }, - "title": "Response when getting a party's activity streaks across epochs" - }, - "v2GetPartyResponse": { - "type": "object", - "properties": { - "party": { - "$ref": "#/definitions/vegaParty", - "description": "Data for the party requested." - } - }, - "title": "Response from getting party by ID" - }, - "v2GetPartyVestingStatsResponse": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "rewardBonusMultiplier": { - "type": "string", - "description": "Reward bonus multiplier." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which this information is valid." - }, - "quantumBalance": { - "type": "string", - "description": "The balance of the party, in quantum." - } - }, - "title": "Vesting reward statistics for a given party" - }, - "v2GetProtocolUpgradeStatusResponse": { - "type": "object", - "properties": { - "ready": { - "type": "boolean", - "description": "Indicator if the upgrade is ready or not." - } - }, - "title": "Response from getting protocol upgrade status" - }, - "v2GetReferralSetStatsResponse": { - "type": "object", - "properties": { - "stats": { - "$ref": "#/definitions/v2ReferralSetStatsConnection", - "description": "Referral set statistics for the epoch." - } - }, - "description": "Response containing the volume discount statistics for the given epoch." - }, - "v2GetRiskFactorsResponse": { - "type": "object", - "properties": { - "riskFactor": { - "$ref": "#/definitions/vegaRiskFactor", - "description": "Risk factor emitted by the risk model for a given market." - } - }, - "title": "Response that is received from getting a risk factor" - }, - "v2GetStakeResponse": { - "type": "object", - "properties": { - "currentStakeAvailable": { - "type": "string", - "description": "Current stake available information." - }, - "stakeLinkings": { - "$ref": "#/definitions/v2StakesConnection", - "description": "Paged list of stake data with corresponding page information." - } - }, - "title": "Response that is received from requesting stake information" - }, - "v2GetStopOrderResponse": { - "type": "object", - "properties": { - "order": { - "$ref": "#/definitions/v1StopOrderEvent", - "description": "Order details, if one was found." - } - }, - "description": "Response received from the query for getting a single stop order." - }, - "v2GetTotalTransferFeeDiscountResponse": { - "type": "object", - "properties": { - "totalDiscount": { - "type": "string", - "description": "Total per party per asset discount available." - } - }, - "title": "Returns total transfer fee discount available" - }, - "v2GetTransferResponse": { - "type": "object", - "properties": { - "transferNode": { - "$ref": "#/definitions/v2TransferNode", - "description": "Transfer and its fees requested by ID." - } - }, - "title": "Response that is received when querying transfers by ID" - }, - "v2GetVegaTimeResponse": { - "type": "object", - "properties": { - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp representation of current VegaTime as represented in Unix nanoseconds, for example\n`1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`." - } - }, - "title": "Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"" - }, - "v2GetVestingBalancesSummaryResponse": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID." - }, - "epochSeq": { - "type": "string", - "format": "uint64", - "description": "Epoch for which these balances are valid." - }, - "lockedBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyLockedBalance" - }, - "description": "List of locked balances for the party." - }, - "vestingBalances": { - "type": "array", - "items": { - "$ref": "#/definitions/v1PartyVestingBalance" - }, - "description": "List of vesting balances for the party." - } - }, - "description": "List of vesting and locked balances for a party." - }, - "v2GetVolumeDiscountStatsResponse": { - "type": "object", - "properties": { - "stats": { - "$ref": "#/definitions/v2VolumeDiscountStatsConnection", - "description": "Volume discount statistics for an epoch." - } - }, - "description": "Response containing the volume discount statistics for the given epoch." - }, - "v2GetWithdrawalResponse": { - "type": "object", - "properties": { - "withdrawal": { - "$ref": "#/definitions/vegaWithdrawal", - "description": "Withdrawal matching the ID from the request." - } - }, - "title": "Response for a withdrawal request" - }, - "v2GovernanceDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2GovernanceDataEdge" - }, - "description": "Page of governance data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of governance data and corresponding page information" - }, - "v2GovernanceDataEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaGovernanceData", - "description": "Governance data content, i.e. proposal and votes for and against." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Governance data with the corresponding cursor." - }, - "v2HistorySegment": { - "type": "object", - "properties": { - "fromHeight": { - "type": "string", - "format": "int64", - "description": "Starting height of the history segment." - }, - "toHeight": { - "type": "string", - "format": "int64", - "description": "Ending height of the history segment." - }, - "historySegmentId": { - "type": "string", - "description": "History segment ID." - }, - "previousHistorySegmentId": { - "type": "string", - "description": "Previous history segment ID." - }, - "databaseVersion": { - "type": "string", - "format": "int64", - "description": "Database schema version of the history segment." - }, - "chainId": { - "type": "string", - "description": "Chain ID of the history segment." - } - }, - "title": "Describes a network history segment" - }, - "v2IndividualGameEntities": { - "type": "object", - "properties": { - "individual": { - "type": "array", - "items": { - "$ref": "#/definitions/v2IndividualGameEntity" - }, - "description": "List of individual party IDs, and the metrics associated with each participant." - } - }, - "title": "List of individuals that are participating in a game" - }, - "v2IndividualGameEntity": { - "type": "object", - "properties": { - "individual": { - "type": "string", - "title": "Party ID of the individual participating" - }, - "rank": { - "type": "string", - "format": "uint64", - "description": "Rank of the individual either in the game or within their team." - }, - "volume": { - "type": "string", - "title": "Volume traded by the individual" - }, - "rewardMetric": { - "$ref": "#/definitions/vegaDispatchMetric", - "title": "Reward metric applied to the individual" - }, - "rewardEarned": { - "type": "string", - "title": "Reward earned by the individual during the epoch" - }, - "totalRewardsEarned": { - "type": "string", - "title": "Total rewards earned by the individual for the game" - } - }, - "description": "Data relating to an individual participating in a game.\nThis can be used for both team members who are participating in a team game,\nor individuals participating in an individual entity game." - }, - "v2InfoResponse": { - "type": "object", - "properties": { - "version": { - "type": "string", - "description": "Semver formatted version of the data node." - }, - "commitHash": { - "type": "string", - "description": "Commit hash from which the data node was built." - } - }, - "title": "Response that is received from the node information query" - }, - "v2IntervalToCandleId": { - "type": "object", - "properties": { - "interval": { - "type": "string", - "description": "Interval for the candle." - }, - "candleId": { - "type": "string", - "description": "Unique id of the candle." - } - }, - "title": "Maps an interval for a given market to its corresponding candle ID" - }, - "v2KeyRotationConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2KeyRotationEdge" - }, - "description": "Page of key rotation data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of key rotations data and corresponding page information" - }, - "v2KeyRotationEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1KeyRotation", - "description": "Data relating to a key rotation that was performed by a node on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Key rotation data with the corresponding cursor." - }, - "v2LedgerEntryFilter": { - "type": "object", - "properties": { - "closeOnAccountFilters": { - "type": "boolean", - "description": "Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included." - }, - "fromAccountFilter": { - "$ref": "#/definitions/v2AccountFilter", - "description": "Used to set values for filtering sender accounts. Party must be provided in this filter or 'to' account filter, or both." - }, - "toAccountFilter": { - "$ref": "#/definitions/v2AccountFilter", - "description": "Used to set values for filtering receiver accounts. Party must be provided in this filter or 'from' account filter, or both." - }, - "transferTypes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaTransferType" - }, - "description": "List of transfer types that is used for filtering sender and receiver accounts." - }, - "transferId": { - "type": "string", - "title": "List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored" - } - }, - "description": "Ledger entry filter sets filters on returned set of ledger entries." - }, - "v2LiquidationEstimate": { - "type": "object", - "properties": { - "worstCase": { - "$ref": "#/definitions/v2LiquidationPrice", - "description": "Liquidation price estimate assuming slippage cap is applied." - }, - "bestCase": { - "$ref": "#/definitions/v2LiquidationPrice", - "description": "Liquidation price estimate assuming no slippage." - } - }, - "description": "Liquidation estimate for both worst and best case possible." - }, - "v2LiquidationPrice": { - "type": "object", - "properties": { - "openVolumeOnly": { - "type": "string", - "description": "Liquidation price for current open volume ignoring any active orders." - }, - "includingBuyOrders": { - "type": "string", - "description": "Liquidation price assuming buy orders start getting filled." - }, - "includingSellOrders": { - "type": "string", - "description": "Liquidation price assuming sell orders start getting filled." - } - }, - "description": "Liquidation price estimate for either only the current open volume and position given some or all buy orders get filled, or position given some or all sell orders get filled." - }, - "v2LiquidityProvider": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID of the liquidity provider." - }, - "marketId": { - "type": "string", - "description": "ID of the market the liquidity provider is active in." - }, - "feeShare": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare", - "description": "Information used for calculating an LP's fee share, such as the equity like share,\naverage entry valuation and liquidity score for the liquidity provider for the specified market." - }, - "sla": { - "$ref": "#/definitions/vegaLiquidityProviderSLA", - "description": "Information about LP's SLA performance." - } - }, - "description": "Liquidity provider information." - }, - "v2LiquidityProviderConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2LiquidityProviderEdge" - }, - "description": "Page of liquidity provider data." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of liquidity provider data and corresponding page information." - }, - "v2LiquidityProviderEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2LiquidityProvider", - "description": "Liquidity provider information returned by the API." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further data." - } - }, - "description": "Liquidity provider data with the corresponding cursor." - }, - "v2LiquidityProvisionWithPendingEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2LiquidityProvision", - "description": "Data corresponding to a liquidity provider's commitment." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Liquidity provision data with the corresponding cursor." - }, - "v2LiquidityProvisionsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2LiquidityProvisionsEdge" - }, - "description": "Page of liquidity provisions data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of liquidity provisions data and corresponding page information" - }, - "v2LiquidityProvisionsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaLiquidityProvision", - "description": "Data corresponding to a liquidity provider's commitment." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Liquidity provision data with the corresponding cursor." - }, - "v2LiquidityProvisionsWithPendingConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2LiquidityProvisionWithPendingEdge" - }, - "description": "Page of liquidity provisions data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used to fetch further pages." - } - }, - "title": "Page of liquidity provisions data and corresponding page information" - }, - "v2ListAccountsResponse": { - "type": "object", - "properties": { - "accounts": { - "$ref": "#/definitions/v2AccountsConnection", - "description": "Page of accounts data and corresponding page information." - } - }, - "description": "Response that is received from listing accounts query." - }, - "v2ListAllLiquidityProvisionsResponse": { - "type": "object", - "properties": { - "liquidityProvisions": { - "$ref": "#/definitions/v2LiquidityProvisionsWithPendingConnection", - "description": "Page of liquidity provisions data and corresponding page information." - } - }, - "title": "Response from listing liquidity provisions" - }, - "v2ListAllNetworkHistorySegmentsResponse": { - "type": "object", - "properties": { - "segments": { - "type": "array", - "items": { - "$ref": "#/definitions/v2HistorySegment" - }, - "description": "Page of history segments data and corresponding page information." - } - }, - "title": "Response with a list of all the nodes history segments" - }, - "v2ListAllPositionsResponse": { - "type": "object", - "properties": { - "positions": { - "$ref": "#/definitions/v2PositionConnection", - "description": "Page of positions data and corresponding page information." - } - }, - "title": "Response to query for listing of positions, given the filter is supplied" - }, - "v2ListAssetsResponse": { - "type": "object", - "properties": { - "assets": { - "$ref": "#/definitions/v2AssetsConnection", - "description": "Page of assets data and corresponding page information." - } - }, - "title": "Response from listing assets" - }, - "v2ListBalanceChangesResponse": { - "type": "object", - "properties": { - "balances": { - "$ref": "#/definitions/v2AggregatedBalanceConnection", - "description": "Page of aggregated balances data and corresponding page information." - } - }, - "description": "Response that is received from querying balances changes." - }, - "v2ListCandleDataResponse": { - "type": "object", - "properties": { - "candles": { - "$ref": "#/definitions/v2CandleDataConnection", - "description": "Page of candle data and corresponding page information." - } - }, - "title": "Response for list of candles for a market at an interval" - }, - "v2ListCandleIntervalsResponse": { - "type": "object", - "properties": { - "intervalToCandleId": { - "type": "array", - "items": { - "$ref": "#/definitions/v2IntervalToCandleId" - }, - "description": "List of the mappings." - } - }, - "title": "List of mapped pairs `interval` -\u003e `candle ID` for a given market" - }, - "v2ListCheckpointsResponse": { - "type": "object", - "properties": { - "checkpoints": { - "$ref": "#/definitions/v2CheckpointsConnection", - "description": "Page of checkpoints data and corresponding page information." - } - }, - "title": "Response message containing all checkpoints requested" - }, - "v2ListCoreSnapshotsResponse": { - "type": "object", - "properties": { - "coreSnapshots": { - "$ref": "#/definitions/v2CoreSnapshotConnection", - "description": "Page of core snapshot data and corresponding page information." - } - }, - "description": "Response from a ListCoreSnapshots RPC call; a paginated list of the core snapshots." - }, - "v2ListDelegationsResponse": { - "type": "object", - "properties": { - "delegations": { - "$ref": "#/definitions/v2DelegationsConnection", - "description": "Page of delegations data and corresponding page information." - } - }, - "title": "Response from listing delegations" - }, - "v2ListDepositsResponse": { - "type": "object", - "properties": { - "deposits": { - "$ref": "#/definitions/v2DepositsConnection", - "description": "Page of deposits data and corresponding page information." - } - }, - "title": "Response from listing deposits" - }, - "v2ListERC20MultiSigSignerAddedBundlesResponse": { - "type": "object", - "properties": { - "bundles": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedConnection", - "description": "Page of bundles for that validator - it may have been added multiple times if removed in between - and corresponding page information." - } - }, - "title": "Response from adding a signature bundle to the signer list of a multisig contract for a particular validator" - }, - "v2ListERC20MultiSigSignerRemovedBundlesResponse": { - "type": "object", - "properties": { - "bundles": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedConnection", - "description": "Page of signer bundle data items for that validator and corresponding page information." - } - }, - "title": "Response when removing a signature bundle from the signer list of the multisig contract for a particular validator" - }, - "v2ListEntitiesResponse": { - "type": "object", - "properties": { - "accounts": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAccount" - } - }, - "orders": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrder" - } - }, - "positions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPosition" - } - }, - "ledgerEntries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerEntry" - } - }, - "balanceChanges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2AccountBalance" - } - }, - "transfers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaeventsv1Transfer" - } - }, - "votes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - } - }, - "erc20MultiSigSignerAddedBundles": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerAddedBundle" - } - }, - "erc20MultiSigSignerRemovedBundles": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ERC20MultiSigSignerRemovedBundle" - } - }, - "trades": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaTrade" - } - }, - "oracleSpecs": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOracleSpec" - } - }, - "oracleData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOracleData" - } - }, - "markets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarket" - } - }, - "parties": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaParty" - } - }, - "marginLevels": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarginLevels" - } - }, - "rewards": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaReward" - } - }, - "deposits": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDeposit" - } - }, - "withdrawals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaWithdrawal" - } - }, - "assets": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaAsset" - } - }, - "liquidityProvisions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProvision" - } - }, - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaProposal" - } - }, - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - } - }, - "nodes": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NodeBasic" - } - }, - "nodeSignatures": { - "type": "array", - "items": { - "$ref": "#/definitions/v1NodeSignature" - } - }, - "networkParameters": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNetworkParameter" - } - }, - "keyRotations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1KeyRotation" - } - }, - "ethereumKeyRotations": { - "type": "array", - "items": { - "$ref": "#/definitions/v1EthereumKeyRotation" - } - }, - "protocolUpgradeProposals": { - "type": "array", - "items": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent" - } - } - }, - "title": "Response from listing entities that were created for a given transaction hash" - }, - "v2ListEpochRewardSummariesResponse": { - "type": "object", - "properties": { - "summaries": { - "$ref": "#/definitions/v2EpochRewardSummaryConnection", - "description": "Page of rewards details for a single party and corresponding page information." - } - }, - "title": "Return message with reward details in for a single party" - }, - "v2ListEthereumKeyRotationsResponse": { - "type": "object", - "properties": { - "keyRotations": { - "$ref": "#/definitions/v2EthereumKeyRotationsConnection", - "description": "Page of Ethereum key rotations data and corresponding page information." - } - }, - "title": "Response message containing Ethereum key rotations" - }, - "v2ListFundingPaymentsResponse": { - "type": "object", - "properties": { - "fundingPayments": { - "$ref": "#/definitions/v2FundingPaymentConnection", - "description": "Page of funding period data and corresponding page information." - } - }, - "title": "Response from listing funding payments" - }, - "v2ListFundingPeriodDataPointsResponse": { - "type": "object", - "properties": { - "fundingPeriodDataPoints": { - "$ref": "#/definitions/v2FundingPeriodDataPointConnection", - "description": "Page of funding period data points and corresponding page information." - } - }, - "description": "Response from listing funding period data points." - }, - "v2ListFundingPeriodsResponse": { - "type": "object", - "properties": { - "fundingPeriods": { - "$ref": "#/definitions/v2FundingPeriodConnection", - "description": "Page of funding period data and corresponding page information." - } - }, - "title": "Response from listing funding periods" - }, - "v2ListGamesResponse": { - "type": "object", - "properties": { - "games": { - "$ref": "#/definitions/v2GamesConnection", - "description": "Page of games data and corresponding page information." - } - }, - "description": "Response containing games data." - }, - "v2ListGovernanceDataRequestType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_ALL", - "TYPE_NEW_MARKET", - "TYPE_UPDATE_MARKET", - "TYPE_NETWORK_PARAMETERS", - "TYPE_NEW_ASSET", - "TYPE_NEW_FREE_FORM", - "TYPE_UPDATE_ASSET", - "TYPE_NEW_SPOT_MARKET", - "TYPE_UPDATE_SPOT_MARKET", - "TYPE_NEW_TRANSFER", - "TYPE_CANCEL_TRANSFER", - "TYPE_UPDATE_MARKET_STATE", - "TYPE_UPDATE_REFERRAL_PROGRAM", - "TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program", - "title": "Filter for the types of governance proposals to view" - }, - "v2ListGovernanceDataResponse": { - "type": "object", - "properties": { - "connection": { - "$ref": "#/definitions/v2GovernanceDataConnection", - "description": "Page of governance data and corresponding page information." - } - }, - "title": "Response from listing governance data" - }, - "v2ListKeyRotationsResponse": { - "type": "object", - "properties": { - "rotations": { - "$ref": "#/definitions/v2KeyRotationConnection", - "description": "Page of key rotations data and corresponding page information." - } - }, - "title": "Response message containing Vega key rotations" - }, - "v2ListLatestMarketDataResponse": { - "type": "object", - "properties": { - "marketsData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketData" - } - } - }, - "title": "Response that is received when listing the latest market data for every market" - }, - "v2ListLedgerEntriesResponse": { - "type": "object", - "properties": { - "ledgerEntries": { - "$ref": "#/definitions/v2AggregatedLedgerEntriesConnection", - "description": "Page of aggregated ledger entries data and corresponding page information." - } - }, - "title": "Response that is received when listing ledger entries" - }, - "v2ListLiquidityProvidersResponse": { - "type": "object", - "properties": { - "liquidityProviders": { - "$ref": "#/definitions/v2LiquidityProviderConnection", - "description": "Page of liquidity providers and corresponding page information." - } - }, - "description": "Response for listing liquidity providers." - }, - "v2ListLiquidityProvisionsResponse": { - "type": "object", - "properties": { - "liquidityProvisions": { - "$ref": "#/definitions/v2LiquidityProvisionsConnection", - "description": "Page of liquidity provisions data and corresponding page information." - } - }, - "title": "Response from listing liquidity provisions" - }, - "v2ListMarginLevelsResponse": { - "type": "object", - "properties": { - "marginLevels": { - "$ref": "#/definitions/v2MarginConnection", - "description": "Page of margin levels data and corresponding page information." - } - }, - "title": "Response from listing margin levels" - }, - "v2ListMarketsResponse": { - "type": "object", - "properties": { - "markets": { - "$ref": "#/definitions/v2MarketConnection", - "description": "Page of markets and corresponding page information." - } - }, - "title": "Response from listing markets" - }, - "v2ListNetworkParametersResponse": { - "type": "object", - "properties": { - "networkParameters": { - "$ref": "#/definitions/v2NetworkParameterConnection", - "description": "Page of network parameters and corresponding page information." - } - }, - "title": "Response containing all of the Vega network parameters" - }, - "v2ListNodeSignaturesResponse": { - "type": "object", - "properties": { - "signatures": { - "$ref": "#/definitions/v2NodeSignaturesConnection", - "description": "Page of nodes signatures and corresponding page information." - } - }, - "title": "Response to specify the ID of the resource to retrieve aggregated signatures for" - }, - "v2ListNodesResponse": { - "type": "object", - "properties": { - "nodes": { - "$ref": "#/definitions/v2NodesConnection", - "description": "Page of node data and corresponding page information." - } - }, - "title": "Response from listing nodes" - }, - "v2ListOracleDataResponse": { - "type": "object", - "properties": { - "oracleData": { - "$ref": "#/definitions/v2OracleDataConnection", - "description": "Page of seen oracle data and corresponding page information." - } - }, - "title": "Response to get all seen oracle data" - }, - "v2ListOracleSpecsResponse": { - "type": "object", - "properties": { - "oracleSpecs": { - "$ref": "#/definitions/v2OracleSpecsConnection", - "description": "Page of active oracle specs and corresponding page information." - } - }, - "title": "Response to get all active oracle specs" - }, - "v2ListOrderVersionsResponse": { - "type": "object", - "properties": { - "orders": { - "$ref": "#/definitions/v2OrderConnection", - "description": "Page of order versions and corresponding page information." - } - }, - "title": "Response that is received when listing possible order versions" - }, - "v2ListOrdersResponse": { - "type": "object", - "properties": { - "orders": { - "$ref": "#/definitions/v2OrderConnection", - "description": "Page of orders data and corresponding page information." - } - }, - "title": "Response that is received from the query to list orders" - }, - "v2ListPaidLiquidityFeesResponse": { - "type": "object", - "properties": { - "paidLiquidityFees": { - "$ref": "#/definitions/v2PaidLiquidityFeesConnection", - "description": "Page of paid liquidity fees and corresponding page information." - } - }, - "description": "Paid liquidity fees response." - }, - "v2ListPartiesProfilesResponse": { - "type": "object", - "properties": { - "profiles": { - "$ref": "#/definitions/v2PartiesProfilesConnection", - "description": "Page of profile data and corresponding page information." - } - }, - "description": "Response from listing parties' profiles." - }, - "v2ListPartiesResponse": { - "type": "object", - "properties": { - "parties": { - "$ref": "#/definitions/v2PartyConnection", - "description": "Page of parties data and corresponding page information." - } - }, - "title": "Response from listing parties" - }, - "v2ListPartyMarginModesResponse": { - "type": "object", - "properties": { - "partyMarginModes": { - "$ref": "#/definitions/v2PartyMarginModesConnection", - "description": "Page of party margin modes data and corresponding page information." - } - }, - "description": "Response containing party margin modes." - }, - "v2ListPositionsResponse": { - "type": "object", - "properties": { - "positions": { - "$ref": "#/definitions/v2PositionConnection", - "description": "Page of positions data and corresponding page information." - } - }, - "title": "Response for a list of positions for a party" - }, - "v2ListProtocolUpgradeProposalsResponse": { - "type": "object", - "properties": { - "protocolUpgradeProposals": { - "$ref": "#/definitions/v2ProtocolUpgradeProposalConnection", - "description": "Page of protocol upgrade proposals and corresponding page information." - } - }, - "title": "Response type from a ListProtocolUpgradeProposals RPC call; a paginated list of protocol upgrade proposals" - }, - "v2ListReferralSetRefereesResponse": { - "type": "object", - "properties": { - "referralSetReferees": { - "$ref": "#/definitions/v2ReferralSetRefereeConnection", - "description": "Page of referral set referee data and corresponding page information." - } - }, - "title": "Response containing information about a referral set's referees" - }, - "v2ListReferralSetsResponse": { - "type": "object", - "properties": { - "referralSets": { - "$ref": "#/definitions/v2ReferralSetConnection", - "description": "Page of referral set data and corresponding page information." - } - }, - "title": "Response containing information about a referral set or sets" - }, - "v2ListRewardSummariesResponse": { - "type": "object", - "properties": { - "summaries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRewardSummary" - }, - "description": "Page of rewards details data and corresponding page information." - } - }, - "title": "Response from listing reward details in for a single party" - }, - "v2ListRewardsResponse": { - "type": "object", - "properties": { - "rewards": { - "$ref": "#/definitions/v2RewardsConnection", - "description": "Page of rewards data and corresponding page information." - } - }, - "title": "Response for listing reward details for a single party" - }, - "v2ListStopOrdersResponse": { - "type": "object", - "properties": { - "orders": { - "$ref": "#/definitions/v2StopOrderConnection", - "description": "Page of stop orders data and corresponding page information." - } - }, - "description": "Response that is received from the query to list stop orders." - }, - "v2ListSuccessorMarketsResponse": { - "type": "object", - "properties": { - "successorMarkets": { - "$ref": "#/definitions/v2SuccessorMarketConnection", - "description": "List of markets in the succession line." - } - }, - "description": "Response from a list successor markets request." - }, - "v2ListTeamMembersStatisticsResponse": { - "type": "object", - "properties": { - "statistics": { - "$ref": "#/definitions/v2TeamMembersStatisticsConnection", - "description": "Page of team members' statistics data and corresponding page information." - } - }, - "description": "Response for the list team members' statistics request containing the statistics." - }, - "v2ListTeamRefereeHistoryResponse": { - "type": "object", - "properties": { - "teamRefereeHistory": { - "$ref": "#/definitions/v2TeamRefereeHistoryConnection", - "description": "Page of team referee history data and corresponding page information." - } - }, - "description": "Response that is sent when listing the referee history for a given team." - }, - "v2ListTeamRefereesResponse": { - "type": "object", - "properties": { - "teamReferees": { - "$ref": "#/definitions/v2TeamRefereeConnection", - "description": "Page of team referee data and corresponding page information." - } - }, - "description": "Response that is sent when listing the referees for a given team." - }, - "v2ListTeamsResponse": { - "type": "object", - "properties": { - "teams": { - "$ref": "#/definitions/v2TeamConnection", - "description": "Page of team data and corresponding page information." - } - }, - "description": "Response for the list teams request containing the team information." - }, - "v2ListTeamsStatisticsResponse": { - "type": "object", - "properties": { - "statistics": { - "$ref": "#/definitions/v2TeamsStatisticsConnection", - "description": "Page of teams' statistics data and corresponding page information." - } - }, - "description": "Response for the list teams' statistics request containing the statistics." - }, - "v2ListTradesResponse": { - "type": "object", - "properties": { - "trades": { - "$ref": "#/definitions/v2TradeConnection", - "description": "Page of trades data and corresponding page information." - } - }, - "title": "Response from listing trades" - }, - "v2ListTransfersResponse": { - "type": "object", - "properties": { - "transfers": { - "$ref": "#/definitions/v2TransferConnection", - "description": "Page of transfers data and corresponding page information." - } - }, - "title": "Response that is received when listing transfers" - }, - "v2ListVotesResponse": { - "type": "object", - "properties": { - "votes": { - "$ref": "#/definitions/v2VoteConnection", - "description": "Page of votes data received and corresponding page information." - } - }, - "title": "Response that is received when listing Votes" - }, - "v2ListWithdrawalsResponse": { - "type": "object", - "properties": { - "withdrawals": { - "$ref": "#/definitions/v2WithdrawalsConnection", - "description": "Page of withdrawals data and corresponding page information." - } - }, - "title": "Response from listing withdrawals data" - }, - "v2MarginConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2MarginEdge" - }, - "description": "Page of margins data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of margins data and corresponding page information." - }, - "v2MarginEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin levels data that satisfy a list margin levels request." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Margin data with the corresponding cursor." - }, - "v2MarginEstimate": { - "type": "object", - "properties": { - "worstCase": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin level estimate assuming slippage cap is applied." - }, - "bestCase": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin level estimate assuming no slippage." - } - }, - "description": "Margin level estimate for both worst and best case possible." - }, - "v2MarketConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2MarketEdge" - }, - "description": "Page of markets and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of markets and corresponding page information." - }, - "v2MarketDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2MarketDataEdge" - }, - "description": "Page of market data items and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of market data items and corresponding page information" - }, - "v2MarketDataEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaMarketData", - "description": "Data generated by a market when open." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Market data with the corresponding cursor." - }, - "v2MarketEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaMarket", - "description": "Information about the market." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Market information with the corresponding cursor." - }, - "v2NetworkParameterConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NetworkParameterEdge" - }, - "description": "Page of network parameters data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of network parameters and corresponding page information" - }, - "v2NetworkParameterEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "Name and associated value of a network parameter." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Network parameter with the corresponding cursor." - }, - "v2NodeBasic": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID identifying the node." - }, - "pubKey": { - "type": "string", - "description": "Node operator's public key." - }, - "tmPubKey": { - "type": "string", - "description": "Tendermint public key of the node." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node." - }, - "infoUrl": { - "type": "string", - "description": "URL that provides more information about the node." - }, - "location": { - "type": "string", - "description": "Country code for the location of the node." - }, - "status": { - "$ref": "#/definitions/vegaNodeStatus", - "description": "Node status." - }, - "name": { - "type": "string", - "description": "Node name." - }, - "avatarUrl": { - "type": "string", - "description": "Avatar URL." - } - }, - "description": "Represents a basic node without any epoch specific details like delegations, staking, rewards etc." - }, - "v2NodeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaNode", - "description": "Data specific to a single node on the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Node data with the corresponding cursor." - }, - "v2NodeSignatureEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1NodeSignature", - "description": "Node signature data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Nodes signature edge with the corresponding cursor." - }, - "v2NodeSignaturesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NodeSignatureEdge" - }, - "description": "Page of node signatures and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of node signatures and corresponding page information." - }, - "v2NodesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2NodeEdge" - }, - "description": "Page of node data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of node data and corresponding page information" - }, - "v2ObserveAccountsResponse": { - "type": "object", - "properties": { - "snapshot": { - "$ref": "#/definitions/v2AccountSnapshotPage", - "description": "'Initial image' snapshot containing current account balances." - }, - "updates": { - "$ref": "#/definitions/v2AccountUpdates", - "description": "List of account updates in the last block." - } - }, - "description": "Response that is received when subscribing to a stream of accounts." - }, - "v2ObserveCandleDataResponse": { - "type": "object", - "properties": { - "candle": { - "$ref": "#/definitions/apiv2Candle", - "description": "Candle data." - } - }, - "title": "Response that is received when subscribing to a stream of candles" - }, - "v2ObserveEventBusResponse": { - "type": "object", - "properties": { - "events": { - "type": "array", - "items": { - "$ref": "#/definitions/v1BusEvent" - }, - "description": "List of events that occurred on the Vega event bus." - } - }, - "title": "Response to a subscribed stream of events from the Vega event bus" - }, - "v2ObserveGovernanceResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/definitions/vegaGovernanceData", - "description": "Governance data, i.e. proposal and votes for and against." - } - }, - "title": "Response from governance subscription" - }, - "v2ObserveLedgerMovementsResponse": { - "type": "object", - "properties": { - "ledgerMovement": { - "$ref": "#/definitions/vegaLedgerMovement", - "description": "Ledger movements data with list of ledger entries and and post-transfer balances." - } - }, - "title": "Response from ledger movements subscription" - }, - "v2ObserveLiquidityProvisionsResponse": { - "type": "object", - "properties": { - "liquidityProvisions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProvision" - } - } - }, - "title": "Response from liquidity provisions subscription" - }, - "v2ObserveMarginLevelsResponse": { - "type": "object", - "properties": { - "marginLevels": { - "$ref": "#/definitions/vegaMarginLevels", - "description": "Margin levels data that match the subscription request filters." - } - }, - "title": "Response from subscribing to margin levels data" - }, - "v2ObserveMarketsDataResponse": { - "type": "object", - "properties": { - "marketData": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketData" - }, - "description": "List of market data." - } - }, - "title": "Response that is received for market data subscription" - }, - "v2ObserveMarketsDepthResponse": { - "type": "object", - "properties": { - "marketDepth": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketDepth" - }, - "description": "List of market depth data." - } - }, - "description": "Response that is received for MarketDepth subscription." - }, - "v2ObserveMarketsDepthUpdatesResponse": { - "type": "object", - "properties": { - "update": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMarketDepthUpdate" - }, - "description": "List of market depth update data." - } - }, - "title": "Response that is received for market depth update subscription" - }, - "v2ObserveOrdersResponse": { - "type": "object", - "properties": { - "snapshot": { - "$ref": "#/definitions/v2OrderSnapshotPage", - "description": "An 'initial image' snapshot containing current live orders." - }, - "updates": { - "$ref": "#/definitions/v2OrderUpdates", - "description": "List of order updates in the last block." - } - }, - "description": "Response that is received from an orders subscription." - }, - "v2ObservePositionsResponse": { - "type": "object", - "properties": { - "snapshot": { - "$ref": "#/definitions/v2PositionSnapshotPage", - "description": "An 'initial image' snapshot containing current positions." - }, - "updates": { - "$ref": "#/definitions/v2PositionUpdates", - "description": "List of position updates in the last block." - } - }, - "title": "Response received from a positions subscription request" - }, - "v2ObserveTradesResponse": { - "type": "object", - "properties": { - "trades": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaTrade" - }, - "description": "List of 0 or more trades." - } - }, - "title": "Stream of trades" - }, - "v2ObserveTransactionResultsResponse": { - "type": "object", - "properties": { - "transactionResults": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TransactionResult" - }, - "description": "List of 0 or more transaction results." - } - }, - "title": "Stream of transaction results" - }, - "v2ObserveVotesResponse": { - "type": "object", - "properties": { - "vote": { - "$ref": "#/definitions/vegaVote", - "description": "Data associated with governance votes that are published to the stream." - } - }, - "title": "Response that is received from votes subscription" - }, - "v2OracleDataConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2OracleDataEdge" - }, - "description": "Page of oracle data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of oracle data and corresponding page information." - }, - "v2OracleDataEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaOracleData", - "description": "Data that was received from an external oracle." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Oracle data item with the corresponding cursor." - }, - "v2OracleSpecEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaOracleSpec", - "description": "External spec data that satisfies the list request." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Oracle specs data item with the corresponding cursor." - }, - "v2OracleSpecsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2OracleSpecEdge" - }, - "description": "Page of oracle specs data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of oracle specs and corresponding page information" - }, - "v2OrderConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2OrderEdge" - }, - "description": "Page of orders and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of orders data and corresponding page information." - }, - "v2OrderEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaOrder", - "description": "Data associated with an order submitted to a Vega node." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Order data with the corresponding cursor." - }, - "v2OrderFilter": { - "type": "object", - "properties": { - "statuses": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrderStatus" - }, - "description": "Restrict orders to those with the given statuses." - }, - "types": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrderType" - }, - "description": "Restrict orders to those with the given types." - }, - "timeInForces": { - "type": "array", - "items": { - "$ref": "#/definitions/OrderTimeInForce" - }, - "description": "Restrict orders to those with the given Time In Force." - }, - "excludeLiquidity": { - "type": "boolean", - "description": "Indicator if liquidity provisions should be included or not in the list." - }, - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed by the given party IDs." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed on the given market IDs." - }, - "reference": { - "type": "string", - "description": "Restrict orders to those with the given reference." - }, - "dateRange": { - "$ref": "#/definitions/v2DateRange", - "description": "Restrict orders to those placed during the given date range. If not set, all orders will be returned." - }, - "liveOnly": { - "type": "boolean", - "description": "Restrict orders to those that are live. If not set, it is treated as being false." - } - }, - "title": "Order filter that contains all filtering conditions and values that are applied to the orders listing" - }, - "v2OrderInfo": { - "type": "object", - "properties": { - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Side for the order, e.g. buy or sell." - }, - "price": { - "type": "string", - "description": "Price for the order. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.", - "required": [ - "price" - ] - }, - "remaining": { - "type": "string", - "format": "uint64", - "description": "Size remaining.", - "required": [ - "remaining" - ] - }, - "isMarketOrder": { - "type": "boolean", - "description": "Boolean that indicates if it is a market order.", - "required": [ - "is_market_order" - ] - } - }, - "description": "Basic description of an order.", - "required": [ - "price", - "remaining", - "isMarketOrder" - ] - }, - "v2OrderSnapshotPage": { - "type": "object", - "properties": { - "orders": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrder" - }, - "description": "List of order data parts." - }, - "lastPage": { - "type": "boolean", - "description": "Indicator if the last page is reached or not." - } - }, - "description": "'Initial image' of live orders, may be sent over multiple response messages." - }, - "v2OrderUpdates": { - "type": "object", - "properties": { - "orders": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaOrder" - }, - "description": "List of orders data." - } - }, - "description": "List of order updates in the last block." - }, - "v2PageInfo": { - "type": "object", - "properties": { - "hasNextPage": { - "type": "boolean", - "description": "Indicator if there is a next page." - }, - "hasPreviousPage": { - "type": "boolean", - "description": "Indicator if there is a previous page." - }, - "startCursor": { - "type": "string", - "description": "Start cursor." - }, - "endCursor": { - "type": "string", - "description": "End cursor." - } - }, - "title": "Page information for cursor based pagination" - }, - "v2Pagination": { - "type": "object", - "properties": { - "first": { - "type": "integer", - "format": "int32", - "description": "Number of records to be returned that sort greater than row identified by cursor supplied in 'after'." - }, - "after": { - "type": "string", - "description": "If paging forwards, the cursor string for the last row of the previous page." - }, - "last": { - "type": "integer", - "format": "int32", - "description": "Number of records to be returned that sort less than row identified by cursor supplied in 'before'." - }, - "before": { - "type": "string", - "description": "If paging forwards, the cursor string for the first row of the previous page." - }, - "newestFirst": { - "type": "boolean", - "description": "Whether to order the results with the newest records first. If not set, the default value is true." - } - }, - "description": "All data returned from the API is ordered in a well-defined manner.\nThe specific columns and the order in which the sorting is performed\ndepend on the API endpoint being called. However, the primary sorting\ncolumn is usually the timestamp of the block in which the data was last updated.\n\nTo prevent excessively large response messages and to avoid overloading\ndatabase resources, the API employs a cursor-based pagination mechanism.\n\nThis Pagination message can be optionally provided as part of the request to specify:\n- The starting point within the total result set for beginning the page\n- The size of the returned page\n- The ordering of the data within that page\n\nIf no Pagination message is provided, the API will return the first page of\ndata using the default page size. The default page size is 1000.\n\nTo retrieve subsequent pages, the caller must examine the PageInfo structure\nreturned in the response to find a cursor string that uniquely identifies the\nlast row of that page. This cursor should then be passed in the 'after' field\nof the Pagination message in a subsequent request.\n\nFor paging backward, take the cursor for the first row of the page from PageInfo\nand pass it in the 'before' field of the Pagination message.\n\nPagination message that uses both first/after and last/before is considered invalid." - }, - "v2PaidLiquidityFeesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PaidLiquidityFeesEdge" - }, - "description": "Page of paid liquidity fees data." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Paid liquidity fees data and corresponding page information." - }, - "v2PaidLiquidityFeesEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1PaidLiquidityFeesStats", - "description": "Paid liquidity fees data returned by the API." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further data." - } - }, - "description": "Paid liquidity fees data with the corresponding cursor." - }, - "v2PartiesProfilesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PartyProfileEdge" - }, - "description": "Page of profiles and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of profile data per party and corresponding page information." - }, - "v2PartyConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PartyEdge" - }, - "description": "Page of parties and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of parties data and corresponding page information." - }, - "v2PartyEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaParty", - "description": "Data associated with a party." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Party data with the corresponding cursor." - }, - "v2PartyMarginMode": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Unique ID of the market." - }, - "partyId": { - "type": "string", - "description": "Unique ID of the party." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Selected margin mode." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor for the market. Isolated mode only." - }, - "minTheoreticalMarginFactor": { - "type": "string", - "description": "Minimum theoretical margin factor for the market. Isolated mode only." - }, - "maxTheoreticalLeverage": { - "type": "string", - "description": "Maximum theoretical leverage for the market. Isolated mode only." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the update happened." - } - }, - "description": "Margin mode selected for the given party and market." - }, - "v2PartyMarginModeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2PartyMarginMode", - "description": "Party margin mode data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Party margin mode information and corresponding cursor." - }, - "v2PartyMarginModesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PartyMarginModeEdge" - }, - "description": "Page of party margin modes data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of party margin modes data and corresponding page information." - }, - "v2PartyProfileEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaPartyProfile", - "description": "Data associated with a party's profile." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Party's profile data with the corresponding cursor." - }, - "v2PingResponse": { - "type": "object", - "title": "Ping response from the data node" - }, - "v2PositionConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2PositionEdge" - }, - "description": "Page of positions data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of positions and corresponding page information" - }, - "v2PositionEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaPosition", - "description": "Position data for a party on a market." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Position data with the corresponding cursor." - }, - "v2PositionSnapshotPage": { - "type": "object", - "properties": { - "positions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPosition" - }, - "description": "List of positions data." - }, - "lastPage": { - "type": "boolean", - "description": "Indicator if last page is reached or not." - } - }, - "title": "'Initial image' of current positions, may be sent over multiple response messages" - }, - "v2PositionUpdates": { - "type": "object", - "properties": { - "positions": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPosition" - }, - "description": "List of positions data." - } - }, - "title": "List of position updates in the last block" - }, - "v2PositionsFilter": { - "type": "object", - "properties": { - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict positions to those related to the given parties." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict positions to those on the given markets." - } - }, - "title": "Filter to apply to the ListAllPositionsRequest" - }, - "v2ProtocolUpgradeProposalConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ProtocolUpgradeProposalEdge" - }, - "description": "Page of protocol upgrade proposals data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of protocol upgrade proposals and corresponding page information" - }, - "v2ProtocolUpgradeProposalEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1ProtocolUpgradeEvent", - "description": "Protocol upgrade proposal data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Protocol upgrade proposal data with the corresponding cursor." - }, - "v2QuantumRewardsPerEpoch": { - "type": "object", - "properties": { - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch for which this information is valid." - }, - "totalQuantumRewards": { - "type": "string", - "description": "Total rewards accumulated over the epoch period, expressed in quantum value." - } - } - }, - "v2ReferralSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID of the created set." - }, - "referrer": { - "type": "string", - "description": "Party that created the set." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the set was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the set was updated." - } - }, - "description": "Data relating to a referral set." - }, - "v2ReferralSetConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ReferralSetEdge" - }, - "description": "Page of referral set data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of referral set data and corresponding page information." - }, - "v2ReferralSetEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ReferralSet", - "description": "Referral set data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Referral set data with the corresponding cursor." - }, - "v2ReferralSetReferee": { - "type": "object", - "properties": { - "referralSetId": { - "type": "string", - "description": "Unique ID of the referral set the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the set." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, when the party joined the set." - }, - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the set." - }, - "totalRefereeNotionalTakerVolume": { - "type": "string", - "description": "Total notional volume of the referee's aggressive trades over the aggregation period." - }, - "totalRefereeGeneratedRewards": { - "type": "string", - "description": "Total rewards generated by the referee over the aggregation period." - } - }, - "title": "Data relating to referees that have joined a referral set" - }, - "v2ReferralSetRefereeConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ReferralSetRefereeEdge" - }, - "description": "Page of referral set referee data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of data about the referral set's referees and corresponding page information." - }, - "v2ReferralSetRefereeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ReferralSetReferee", - "description": "Referral set referee data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Data about the Referral set's referees with the corresponding cursor." - }, - "v2ReferralSetStats": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the set's statistics were updated." - }, - "referralSetRunningNotionalTakerVolume": { - "type": "string", - "description": "Running volume for the set based on the window length of the current\nreferral program." - }, - "partyId": { - "type": "string", - "description": "Party ID." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied to the party." - }, - "rewardFactor": { - "type": "string", - "description": "Reward factor applied to the party." - }, - "epochNotionalTakerVolume": { - "type": "string", - "description": "Current referee notional taker volume." - }, - "rewardsMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral rewards due to the referrer." - }, - "rewardsFactorMultiplier": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "wasEligible": { - "type": "boolean", - "description": "Indicates if the referral set was eligible to be part of the referral program." - }, - "referrerTakerVolume": { - "type": "string", - "title": "Referrer's taker volume" - } - }, - "description": "Referral set statistics for a given epoch for a party." - }, - "v2ReferralSetStatsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2ReferralSetStatsEdge" - }, - "description": "Page of volume discount statistics data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of volume discount stats data and corresponding page information." - }, - "v2ReferralSetStatsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2ReferralSetStats", - "description": "Referral set stats data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Referral set stats data with the corresponding cursor." - }, - "v2RewardEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaReward", - "description": "Details for a single reward payment." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Rewards data with the corresponding cursor." - }, - "v2RewardSummaryFilter": { - "type": "object", - "properties": { - "assetIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict reward summaries to those connected to the assets in the given list." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict reward summaries to those connected to the markets in the given list." - }, - "fromEpoch": { - "type": "string", - "format": "uint64", - "description": "Restrict rewards summaries to those that were paid after and including the given epoch ID." - }, - "toEpoch": { - "type": "string", - "format": "uint64", - "description": "Restrict rewards summaries to those that were paid up to and including the given epoch ID." - } - }, - "title": "Filter to restrict the results returned by the ListEpochRewardSummaries" - }, - "v2RewardsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2RewardEdge" - }, - "description": "Page of rewards data items and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of rewards data and corresponding page information." - }, - "v2StakeLinkingEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1StakeLinking", - "description": "Stake linking represent the intent from a party to deposit." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Stake linking data with the corresponding cursor." - }, - "v2StakesConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2StakeLinkingEdge" - }, - "description": "Page of stake data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of stake data and corresponding page information." - }, - "v2StopOrderConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2StopOrderEdge" - }, - "description": "Page of stop orders and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of stop orders data and corresponding page information." - }, - "v2StopOrderEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v1StopOrderEvent", - "description": "Data associated with an order submitted to a Vega node." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Order data with the corresponding cursor." - }, - "v2StopOrderFilter": { - "type": "object", - "properties": { - "statuses": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStopOrderStatus" - }, - "description": "Restrict orders to those with the given statuses." - }, - "expiryStrategies": { - "type": "array", - "items": { - "$ref": "#/definitions/StopOrderExpiryStrategy" - }, - "description": "Restrict orders to those with the given expiry strategies." - }, - "dateRange": { - "$ref": "#/definitions/v2DateRange", - "description": "Restrict orders to those placed during the given date range. If not set, all orders will be returned." - }, - "partyIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed by the given party IDs." - }, - "marketIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Restrict orders to those placed on the given market IDs." - }, - "liveOnly": { - "type": "boolean", - "title": "Live stop orders only" - } - }, - "description": "Stop order filter that contains all filtering conditions and values that are applied to the stop orders listing.", - "title": "Stop order filter" - }, - "v2SuccessorMarket": { - "type": "object", - "properties": { - "market": { - "$ref": "#/definitions/vegaMarket", - "description": "The market that is a member of the succession line." - }, - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaGovernanceData" - }, - "description": "All proposals for child markets that have the market as a parent." - } - }, - "description": "Successor market information includes the market that is a member of the succession line\nand any governance data that is associated with proposals for child markets\nwhether enacted or not." - }, - "v2SuccessorMarketConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2SuccessorMarketEdge" - }, - "description": "Page of successor markets and their cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information for pagination control." - } - }, - "description": "Page of successor market records and corresponding page information." - }, - "v2SuccessorMarketEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2SuccessorMarket", - "description": "Successor market record." - }, - "cursor": { - "type": "string", - "description": "Cursor identifying the record for pagination control." - } - }, - "title": "Successor market record with the corresponding cursor for paginated results" - }, - "v2Table": { - "type": "string", - "enum": [ - "TABLE_UNSPECIFIED", - "TABLE_BALANCES", - "TABLE_CHECKPOINTS", - "TABLE_DELEGATIONS", - "TABLE_LEDGER", - "TABLE_ORDERS", - "TABLE_TRADES", - "TABLE_MARKET_DATA", - "TABLE_MARGIN_LEVELS", - "TABLE_POSITIONS", - "TABLE_LIQUIDITY_PROVISIONS", - "TABLE_MARKETS", - "TABLE_DEPOSITS", - "TABLE_WITHDRAWALS", - "TABLE_BLOCKS", - "TABLE_REWARDS" - ], - "default": "TABLE_UNSPECIFIED" - }, - "v2TeamConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamEdge" - }, - "description": "Page of team data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of team data and corresponding page information." - }, - "v2TeamEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/apiv2Team", - "description": "Team data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team data item with the corresponding cursor." - }, - "v2TeamGameEntities": { - "type": "object", - "properties": { - "team": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamGameEntity" - }, - "description": "List of teams, the participant members of a team, and the metrics associated with each participant." - } - }, - "title": "List of teams that are participating in a game" - }, - "v2TeamGameEntity": { - "type": "object", - "properties": { - "team": { - "$ref": "#/definitions/v2TeamGameParticipation", - "title": "Team participation breakdown" - }, - "rank": { - "type": "string", - "format": "uint64", - "title": "Rank of the team in the game" - }, - "volume": { - "type": "string", - "title": "Volume traded by the team" - }, - "rewardMetric": { - "$ref": "#/definitions/vegaDispatchMetric", - "title": "Reward metric applied to the team" - }, - "rewardEarned": { - "type": "string", - "title": "Reward earned by the team" - }, - "totalRewardsEarned": { - "type": "string", - "title": "Total rewards earned by the individual for the team" - } - }, - "description": "Data relating to a team participating in a game." - }, - "v2TeamGameParticipation": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "title": "ID of the team participating" - }, - "membersParticipating": { - "type": "array", - "items": { - "$ref": "#/definitions/v2IndividualGameEntity" - }, - "title": "Individual team member metrics for their participation in the game" - } - }, - "description": "Breakdown of a team's participation in a game." - }, - "v2TeamMemberStatistics": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID the statistics are related to." - }, - "totalQuantumVolume": { - "type": "string", - "description": "Total of volume accumulated over the requested epoch period, expressed in\nquantum value." - }, - "totalQuantumRewards": { - "type": "string", - "description": "Total of rewards accumulated over the requested epoch period, expressed in\nquantum value." - }, - "quantumRewards": { - "type": "array", - "items": { - "$ref": "#/definitions/v2QuantumRewardsPerEpoch" - }, - "description": "List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch." - }, - "totalGamesPlayed": { - "type": "string", - "format": "uint64", - "description": "Total number of games played." - }, - "gamesPlayed": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of games played over the requested epoch period." - } - }, - "description": "Team member's statistics record containing the team member's information." - }, - "v2TeamMemberStatisticsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamMemberStatistics", - "description": "Team member's statistics data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team member data item with the corresponding cursor." - }, - "v2TeamMembersStatisticsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamMemberStatisticsEdge" - }, - "description": "Page of team member data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of team members' statistics and corresponding page information." - }, - "v2TeamReferee": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "ID of the team the referee joined." - }, - "referee": { - "type": "string", - "description": "Party that joined the team." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the party joined the team." - }, - "joinedAtEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - }, - "title": "A team's referee info" - }, - "v2TeamRefereeConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamRefereeEdge" - }, - "description": "Page of team referee data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of team referee data and corresponding page information." - }, - "v2TeamRefereeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamReferee", - "description": "Team referee data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team referee data item with the corresponding cursor." - }, - "v2TeamRefereeHistory": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "ID of the team the referee joined." - }, - "joinedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the party joined the team." - }, - "joinedAtEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the party joined the team." - } - }, - "title": "A referee's team change information" - }, - "v2TeamRefereeHistoryConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamRefereeHistoryEdge" - }, - "description": "Page of team referee history data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of history data about a referee's team membership and corresponding page information." - }, - "v2TeamRefereeHistoryEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamRefereeHistory", - "description": "Team referee data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team referee history data item with the corresponding cursor." - }, - "v2TeamStatistics": { - "type": "object", - "properties": { - "teamId": { - "type": "string", - "description": "Team ID the statistics are related to." - }, - "totalQuantumVolume": { - "type": "string", - "description": "Total of volume accumulated over the requested epoch period, expressed in\nquantum value." - }, - "totalQuantumRewards": { - "type": "string", - "description": "Total of rewards accumulated over the requested epoch period, expressed in\nquantum value." - }, - "quantumRewards": { - "type": "array", - "items": { - "$ref": "#/definitions/v2QuantumRewardsPerEpoch" - }, - "description": "List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch." - }, - "totalGamesPlayed": { - "type": "string", - "format": "uint64", - "description": "Total of games played." - }, - "gamesPlayed": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of games played over the requested epoch period." - } - }, - "description": "Team's statistics record containing the team information." - }, - "v2TeamStatisticsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TeamStatistics", - "description": "Team's statistics data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Team data item with the corresponding cursor." - }, - "v2TeamsStatisticsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TeamStatisticsEdge" - }, - "description": "Page of team data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of teams' statistics and corresponding page information." - }, - "v2TradeConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TradeEdge" - }, - "description": "Page of trades and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of trades and corresponding page information" - }, - "v2TradeEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaTrade", - "description": "Data associated with a trade that has been executed." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Trade data item with the corresponding cursor.." - }, - "v2TransferConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2TransferEdge" - }, - "description": "Page of transfers data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of transfers data items and corresponding page information" - }, - "v2TransferDirection": { - "type": "string", - "enum": [ - "TRANSFER_DIRECTION_UNSPECIFIED", - "TRANSFER_DIRECTION_TRANSFER_FROM", - "TRANSFER_DIRECTION_TRANSFER_TO", - "TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM" - ], - "default": "TRANSFER_DIRECTION_UNSPECIFIED", - "title": "Direction of a transfer" - }, - "v2TransferEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2TransferNode", - "description": "Data relating to a transfer that has been made." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Transfers data with the corresponding cursor." - }, - "v2TransferNode": { - "type": "object", - "properties": { - "transfer": { - "$ref": "#/definitions/vegaeventsv1Transfer", - "description": "Data relating to a transfer that has been made." - }, - "fees": { - "type": "array", - "items": { - "$ref": "#/definitions/v1TransferFees" - }, - "description": "Fees paid for this transfer." - } - } - }, - "v2VolumeDiscountStats": { - "type": "object", - "properties": { - "atEpoch": { - "type": "string", - "format": "uint64", - "description": "Epoch at which the statistics apply." - }, - "partyId": { - "type": "string", - "description": "Party ID for which the statistics apply." - }, - "discountFactor": { - "type": "string", - "description": "Discount factor applied given the party's running volume." - }, - "runningVolume": { - "type": "string", - "description": "The party's running volume." - } - }, - "description": "Volume discount statistics for a given epoch for all parties." - }, - "v2VolumeDiscountStatsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2VolumeDiscountStatsEdge" - }, - "description": "Page of volume discount statistics data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "description": "Page of volume discount stats data and corresponding page information." - }, - "v2VolumeDiscountStatsEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/v2VolumeDiscountStats", - "description": "Volume discount stats data." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Volume discount stats data with the corresponding cursor." - }, - "v2VoteConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2VoteEdge" - }, - "description": "Page of vote data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of vote data items and corresponding page information" - }, - "v2VoteEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaVote", - "description": "Data associated with a governance vote." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Votes data with the corresponding cursor." - }, - "v2WithdrawalEdge": { - "type": "object", - "properties": { - "node": { - "$ref": "#/definitions/vegaWithdrawal", - "description": "Data associated with a single withdrawal made from the Vega network." - }, - "cursor": { - "type": "string", - "description": "Cursor that can be used to fetch further pages." - } - }, - "description": "Withdrawals data with the corresponding cursor." - }, - "v2WithdrawalsConnection": { - "type": "object", - "properties": { - "edges": { - "type": "array", - "items": { - "$ref": "#/definitions/v2WithdrawalEdge" - }, - "description": "Page of withdrawals data and their corresponding cursors." - }, - "pageInfo": { - "$ref": "#/definitions/v2PageInfo", - "description": "Page information that is used for fetching further pages." - } - }, - "title": "Page of withdrawals data and corresponding page information" - }, - "vegaAccount": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique account ID, used internally by Vega." - }, - "owner": { - "type": "string", - "description": "Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions." - }, - "balance": { - "type": "string", - "description": "Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative." - }, - "asset": { - "type": "string", - "description": "Asset ID for the account." - }, - "marketId": { - "type": "string", - "description": "Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type related to this account." - } - }, - "title": "Represents an account for an asset on Vega for a particular owner or party" - }, - "vegaAccountDetails": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID of the asset for this account." - }, - "type": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the account." - }, - "owner": { - "type": "string", - "description": "Not specified if network account." - }, - "marketId": { - "type": "string", - "description": "Not specified if account is not related to a market." - } - } - }, - "vegaAccountType": { - "type": "string", - "enum": [ - "ACCOUNT_TYPE_UNSPECIFIED", - "ACCOUNT_TYPE_INSURANCE", - "ACCOUNT_TYPE_SETTLEMENT", - "ACCOUNT_TYPE_MARGIN", - "ACCOUNT_TYPE_GENERAL", - "ACCOUNT_TYPE_FEES_INFRASTRUCTURE", - "ACCOUNT_TYPE_FEES_LIQUIDITY", - "ACCOUNT_TYPE_FEES_MAKER", - "ACCOUNT_TYPE_BOND", - "ACCOUNT_TYPE_EXTERNAL", - "ACCOUNT_TYPE_GLOBAL_INSURANCE", - "ACCOUNT_TYPE_GLOBAL_REWARD", - "ACCOUNT_TYPE_PENDING_TRANSFERS", - "ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES", - "ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES", - "ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS", - "ACCOUNT_TYPE_HOLDING", - "ACCOUNT_TYPE_LP_LIQUIDITY_FEES", - "ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION", - "ACCOUNT_TYPE_NETWORK_TREASURY", - "ACCOUNT_TYPE_VESTING_REWARDS", - "ACCOUNT_TYPE_VESTED_REWARDS", - "ACCOUNT_TYPE_REWARD_AVERAGE_POSITION", - "ACCOUNT_TYPE_REWARD_RELATIVE_RETURN", - "ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY", - "ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING", - "ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD", - "ACCOUNT_TYPE_ORDER_MARGIN" - ], - "default": "ACCOUNT_TYPE_UNSPECIFIED", - "description": "- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode", - "title": "Various collateral/account types as used by Vega" - }, - "vegaAsset": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Internal identifier of the asset." - }, - "details": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Definition of the external source for this asset." - }, - "status": { - "$ref": "#/definitions/vegaAssetStatus", - "description": "Status of the asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetails": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the asset (e.g: Great British Pound)." - }, - "symbol": { - "type": "string", - "description": "Symbol of the asset (e.g: GBP)." - }, - "decimals": { - "type": "string", - "format": "uint64", - "description": "Number of decimal / precision handled by this asset." - }, - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "builtinAsset": { - "$ref": "#/definitions/vegaBuiltinAsset", - "description": "Vega built-in asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20", - "description": "Ethereum ERC20 asset." - } - }, - "title": "Vega representation of an external asset" - }, - "vegaAssetDetailsUpdate": { - "type": "object", - "properties": { - "quantum": { - "type": "string", - "description": "Minimum economically meaningful amount in the asset." - }, - "erc20": { - "$ref": "#/definitions/vegaERC20Update", - "description": "Ethereum ERC20 asset update." - } - }, - "description": "Changes to apply on an existing asset." - }, - "vegaAssetStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PROPOSED", - "STATUS_REJECTED", - "STATUS_PENDING_LISTING", - "STATUS_ENABLED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network" - }, - "vegaAuctionDuration": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "format": "int64", - "description": "Duration of the auction in seconds." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Target uncrossing trading volume." - } - }, - "title": "Auction duration is used to configure 3 auction periods:\n1. `duration \u003e 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume \u003e 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration \u003e 0`, `volume \u003e 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume" - }, - "vegaAuctionTrigger": { - "type": "string", - "enum": [ - "AUCTION_TRIGGER_UNSPECIFIED", - "AUCTION_TRIGGER_BATCH", - "AUCTION_TRIGGER_OPENING", - "AUCTION_TRIGGER_PRICE", - "AUCTION_TRIGGER_LIQUIDITY", - "AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET", - "AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS", - "AUCTION_TRIGGER_GOVERNANCE_SUSPENSION" - ], - "default": "AUCTION_TRIGGER_UNSPECIFIED", - "description": "- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance", - "title": "Auction triggers indicate what condition triggered an auction (if market is in auction mode)" - }, - "vegaBatchProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits." - }, - "proposalParams": { - "$ref": "#/definitions/vegaProposalParameters", - "description": "Specific parameters defining the proposal's characteristics used for validation." - }, - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBatchProposalTermsChange" - }, - "description": "List of individual changes included in the batch proposal." - } - }, - "title": "Terms for a batch governance proposal on Vega" - }, - "vegaBatchProposalTermsChange": { - "type": "object", - "properties": { - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance initiated transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Proposal change to cancel a governance initiated transfe." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms change for a batch governance proposal" - }, - "vegaBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "minimumEpochs": { - "type": "string", - "description": "Required number of epochs a party must have been in a referral set to\naccess this tier." - }, - "referralRewardFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be rewarded to the referrer." - }, - "referralDiscountFactor": { - "type": "string", - "description": "Proportion of the referee's taker fees to be discounted." - } - } - }, - "vegaBuiltinAsset": { - "type": "object", - "properties": { - "maxFaucetAmountMint": { - "type": "string", - "description": "Maximum amount that can be requested by a party through the built-in asset faucet at a time." - } - }, - "title": "Vega internal asset" - }, - "vegaCancelTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaCancelTransferConfiguration", - "title": "Configuration for cancellation of a governance-initiated transfer" - } - } - }, - "vegaCancelTransferConfiguration": { - "type": "object", - "properties": { - "transferId": { - "type": "string", - "description": "ID of the governance transfer proposal." - } - } - }, - "vegaCompositePriceConfiguration": { - "type": "object", - "properties": { - "decayWeight": { - "type": "string", - "description": "Decay weight used for calculation of mark price." - }, - "decayPower": { - "type": "string", - "format": "uint64", - "description": "Decay power used for the calculation of mark price." - }, - "cashAmount": { - "type": "string", - "description": "Cash amount, in asset decimals, used for the calculation of the mark price from the order book." - }, - "sourceWeights": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Weights for each composite price data source." - }, - "sourceStalenessTolerance": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance." - }, - "compositePriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "Which method is used for the calculation of the composite price for the market." - }, - "dataSourcesSpec": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "description": "Additional price sources to be used for index price calculation." - }, - "dataSourcesSpecBinding": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaSpecBindingForCompositePrice" - }, - "title": "List of each price source and its corresponding binding" - } - }, - "description": "Mark price configuration parameters." - }, - "vegaCompositePriceType": { - "type": "string", - "enum": [ - "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "COMPOSITE_PRICE_TYPE_WEIGHTED", - "COMPOSITE_PRICE_TYPE_MEDIAN", - "COMPOSITE_PRICE_TYPE_LAST_TRADE" - ], - "default": "COMPOSITE_PRICE_TYPE_UNSPECIFIED", - "description": " - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price." - }, - "vegaDataSourceDefinition": { - "type": "object", - "properties": { - "internal": { - "$ref": "#/definitions/vegaDataSourceDefinitionInternal" - }, - "external": { - "$ref": "#/definitions/vegaDataSourceDefinitionExternal" - } - }, - "description": "Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below." - }, - "vegaDataSourceDefinitionExternal": { - "type": "object", - "properties": { - "oracle": { - "$ref": "#/definitions/vegaDataSourceSpecConfiguration" - }, - "ethOracle": { - "$ref": "#/definitions/vegaEthCallSpec", - "description": "Contains the data specification that is received from Ethereum sources." - } - }, - "description": "DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants." - }, - "vegaDataSourceDefinitionInternal": { - "type": "object", - "properties": { - "time": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTime" - }, - "timeTrigger": { - "$ref": "#/definitions/vegaDataSourceSpecConfigurationTimeTrigger" - } - }, - "description": "Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants." - }, - "vegaDataSourceSpec": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Hash generated from the DataSpec data." - }, - "createdAt": { - "type": "string", - "format": "int64", - "title": "Creation date and time" - }, - "updatedAt": { - "type": "string", - "format": "int64", - "title": "Last Updated timestamp" - }, - "data": { - "$ref": "#/definitions/vegaDataSourceDefinition" - }, - "status": { - "$ref": "#/definitions/vegaDataSourceSpecStatus", - "title": "Status describes the status of the data source spec" - } - }, - "description": "Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API." - }, - "vegaDataSourceSpecConfiguration": { - "type": "object", - "properties": { - "signers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Signer" - }, - "description": "Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list." - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "description": "Filters describes which source data are considered of interest or not for\nthe product (or the risk model)." - } - }, - "description": "All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters." - }, - "vegaDataSourceSpecConfigurationTime": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps should meet in order to be considered." - } - }, - "description": "Internal data source used for emitting timestamps." - }, - "vegaDataSourceSpecConfigurationTimeTrigger": { - "type": "object", - "properties": { - "conditions": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Condition" - }, - "description": "Conditions that the timestamps need to meet in order to be considered." - }, - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/v1InternalTimeTrigger" - }, - "title": "An internal time trigger" - } - }, - "description": "Internal data source used for emitting timestamps automatically using predefined intervals and conditions." - }, - "vegaDataSourceSpecStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_DEACTIVATED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.", - "title": "Status describe the status of the data source spec" - }, - "vegaDataSourceSpecToFutureBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data." - }, - "tradingTerminationProperty": { - "type": "string", - "description": "Name of the property in the data source data that signals termination of trading." - } - }, - "title": "DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger" - }, - "vegaDataSourceSpecToPerpetualBinding": { - "type": "object", - "properties": { - "settlementDataProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data." - }, - "settlementScheduleProperty": { - "type": "string", - "description": "Name of the property in the source data that should be used to determine the perpetual's settlement schedule." - } - }, - "description": "Describes which properties of the data source data is to be\nused for settlement." - }, - "vegaDelegation": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Party which is delegating." - }, - "nodeId": { - "type": "string", - "description": "Node ID to delegate to." - }, - "amount": { - "type": "string", - "description": "Amount delegated. This field is an unsigned integer scaled to the asset's decimal places." - }, - "epochSeq": { - "type": "string", - "description": "Epoch of delegation." - } - } - }, - "vegaDeposit": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the deposit." - }, - "status": { - "$ref": "#/definitions/vegaDepositStatus", - "description": "Status of the deposit." - }, - "partyId": { - "type": "string", - "description": "Party ID of the user initiating the deposit." - }, - "asset": { - "type": "string", - "description": "Vega asset targeted by this deposit." - }, - "amount": { - "type": "string", - "description": "Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places." - }, - "txHash": { - "type": "string", - "description": "Hash of the transaction from the foreign chain." - }, - "creditedTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the Vega account was updated with the deposit." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the deposit was created on the Vega network." - } - }, - "title": "Deposit on to the Vega network" - }, - "vegaDepositStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_CANCELLED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Deposit is being processed by the network\n - STATUS_CANCELLED: Deposit has been cancelled by the network\n - STATUS_FINALIZED: Deposit has been finalised and accounts have been updated", - "title": "Status of the deposit" - }, - "vegaDispatchMetric": { - "type": "string", - "enum": [ - "DISPATCH_METRIC_UNSPECIFIED", - "DISPATCH_METRIC_MAKER_FEES_PAID", - "DISPATCH_METRIC_MAKER_FEES_RECEIVED", - "DISPATCH_METRIC_LP_FEES_RECEIVED", - "DISPATCH_METRIC_MARKET_VALUE", - "DISPATCH_METRIC_AVERAGE_POSITION", - "DISPATCH_METRIC_RELATIVE_RETURN", - "DISPATCH_METRIC_RETURN_VOLATILITY", - "DISPATCH_METRIC_VALIDATOR_RANKING" - ], - "default": "DISPATCH_METRIC_UNSPECIFIED", - "title": "- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric" - }, - "vegaDispatchStrategy": { - "type": "object", - "properties": { - "assetForMetric": { - "type": "string", - "description": "Asset to use for metric." - }, - "metric": { - "$ref": "#/definitions/vegaDispatchMetric", - "description": "Metric to apply." - }, - "markets": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional markets in scope." - }, - "entityScope": { - "$ref": "#/definitions/vegaEntityScope", - "description": "Mandatory enum that defines the entities within scope." - }, - "individualScope": { - "$ref": "#/definitions/vegaIndividualScope", - "description": "Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded." - }, - "teamScope": { - "type": "array", - "items": { - "type": "string" - }, - "title": "Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer" - }, - "nTopPerformers": { - "type": "string", - "title": "The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team" - }, - "stakingRequirement": { - "type": "string", - "title": "Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0" - }, - "notionalTimeWeightedAveragePositionRequirement": { - "type": "string", - "title": "Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0" - }, - "windowLength": { - "type": "string", - "format": "uint64", - "title": "Number of epochs to evaluate the metric on" - }, - "lockPeriod": { - "type": "string", - "format": "uint64", - "title": "Number of epochs after distribution to delay vesting of rewards by" - }, - "distributionStrategy": { - "$ref": "#/definitions/vegaDistributionStrategy", - "title": "Controls how the reward is distributed between qualifying parties" - }, - "rankTable": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaRank" - }, - "description": "Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy." - } - } - }, - "vegaDistributionStrategy": { - "type": "string", - "enum": [ - "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "DISTRIBUTION_STRATEGY_PRO_RATA", - "DISTRIBUTION_STRATEGY_RANK" - ], - "default": "DISTRIBUTION_STRATEGY_UNSPECIFIED", - "description": " - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank." - }, - "vegaERC20": { - "type": "object", - "properties": { - "contractAddress": { - "type": "string", - "description": "Address of the contract for the token, on the ethereum network." - }, - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - }, - "title": "ERC20 token based asset, living on the ethereum network" - }, - "vegaERC20Update": { - "type": "object", - "properties": { - "lifetimeLimit": { - "type": "string", - "description": "Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance." - }, - "withdrawThreshold": { - "type": "string", - "description": "Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance." - } - } - }, - "vegaEntityScope": { - "type": "string", - "enum": [ - "ENTITY_SCOPE_UNSPECIFIED", - "ENTITY_SCOPE_INDIVIDUALS", - "ENTITY_SCOPE_TEAMS" - ], - "default": "ENTITY_SCOPE_UNSPECIFIED", - "title": "- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members" - }, - "vegaEpoch": { - "type": "object", - "properties": { - "seq": { - "type": "string", - "format": "uint64", - "description": "Sequence is used as epoch ID." - }, - "timestamps": { - "$ref": "#/definitions/vegaEpochTimestamps", - "description": "Timestamps for start/end etc." - }, - "validators": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNode" - }, - "description": "Validators that participated in this epoch." - }, - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - }, - "description": "List of all delegations in epoch." - } - } - }, - "vegaEpochAction": { - "type": "string", - "enum": [ - "EPOCH_ACTION_UNSPECIFIED", - "EPOCH_ACTION_START", - "EPOCH_ACTION_END" - ], - "default": "EPOCH_ACTION_UNSPECIFIED", - "description": "- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.", - "title": "What epoch action has occurred" - }, - "vegaEpochData": { - "type": "object", - "properties": { - "total": { - "type": "integer", - "format": "int32", - "description": "Total number of epochs since node was created." - }, - "offline": { - "type": "integer", - "format": "int32", - "description": "Total number of offline epochs since node was created." - }, - "online": { - "type": "integer", - "format": "int32", - "description": "Total number of online epochs since node was created." - } - } - }, - "vegaEpochRewardSummary": { - "type": "object", - "properties": { - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the reward is being paid." - }, - "assetId": { - "type": "string", - "description": "Asset ID in which the reward is being paid." - }, - "marketId": { - "type": "string", - "description": "Market ID in which the reward is being paid." - }, - "rewardType": { - "type": "string", - "description": "Type of reward being paid." - }, - "amount": { - "type": "string", - "description": "Amount distributed. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Details for rewards for a combination of asset, market, and reward type in a given epoch" - }, - "vegaEpochTimestamps": { - "type": "object", - "properties": { - "startTime": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when epoch started." - }, - "expiryTime": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for the epoch's expiry." - }, - "endTime": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the epoch ended, empty if not ended." - }, - "firstBlock": { - "type": "string", - "format": "uint64", - "description": "Height of first block in the epoch." - }, - "lastBlock": { - "type": "string", - "format": "uint64", - "description": "Height of last block in the epoch, empty if not ended." - } - }, - "title": "Describes in both human readable and block time when an epoch spans" - }, - "vegaErc20WithdrawExt": { - "type": "object", - "properties": { - "receiverAddress": { - "type": "string", - "description": "Address into which the bridge will release the funds." - } - }, - "title": "Extension of data required for the withdraw submissions" - }, - "vegaEthCallSpec": { - "type": "object", - "properties": { - "address": { - "type": "string", - "description": "Ethereum address of the contract to call." - }, - "abi": { - "type": "string", - "description": "The ABI of that contract." - }, - "method": { - "type": "string", - "description": "Name of the method on the contract to call." - }, - "args": { - "type": "array", - "items": { - "type": "object" - }, - "description": "List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI." - }, - "trigger": { - "$ref": "#/definitions/vegaEthCallTrigger", - "description": "Conditions for determining when to call the contract method." - }, - "requiredConfirmations": { - "type": "string", - "format": "uint64", - "title": "Number of confirmations required before the query is considered verified" - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/definitions/v1Filter" - }, - "title": "Filters the data returned from the contract method" - }, - "normalisers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaNormaliser" - }, - "description": "Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists." - }, - "sourceChainId": { - "type": "string", - "format": "uint64", - "description": "The ID of the EVM based chain which is to be used to source the oracle data." - } - }, - "description": "Specifies a data source that derives its content from calling a read method\non an Ethereum contract." - }, - "vegaEthCallTrigger": { - "type": "object", - "properties": { - "timeTrigger": { - "$ref": "#/definitions/vegaEthTimeTrigger" - } - }, - "description": "Determines when the contract method should be called." - }, - "vegaEthTimeTrigger": { - "type": "object", - "properties": { - "initial": { - "type": "string", - "format": "uint64", - "description": "Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds." - }, - "every": { - "type": "string", - "format": "uint64", - "description": "Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately." - }, - "until": { - "type": "string", - "format": "uint64", - "description": "If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely." - } - }, - "description": "Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating." - }, - "vegaExternalDataSourceSpec": { - "type": "object", - "properties": { - "spec": { - "$ref": "#/definitions/vegaDataSourceSpec" - } - } - }, - "vegaFee": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places." - }, - "infrastructureFee": { - "type": "string", - "description": "Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places." - }, - "liquidityFee": { - "type": "string", - "description": "Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places." - }, - "makerFeeVolumeDiscount": { - "type": "string", - "description": "Volume discounts.\nDiscount on maker fee based on the taker volume." - }, - "infrastructureFeeVolumeDiscount": { - "type": "string", - "description": "Discount on infrastructure fee based on the taker volume." - }, - "liquidityFeeVolumeDiscount": { - "type": "string", - "description": "Discount on liquidity fee basedo on taker volume." - }, - "makerFeeReferrerDiscount": { - "type": "string", - "description": "Referrer discounts.\nDiscount on maker fee for eligible referrer." - }, - "infrastructureFeeReferrerDiscount": { - "type": "string", - "description": "Discount on infrastructure fee for eligible referrer." - }, - "liquidityFeeReferrerDiscount": { - "type": "string", - "description": "Discount on liquidity fee for eligible referrer." - } - }, - "title": "Represents any fees paid by a party, resulting from a trade" - }, - "vegaFeeFactors": { - "type": "object", - "properties": { - "makerFee": { - "type": "string", - "description": "Market maker fee charged network wide." - }, - "infrastructureFee": { - "type": "string", - "description": "Infrastructure fee charged network wide for staking and governance." - }, - "liquidityFee": { - "type": "string", - "description": "Liquidity fee applied per market for market making." - } - }, - "title": "Fee factors definition" - }, - "vegaFees": { - "type": "object", - "properties": { - "factors": { - "$ref": "#/definitions/vegaFeeFactors", - "description": "Fee factors." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Liquidity fee settings for the market describing how the fee was calculated." - } - }, - "title": "Fees definition" - }, - "vegaFuture": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the future." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the settlement data source filter." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source specification that describes the trading termination data source filter." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data spec and the data source." - } - }, - "title": "Future product definition" - }, - "vegaFutureProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The external data source spec describing the data source of trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "Binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaGovernanceData": { - "type": "object", - "properties": { - "proposal": { - "$ref": "#/definitions/vegaProposal", - "description": "Governance proposal that is being voted on." - }, - "yes": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All YES votes in favour of the proposal above." - }, - "no": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All NO votes against the proposal above." - }, - "yesParty": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party." - }, - "noParty": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/vegaVote" - }, - "description": "All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party." - }, - "proposalType": { - "$ref": "#/definitions/vegaGovernanceDataType", - "description": "Type of proposal this data is for." - }, - "proposals": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaProposal" - }, - "description": "If proposal type is batch, proposals will contain all the proposals that are make up the batch." - } - }, - "title": "Governance data" - }, - "vegaGovernanceDataType": { - "type": "string", - "enum": [ - "TYPE_SINGLE_OR_UNSPECIFIED", - "TYPE_BATCH" - ], - "default": "TYPE_SINGLE_OR_UNSPECIFIED", - "description": "- TYPE_SINGLE_OR_UNSPECIFIED: Single proposal only. In case it has not been specified, for example in older proposals, then this is the default.\n - TYPE_BATCH: Proposal contains a batch of proposals or a proposal that should be treated as part of a batch.", - "title": "Proposal type" - }, - "vegaGovernanceTransferType": { - "type": "string", - "enum": [ - "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED", - "GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING", - "GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT" - ], - "default": "GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED" - }, - "vegaIcebergOrder": { - "type": "object", - "properties": { - "peakSize": { - "type": "string", - "format": "uint64", - "description": "Size of the order that will be made visible if the iceberg order is replenished after trading." - }, - "minimumVisibleSize": { - "type": "string", - "format": "uint64", - "description": "If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount." - }, - "reservedRemaining": { - "type": "string", - "format": "uint64", - "description": "Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed." - } - }, - "title": "Details of an iceberg order" - }, - "vegaIndividualScope": { - "type": "string", - "enum": [ - "INDIVIDUAL_SCOPE_UNSPECIFIED", - "INDIVIDUAL_SCOPE_ALL", - "INDIVIDUAL_SCOPE_IN_TEAM", - "INDIVIDUAL_SCOPE_NOT_IN_TEAM" - ], - "default": "INDIVIDUAL_SCOPE_UNSPECIFIED", - "description": " - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward." - }, - "vegaInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique instrument ID." - }, - "code": { - "type": "string", - "description": "Code for the instrument." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - }, - "metadata": { - "$ref": "#/definitions/vegaInstrumentMetadata", - "description": "Collection of instrument meta-data." - }, - "future": { - "$ref": "#/definitions/vegaFuture", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpot", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetual", - "description": "Perpetual." - } - }, - "title": "Instrument definition" - }, - "vegaInstrumentConfiguration": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Instrument name." - }, - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "future": { - "$ref": "#/definitions/vegaFutureProduct", - "description": "Future." - }, - "spot": { - "$ref": "#/definitions/vegaSpotProduct", - "description": "Spot." - }, - "perpetual": { - "$ref": "#/definitions/vegaPerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaInstrumentMetadata": { - "type": "object", - "properties": { - "tags": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of 0 or more tags." - } - }, - "title": "Instrument metadata definition" - }, - "vegaLedgerEntry": { - "type": "object", - "properties": { - "fromAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer from." - }, - "toAccount": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "One or more accounts to transfer to." - }, - "amount": { - "type": "string", - "description": "Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "type": { - "$ref": "#/definitions/vegaTransferType", - "description": "Transfer type for this entry." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in nanoseconds of when the ledger entry was created." - }, - "fromAccountBalance": { - "type": "string", - "description": "Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "toAccountBalance": { - "type": "string", - "description": "Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places." - }, - "transferId": { - "type": "string", - "description": "Transfer ID the ledger entry relates to." - } - }, - "title": "Represents a ledger entry on Vega" - }, - "vegaLedgerMovement": { - "type": "object", - "properties": { - "entries": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLedgerEntry" - }, - "description": "All the entries for these ledger movements." - }, - "balances": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPostTransferBalance" - }, - "description": "Resulting balances once the ledger movement are applied." - } - } - }, - "vegaLiquidationStrategy": { - "type": "object", - "properties": { - "disposalTimeStep": { - "type": "string", - "format": "int64", - "description": "Interval, in seconds, at which the network will attempt to close its position." - }, - "disposalFraction": { - "type": "string", - "description": "Fraction of the open position the market will try to close in a single attempt; range 0 through 1." - }, - "fullDisposalSize": { - "type": "string", - "format": "uint64", - "description": "Size of the position that the network will try to close in a single attempt." - }, - "maxFractionConsumed": { - "type": "string", - "description": "Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1." - } - }, - "description": "Liquidation strategy used when the network holds a position resulting from position resolution." - }, - "vegaLiquidityFeeSettings": { - "type": "object", - "properties": { - "method": { - "$ref": "#/definitions/vegaLiquidityFeeSettingsMethod", - "description": "Method used to calculate the market's liquidity fee." - }, - "feeConstant": { - "type": "string", - "description": "Constant liquidity fee used when using the constant fee method." - } - }, - "description": "Market settings that describe how the liquidity fee is calculated." - }, - "vegaLiquidityFeeSettingsMethod": { - "type": "string", - "enum": [ - "METHOD_UNSPECIFIED", - "METHOD_MARGINAL_COST", - "METHOD_WEIGHTED_AVERAGE", - "METHOD_CONSTANT" - ], - "default": "METHOD_UNSPECIFIED", - "description": " - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee." - }, - "vegaLiquidityMonitoringParameters": { - "type": "object", - "properties": { - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "triggeringRatio": { - "type": "string", - "description": "Specifies the triggering ratio for entering liquidity auction." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction." - } - }, - "title": "LiquidityMonitoringParameters contains settings used for liquidity monitoring" - }, - "vegaLiquidityOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Pegged reference point for the order." - }, - "proportion": { - "type": "integer", - "format": "int64", - "description": "Relative proportion of the commitment to be allocated at a price level." - }, - "offset": { - "type": "string", - "description": "Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places." - } - }, - "title": "Represents a liquidity order" - }, - "vegaLiquidityOrderReference": { - "type": "object", - "properties": { - "orderId": { - "type": "string", - "description": "Unique ID of the pegged order generated to fulfil this liquidity order." - }, - "liquidityOrder": { - "$ref": "#/definitions/vegaLiquidityOrder", - "description": "Liquidity order from the original submission." - } - }, - "title": "Pair of a liquidity order and the ID of the generated order" - }, - "vegaLiquidityProviderFeeShare": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "equityLikeShare": { - "type": "string", - "description": "Share own by this liquidity provider." - }, - "averageEntryValuation": { - "type": "string", - "description": "Average entry valuation of the liquidity provider for the market." - }, - "averageScore": { - "type": "string", - "description": "Average liquidity score." - }, - "virtualStake": { - "type": "string", - "description": "The virtual stake of this liquidity provider." - } - }, - "title": "Equity like share of liquidity fee for each liquidity provider" - }, - "vegaLiquidityProviderSLA": { - "type": "object", - "properties": { - "party": { - "type": "string", - "description": "Liquidity provider party ID." - }, - "currentEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP meets the commitment during the current epoch." - }, - "lastEpochFractionOfTimeOnBook": { - "type": "string", - "description": "Indicates how often LP met the commitment in the previous epoch." - }, - "lastEpochFeePenalty": { - "type": "string", - "description": "Indicates the fee penalty amount applied in the previous epoch." - }, - "lastEpochBondPenalty": { - "type": "string", - "description": "Shows the bond penalties from past epochs." - }, - "hysteresisPeriodFeePenalties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Determines how the fee penalties from past epochs affect future fee revenue." - }, - "requiredLiquidity": { - "type": "string", - "description": "Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range." - }, - "notionalVolumeBuys": { - "type": "string", - "description": "Notional volume of orders within the range provided on the buy side of the book." - }, - "notionalVolumeSells": { - "type": "string", - "description": "Notional volume of orders within the range provided on the sell side of the book." - } - }, - "title": "SLA performance for each liquidity provider" - }, - "vegaLiquidityProvision": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the liquidity provision." - }, - "partyId": { - "type": "string", - "description": "Unique party ID for the creator of the provision." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was created." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the liquidity provision was updated." - }, - "marketId": { - "type": "string", - "description": "Market ID for the liquidity provision." - }, - "commitmentAmount": { - "type": "string", - "description": "Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places." - }, - "fee": { - "type": "string", - "description": "Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers." - }, - "sells": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity sell orders to meet the liquidity provision obligation." - }, - "buys": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityOrderReference" - }, - "description": "Set of liquidity buy orders to meet the liquidity provision obligation." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version of this liquidity provision." - }, - "status": { - "$ref": "#/definitions/vegaLiquidityProvisionStatus", - "description": "Status of this liquidity provision." - }, - "reference": { - "type": "string", - "description": "Reference shared between this liquidity provision and all its orders." - } - }, - "title": "Liquidity provider commitment" - }, - "vegaLiquidityProvisionStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_STOPPED", - "STATUS_CANCELLED", - "STATUS_REJECTED", - "STATUS_UNDEPLOYED", - "STATUS_PENDING" - ], - "default": "STATUS_UNSPECIFIED", - "description": "Status of a liquidity provision.\n\n - STATUS_UNSPECIFIED: Always invalid\n - STATUS_ACTIVE: Liquidity provision is active\n - STATUS_STOPPED: Liquidity provision was stopped by the network\n - STATUS_CANCELLED: Liquidity provision was cancelled by the liquidity provider\n - STATUS_REJECTED: Liquidity provision was invalid and got rejected\n - STATUS_UNDEPLOYED: Liquidity provision is valid and accepted by network, but orders aren't deployed\n - STATUS_PENDING: Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties." - }, - "vegaLiquiditySLAParameters": { - "type": "object", - "properties": { - "priceRange": { - "type": "string" - }, - "commitmentMinTimeFraction": { - "type": "string", - "description": "Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity." - }, - "performanceHysteresisEpochs": { - "type": "string", - "format": "uint64", - "description": "Specifies the number of liquidity epochs over which past performance will continue to affect rewards." - }, - "slaCompetitionFactor": { - "type": "string", - "description": "Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them." - } - } - }, - "vegaLogNormalModelParams": { - "type": "object", - "properties": { - "mu": { - "type": "number", - "format": "double", - "description": "Mu parameter, annualised growth rate of the underlying asset." - }, - "r": { - "type": "number", - "format": "double", - "description": "R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number." - }, - "sigma": { - "type": "number", - "format": "double", - "description": "Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number." - } - }, - "title": "Risk model parameters for log normal" - }, - "vegaLogNormalRiskModel": { - "type": "object", - "properties": { - "riskAversionParameter": { - "type": "number", - "format": "double", - "description": "Risk Aversion Parameter." - }, - "tau": { - "type": "number", - "format": "double", - "description": "Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number." - }, - "params": { - "$ref": "#/definitions/vegaLogNormalModelParams", - "description": "Risk model parameters for log normal." - } - }, - "title": "Risk model for log normal" - }, - "vegaMarginCalculator": { - "type": "object", - "properties": { - "scalingFactors": { - "$ref": "#/definitions/vegaScalingFactors", - "description": "Scaling factors for margin calculation." - } - }, - "title": "Margin Calculator definition" - }, - "vegaMarginLevels": { - "type": "object", - "properties": { - "maintenanceMargin": { - "type": "string", - "description": "Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "searchLevel": { - "type": "string", - "description": "Margin search level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "initialMargin": { - "type": "string", - "description": "Initial margin value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "collateralReleaseLevel": { - "type": "string", - "description": "Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places." - }, - "partyId": { - "type": "string", - "description": "Party ID for whom the margin levels apply." - }, - "marketId": { - "type": "string", - "description": "Market ID for which the margin levels apply." - }, - "asset": { - "type": "string", - "description": "Asset ID for which the margin levels apply." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the ledger entry was created." - }, - "orderMargin": { - "type": "string", - "description": "Margin required to cover orders in isolated margin mode." - }, - "marginMode": { - "$ref": "#/definitions/vegaMarginMode", - "description": "Margin mode for the party, cross margin or isolated margin." - }, - "marginFactor": { - "type": "string", - "description": "Margin factor, relevant only for isolated margin, 0 otherwise." - } - }, - "title": "Represents the margin levels for a party on a market at a given time" - }, - "vegaMarginMode": { - "type": "string", - "enum": [ - "MARGIN_MODE_UNSPECIFIED", - "MARGIN_MODE_CROSS_MARGIN", - "MARGIN_MODE_ISOLATED_MARGIN" - ], - "default": "MARGIN_MODE_UNSPECIFIED", - "title": "- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed" - }, - "vegaMarket": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the market." - }, - "tradableInstrument": { - "$ref": "#/definitions/vegaTradableInstrument", - "description": "Tradable instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`." - }, - "fees": { - "$ref": "#/definitions/vegaFees", - "description": "Fees configuration that apply to the market." - }, - "openingAuction": { - "$ref": "#/definitions/vegaAuctionDuration", - "description": "Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)." - }, - "priceMonitoringSettings": { - "$ref": "#/definitions/vegaPriceMonitoringSettings", - "description": "PriceMonitoringSettings for the market." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "LiquidityMonitoringParameters for the market." - }, - "tradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current mode of execution of the market." - }, - "state": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "marketTimestamps": { - "$ref": "#/definitions/vegaMarketTimestamps", - "description": "Timestamps for when the market state changes." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "The number of decimal places for a position." - }, - "lpPriceRange": { - "type": "string", - "description": "Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "parentMarketId": { - "type": "string", - "title": "ID of the market this market succeeds" - }, - "insurancePoolFraction": { - "type": "string", - "description": "The fraction of the parent market's insurance pool that this market inherits; range 0 through 1." - }, - "successorMarketId": { - "type": "string", - "description": "ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled." - }, - "liquiditySlaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Liquidity SLA parameters for the market." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy used by this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price calculation configuration." - } - }, - "title": "Market definition" - }, - "vegaMarketData": { - "type": "object", - "properties": { - "markPrice": { - "type": "string", - "description": "Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidPrice": { - "type": "string", - "description": "Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "bestBidVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestOfferPrice": { - "type": "string", - "description": "Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places." - }, - "bestOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places." - }, - "bestStaticBidPrice": { - "type": "string", - "description": "Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticBidVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static bid price excluding pegged orders." - }, - "bestStaticOfferPrice": { - "type": "string", - "description": "Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "bestStaticOfferVolume": { - "type": "string", - "format": "uint64", - "description": "Total volume at the best static offer price, excluding pegged orders." - }, - "midPrice": { - "type": "string", - "description": "Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "staticMidPrice": { - "type": "string", - "description": "Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "market": { - "type": "string", - "title": "Market ID for the data" - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which this mark price was relevant." - }, - "openInterest": { - "type": "string", - "format": "uint64", - "description": "Sum of the size of all positions greater than zero on the market." - }, - "auctionEnd": { - "type": "string", - "format": "int64", - "description": "Time in seconds until the end of the auction (zero if currently not in auction period)." - }, - "auctionStart": { - "type": "string", - "format": "int64", - "description": "Time until next auction, or start time of the current auction if market is in auction period." - }, - "indicativePrice": { - "type": "string", - "description": "Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places." - }, - "indicativeVolume": { - "type": "string", - "format": "uint64", - "description": "Indicative volume (zero if not in auction)." - }, - "marketTradingMode": { - "$ref": "#/definitions/MarketTradingMode", - "description": "Current trading mode for the market." - }, - "trigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market is in an auction trading mode, this field indicates what triggered the auction." - }, - "extensionTrigger": { - "$ref": "#/definitions/vegaAuctionTrigger", - "description": "When a market auction is extended, this field indicates what caused the extension." - }, - "targetStake": { - "type": "string", - "description": "Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "suppliedStake": { - "type": "string", - "description": "Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places." - }, - "priceMonitoringBounds": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringBounds" - }, - "description": "One or more price monitoring bounds for the current timestamp." - }, - "marketValueProxy": { - "type": "string", - "description": "Market value proxy." - }, - "liquidityProviderFeeShare": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderFeeShare" - }, - "description": "Equity like share of liquidity fee for each liquidity provider." - }, - "marketState": { - "$ref": "#/definitions/vegaMarketState", - "description": "Current state of the market." - }, - "nextMarkToMarket": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the next mark-to-market calculation will occur." - }, - "lastTradedPrice": { - "type": "string", - "description": "Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places." - }, - "marketGrowth": { - "type": "string", - "description": "Market growth at the last market time window." - }, - "productData": { - "$ref": "#/definitions/vegaProductData", - "description": "Data related to the particular product type of the market." - }, - "liquidityProviderSla": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaLiquidityProviderSLA" - }, - "description": "SLA performance for each liquidity provider." - }, - "nextNetworkCloseout": { - "type": "string", - "format": "int64", - "description": "Time in Unix nanoseconds when the market will next submit a trade to reduce its position." - }, - "markPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the mark price." - } - }, - "title": "Represents data generated by a market when open" - }, - "vegaMarketDepth": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID for which the depth levels apply." - }, - "buy": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of price levels for the buy side of the book." - }, - "sell": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of price levels for the sell side of the book." - }, - "sequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number for the market depth data returned." - } - }, - "title": "Represents market depth or order book data for the specified market on Vega" - }, - "vegaMarketDepthUpdate": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID for which the market depth updates are for." - }, - "buy": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of updated price levels for the buy side of the book." - }, - "sell": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceLevel" - }, - "description": "Collection of updated price levels for the sell side of the book." - }, - "sequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number for the market depth update data returned. It is increasing but not monotonic." - }, - "previousSequenceNumber": { - "type": "string", - "format": "uint64", - "description": "Sequence number of the previous market depth update, for checking there are no gaps." - } - }, - "title": "Represents the changed market depth since the last update" - }, - "vegaMarketState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_PROPOSED", - "STATE_REJECTED", - "STATE_PENDING", - "STATE_CANCELLED", - "STATE_ACTIVE", - "STATE_SUSPENDED", - "STATE_CLOSED", - "STATE_TRADING_TERMINATED", - "STATE_SETTLED", - "STATE_SUSPENDED_VIA_GOVERNANCE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance", - "title": "Current state of the market" - }, - "vegaMarketStateUpdateType": { - "type": "string", - "enum": [ - "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "MARKET_STATE_UPDATE_TYPE_TERMINATE", - "MARKET_STATE_UPDATE_TYPE_SUSPEND", - "MARKET_STATE_UPDATE_TYPE_RESUME" - ], - "default": "MARKET_STATE_UPDATE_TYPE_UNSPECIFIED", - "title": "- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance" - }, - "vegaMarketTimestamps": { - "type": "object", - "properties": { - "proposed": { - "type": "string", - "format": "int64", - "description": "Time when the market is first proposed." - }, - "pending": { - "type": "string", - "format": "int64", - "description": "Time when the market has been voted in and began its opening auction." - }, - "open": { - "type": "string", - "format": "int64", - "description": "Time when the market has left the opening auction and is ready to accept trades." - }, - "close": { - "type": "string", - "format": "int64", - "description": "Time when the market closed." - } - }, - "title": "Time stamps for important times about creating, enacting etc the market" - }, - "vegaMetadata": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Key of the metadata." - }, - "value": { - "type": "string", - "description": "Value of the metadata." - } - }, - "description": "Generic structure holding a key/value pair." - }, - "vegaNetworkLimits": { - "type": "object", - "properties": { - "canProposeMarket": { - "type": "boolean", - "description": "Are market proposals allowed at this point in time." - }, - "canProposeAsset": { - "type": "boolean", - "description": "Are asset proposals allowed at this point in time." - }, - "proposeMarketEnabled": { - "type": "boolean", - "description": "Are market proposals enabled on this chain." - }, - "proposeAssetEnabled": { - "type": "boolean", - "description": "Are asset proposals enabled on this chain." - }, - "genesisLoaded": { - "type": "boolean", - "description": "True once the genesis file is loaded." - }, - "proposeMarketEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set)." - }, - "proposeAssetEnabledFrom": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set)." - }, - "canProposeSpotMarket": { - "type": "boolean", - "description": "Are spot market proposals allowed at this point in time." - }, - "canProposePerpetualMarket": { - "type": "boolean", - "description": "Are perpetual market proposals allowed at this point in time." - } - }, - "title": "Network limits, defined in the genesis file" - }, - "vegaNetworkParameter": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "Unique key of the network parameter." - }, - "value": { - "type": "string", - "description": "Value for the network parameter." - } - }, - "title": "Represents a network parameter on Vega" - }, - "vegaNewAsset": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaAssetDetails", - "description": "Configuration of the new asset." - } - }, - "title": "New asset on Vega" - }, - "vegaNewFreeform": { - "type": "object", - "description": "Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed." - }, - "vegaNewMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewMarketConfiguration", - "description": "Configuration of the new market." - } - }, - "title": "New market on Vega" - }, - "vegaNewMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New futures market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new futures market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the futures market can be." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "successor": { - "$ref": "#/definitions/vegaSuccessorConfiguration", - "description": "Successor configuration. If this proposal is meant to succeed a given market, then this should be set." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "description": "Liquidation strategy for this market." - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration for a new futures market on Vega" - }, - "vegaNewSpotMarket": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewSpotMarketConfiguration", - "description": "Configuration of the new spot market." - } - }, - "title": "New spot market on Vega" - }, - "vegaNewSpotMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrumentConfiguration", - "description": "New spot market instrument configuration." - }, - "decimalPlaces": { - "type": "string", - "format": "uint64", - "description": "Decimal places used for the new spot market, sets the smallest price increment on the book." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional new spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "positionDecimalPlaces": { - "type": "string", - "format": "int64", - "description": "Decimal places for order sizes, sets what size the smallest order / position on the spot market can be." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration for a new spot market on Vega" - }, - "vegaNewTransfer": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNewTransferConfiguration", - "description": "Configuration for a new transfer." - } - }, - "title": "New governance transfer" - }, - "vegaNewTransferConfiguration": { - "type": "object", - "properties": { - "sourceType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Source account type, such as network treasury, market insurance pool" - }, - "source": { - "type": "string", - "title": "If network treasury, field is empty, otherwise uses the market ID" - }, - "transferType": { - "$ref": "#/definitions/vegaGovernanceTransferType", - "title": "\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount" - }, - "amount": { - "type": "string", - "title": "Maximum amount to transfer" - }, - "asset": { - "type": "string", - "title": "ID of asset to transfer" - }, - "fractionOfBalance": { - "type": "string", - "title": "Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance" - }, - "destinationType": { - "$ref": "#/definitions/vegaAccountType", - "title": "Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool" - }, - "destination": { - "type": "string", - "title": "Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID" - }, - "oneOff": { - "$ref": "#/definitions/vegaOneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaRecurringTransfer" - } - } - }, - "vegaNode": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Node ID i.e. the node's wallet ID." - }, - "pubKey": { - "type": "string", - "description": "Public key of the node operator." - }, - "tmPubKey": { - "type": "string", - "description": "Public key of Tendermint." - }, - "ethereumAddress": { - "type": "string", - "description": "Ethereum public key of the node." - }, - "infoUrl": { - "type": "string", - "description": "URL where users can find out more information on the node." - }, - "location": { - "type": "string", - "description": "Country code for the location of the node." - }, - "stakedByOperator": { - "type": "string", - "description": "Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places." - }, - "stakedByDelegates": { - "type": "string", - "description": "Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places." - }, - "stakedTotal": { - "type": "string", - "description": "Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places." - }, - "maxIntendedStake": { - "type": "string", - "description": "Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places." - }, - "pendingStake": { - "type": "string", - "description": "Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places." - }, - "epochData": { - "$ref": "#/definitions/vegaEpochData", - "description": "Information about epoch." - }, - "status": { - "$ref": "#/definitions/vegaNodeStatus", - "description": "Node status." - }, - "delegations": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaDelegation" - }, - "description": "Node's delegations." - }, - "rewardScore": { - "$ref": "#/definitions/vegaRewardScore", - "description": "Node reward score." - }, - "rankingScore": { - "$ref": "#/definitions/vegaRankingScore", - "description": "Node ranking information." - }, - "name": { - "type": "string", - "description": "Node name." - }, - "avatarUrl": { - "type": "string", - "description": "Avatar url." - } - } - }, - "vegaNodeData": { - "type": "object", - "properties": { - "stakedTotal": { - "type": "string", - "description": "Total staked amount across all nodes. This field is an unsigned integer scaled to the asset's decimal places." - }, - "totalNodes": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes across all node sets." - }, - "inactiveNodes": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes that had a performance score of 0 at the end of the last epoch." - }, - "tendermintNodes": { - "$ref": "#/definitions/vegaNodeSet", - "description": "Details on the set of consensus nodes in the network." - }, - "ersatzNodes": { - "$ref": "#/definitions/vegaNodeSet", - "description": "Details on the set of ersatz (standby) nodes in the network." - }, - "pendingNodes": { - "$ref": "#/definitions/vegaNodeSet", - "description": "Details on the set of pending nodes in the network." - }, - "uptime": { - "type": "number", - "format": "float", - "description": "Total uptime for all epochs across all nodes." - } - } - }, - "vegaNodeSet": { - "type": "object", - "properties": { - "total": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes in the node set." - }, - "inactive": { - "type": "integer", - "format": "int64", - "description": "Number of nodes in the node set that had a performance score of 0 at the end of the last epoch." - }, - "promoted": { - "type": "array", - "items": { - "type": "string" - }, - "description": "IDs of nodes that were promoted into this node set at the start of the epoch." - }, - "demoted": { - "type": "array", - "items": { - "type": "string" - }, - "description": "IDs of nodes that were demoted into this node set at the start of the epoch." - }, - "maximum": { - "type": "integer", - "format": "int64", - "description": "Total number of nodes allowed in the node set." - } - }, - "title": "Details on the collection of nodes for a particular validator status" - }, - "vegaNodeStatus": { - "type": "string", - "enum": [ - "NODE_STATUS_UNSPECIFIED", - "NODE_STATUS_VALIDATOR", - "NODE_STATUS_NON_VALIDATOR" - ], - "default": "NODE_STATUS_UNSPECIFIED", - "description": "- NODE_STATUS_VALIDATOR: Node is a validating node\n - NODE_STATUS_NON_VALIDATOR: Node is a non-validating node", - "title": "Node status type" - }, - "vegaNormaliser": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "expression": { - "type": "string" - } - } - }, - "vegaOneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account." - } - }, - "title": "Specific details for a one off transfer" - }, - "vegaOracleData": { - "type": "object", - "properties": { - "externalData": { - "$ref": "#/definitions/v1ExternalData" - } - } - }, - "vegaOracleSpec": { - "type": "object", - "properties": { - "externalDataSourceSpec": { - "$ref": "#/definitions/vegaExternalDataSourceSpec" - } - }, - "title": "Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*" - }, - "vegaOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID generated for the order." - }, - "marketId": { - "type": "string", - "description": "Market ID for the order." - }, - "partyId": { - "type": "string", - "description": "Party ID for the order." - }, - "side": { - "$ref": "#/definitions/vegaSide", - "description": "Side for the order, e.g. SIDE_BUY or SIDE_SELL." - }, - "price": { - "type": "string", - "description": "Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size for the order, for example, in a futures market the size equals the number of contracts." - }, - "remaining": { - "type": "string", - "format": "uint64", - "description": "Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED." - }, - "timeInForce": { - "$ref": "#/definitions/OrderTimeInForce", - "title": "Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce" - }, - "type": { - "$ref": "#/definitions/vegaOrderType", - "description": "Type for the order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the order was created at, in nanoseconds." - }, - "status": { - "$ref": "#/definitions/vegaOrderStatus", - "description": "Current status of the order." - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order will expire." - }, - "reference": { - "type": "string", - "description": "Reference given for the order." - }, - "reason": { - "$ref": "#/definitions/vegaOrderError", - "description": "Futher details for why an order with status `STATUS_REJECTED` was rejected." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the order was last updated." - }, - "version": { - "type": "string", - "format": "uint64", - "description": "Version for the order, initial value is version 1 and is incremented after each successful amend." - }, - "batchId": { - "type": "string", - "format": "uint64", - "description": "Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation." - }, - "peggedOrder": { - "$ref": "#/definitions/vegaPeggedOrder", - "description": "Pegged order details, used only if the order represents a pegged order." - }, - "liquidityProvisionId": { - "type": "string", - "description": "Set if the order was created as part of a liquidity provision, will be empty if not." - }, - "postOnly": { - "type": "boolean", - "description": "Only valid for Limit orders. Cannot be True at the same time as Reduce-Only." - }, - "reduceOnly": { - "type": "boolean", - "description": "Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0." - }, - "icebergOrder": { - "$ref": "#/definitions/vegaIcebergOrder", - "title": "Details of an iceberg order" - } - }, - "title": "Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties" - }, - "vegaOrderError": { - "type": "string", - "enum": [ - "ORDER_ERROR_UNSPECIFIED", - "ORDER_ERROR_INVALID_MARKET_ID", - "ORDER_ERROR_INVALID_ORDER_ID", - "ORDER_ERROR_OUT_OF_SEQUENCE", - "ORDER_ERROR_INVALID_REMAINING_SIZE", - "ORDER_ERROR_TIME_FAILURE", - "ORDER_ERROR_REMOVAL_FAILURE", - "ORDER_ERROR_INVALID_EXPIRATION_DATETIME", - "ORDER_ERROR_INVALID_ORDER_REFERENCE", - "ORDER_ERROR_EDIT_NOT_ALLOWED", - "ORDER_ERROR_AMEND_FAILURE", - "ORDER_ERROR_NOT_FOUND", - "ORDER_ERROR_INVALID_PARTY_ID", - "ORDER_ERROR_MARKET_CLOSED", - "ORDER_ERROR_MARGIN_CHECK_FAILED", - "ORDER_ERROR_MISSING_GENERAL_ACCOUNT", - "ORDER_ERROR_INTERNAL_ERROR", - "ORDER_ERROR_INVALID_SIZE", - "ORDER_ERROR_INVALID_PERSISTENCE", - "ORDER_ERROR_INVALID_TYPE", - "ORDER_ERROR_SELF_TRADING", - "ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES", - "ORDER_ERROR_INCORRECT_MARKET_TYPE", - "ORDER_ERROR_INVALID_TIME_IN_FORCE", - "ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION", - "ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING", - "ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT", - "ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT", - "ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT", - "ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC", - "ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN", - "ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION", - "ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION", - "ORDER_ERROR_MUST_BE_LIMIT_ORDER", - "ORDER_ERROR_MUST_BE_GTT_OR_GTC", - "ORDER_ERROR_WITHOUT_REFERENCE_PRICE", - "ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO", - "ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE", - "ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO", - "ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE", - "ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER", - "ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER", - "ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS", - "ORDER_ERROR_TOO_MANY_PEGGED_ORDERS", - "ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE", - "ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION", - "ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED", - "ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE" - ], - "default": "ORDER_ERROR_UNSPECIFIED", - "description": "- ORDER_ERROR_UNSPECIFIED: Default value, no error reported\n - ORDER_ERROR_INVALID_MARKET_ID: Order was submitted for a market that does not exist\n - ORDER_ERROR_INVALID_ORDER_ID: Order was submitted with an invalid ID\n - ORDER_ERROR_OUT_OF_SEQUENCE: Order was amended with a sequence number that was not previous version + 1\n - ORDER_ERROR_INVALID_REMAINING_SIZE: Order was amended with an invalid remaining size (e.g. remaining greater than total size)\n - ORDER_ERROR_TIME_FAILURE: Node was unable to get Vega (blockchain) time\n - ORDER_ERROR_REMOVAL_FAILURE: Failed to remove an order from the book\n - ORDER_ERROR_INVALID_EXPIRATION_DATETIME: Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid\n - ORDER_ERROR_INVALID_ORDER_REFERENCE: Order was submitted or amended with an invalid reference field\n - ORDER_ERROR_EDIT_NOT_ALLOWED: Order amend was submitted for an order field that cannot not be amended (e.g. order ID)\n - ORDER_ERROR_AMEND_FAILURE: Amend failure because amend details do not match original order\n - ORDER_ERROR_NOT_FOUND: Order not found in an order book or store\n - ORDER_ERROR_INVALID_PARTY_ID: Order was submitted with an invalid or missing party ID\n - ORDER_ERROR_MARKET_CLOSED: Order was submitted for a market that has closed\n - ORDER_ERROR_MARGIN_CHECK_FAILED: Order was submitted, but the party did not have enough collateral to cover the order\n - ORDER_ERROR_MISSING_GENERAL_ACCOUNT: Order was submitted, but the party did not have an account for this asset\n - ORDER_ERROR_INTERNAL_ERROR: Unspecified internal error\n - ORDER_ERROR_INVALID_SIZE: Order was submitted with an invalid or missing size (e.g. 0)\n - ORDER_ERROR_INVALID_PERSISTENCE: Order was submitted with an invalid persistence for its type\n - ORDER_ERROR_INVALID_TYPE: Order was submitted with an invalid type field\n - ORDER_ERROR_SELF_TRADING: Order was stopped as it would have traded with another order submitted from the same party\n - ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES: Order was submitted, but the party did not have enough collateral to cover the fees for the order\n - ORDER_ERROR_INCORRECT_MARKET_TYPE: Order was submitted with an incorrect or invalid market type\n - ORDER_ERROR_INVALID_TIME_IN_FORCE: Order was submitted with invalid time in force\n - ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION: Good For Normal order has reached the market when it is in auction mode\n - ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING: Good For Auction order has reached the market when it is in continuous trading mode\n - ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT: Attempt to amend order to GTT without ExpiryAt\n - ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT: Attempt to amend ExpiryAt to a value before CreatedAt\n - ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT: Attempt to amend to GTC without an ExpiryAt value\n - ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC: Amending to FOK or IOC is invalid\n - ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN: Amending to GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN: Amending from GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION: IOC orders are not allowed during auction\n - ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION: FOK orders are not allowed during auction\n - ORDER_ERROR_MUST_BE_LIMIT_ORDER: Pegged orders must be LIMIT orders\n - ORDER_ERROR_MUST_BE_GTT_OR_GTC: Pegged orders can only have TIF GTC or GTT\n - ORDER_ERROR_WITHOUT_REFERENCE_PRICE: Pegged order must have a reference price\n - ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE: Buy pegged order cannot reference best ask price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO: Pegged order offset must be \u003e= 0\n - ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE: Sell pegged order cannot reference best bid price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO: Pegged order offset must be \u003e zero\n - ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE: Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)\n - ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER: Cannot amend details of a non pegged details\n - ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER: Could not re-price a pegged order because a market price is unavailable\n - ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER: It is not possible to amend the price of an existing pegged order\n - ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS: FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds\n - ORDER_ERROR_TOO_MANY_PEGGED_ORDERS: Unable to submit pegged order, temporarily too many pegged orders across all markets\n - ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE: Post order would trade\n - ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION: Post order would trade\n - ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED: Isolated margin check failed\n - ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE: In isolated margin pegged orders are rejected", - "title": "OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`" - }, - "vegaOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_ACTIVE", - "STATUS_EXPIRED", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_FILLED", - "STATUS_REJECTED", - "STATUS_PARTIALLY_FILLED", - "STATUS_PARKED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)", - "title": "Status values for an order" - }, - "vegaOrderType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_LIMIT", - "TYPE_MARKET", - "TYPE_NETWORK" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)", - "title": "Type values for an order" - }, - "vegaParty": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the party, typically represented by a public key." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "title": "Party represents an entity who wishes to trade on or query a Vega network" - }, - "vegaPartyProfile": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Party ID associated to the profile." - }, - "alias": { - "type": "string", - "description": "Alias given to the party." - }, - "metadata": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaMetadata" - }, - "description": "Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field." - } - }, - "description": "Holds metadata associated to a party." - }, - "vegaPeggedOrder": { - "type": "object", - "properties": { - "reference": { - "$ref": "#/definitions/vegaPeggedReference", - "description": "Price point the order is linked to." - }, - "offset": { - "type": "string", - "description": "Offset from the price reference." - } - }, - "title": "Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading" - }, - "vegaPeggedReference": { - "type": "string", - "enum": [ - "PEGGED_REFERENCE_UNSPECIFIED", - "PEGGED_REFERENCE_MID", - "PEGGED_REFERENCE_BEST_BID", - "PEGGED_REFERENCE_BEST_ASK" - ], - "default": "PEGGED_REFERENCE_UNSPECIFIED", - "description": "- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference", - "title": "Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point" - }, - "vegaPerpetual": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Underlying asset for the perpetual." - }, - "quoteName": { - "type": "string", - "description": "Quote name of the instrument." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceSpec", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfig": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Optional configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product definition" - }, - "vegaPerpetualData": { - "type": "object", - "properties": { - "fundingPayment": { - "type": "string", - "description": "Current funding payment for the in-progress funding period." - }, - "fundingRate": { - "type": "string", - "description": "Current funding rate for the in-progress funding period." - }, - "internalTwap": { - "type": "string", - "description": "Time-weighted-average the internal data-points for the in-progress funding period." - }, - "externalTwap": { - "type": "string", - "description": "Time-weighted-average the external data points for the in-progress funding period." - }, - "seqNum": { - "type": "string", - "format": "uint64", - "title": "Funding period sequence number" - }, - "startTime": { - "type": "string", - "format": "int64", - "title": "Funding period start time" - }, - "indexPrice": { - "type": "string", - "description": "The index price used for perps." - }, - "nextIndexPriceCalc": { - "type": "string", - "format": "int64", - "description": "The next time the index price is calculated for perps." - }, - "indexPriceType": { - "$ref": "#/definitions/vegaCompositePriceType", - "description": "The method used for calculating the index price (perps only)." - } - }, - "description": "Represents market data specific to a perpetual market." - }, - "vegaPerpetualProduct": { - "type": "object", - "properties": { - "settlementAsset": { - "type": "string", - "description": "Asset ID for the product's settlement asset." - }, - "quoteName": { - "type": "string", - "description": "Product quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used." - } - }, - "title": "Perpetual product configuration" - }, - "vegaPosition": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID in which the position is held." - }, - "partyId": { - "type": "string", - "description": "Party ID holding the position." - }, - "openVolume": { - "type": "string", - "format": "int64", - "description": "Open volume for the position, value is signed +ve for long and -ve for short." - }, - "realisedPnl": { - "type": "string", - "description": "Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places." - }, - "unrealisedPnl": { - "type": "string", - "description": "Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places." - }, - "averageEntryPrice": { - "type": "string", - "description": "Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp for the latest time the position was updated." - }, - "lossSocialisationAmount": { - "type": "string", - "description": "Sum of profit that could not be paid due to loss socialisation." - }, - "positionStatus": { - "$ref": "#/definitions/vegaPositionStatus", - "description": "Position status, indicating whether the party was distressed and had orders cancelled or was closed out." - } - }, - "title": "Represents position data for a party on the specified market on Vega" - }, - "vegaPositionStatus": { - "type": "string", - "enum": [ - "POSITION_STATUS_UNSPECIFIED", - "POSITION_STATUS_ORDERS_CLOSED", - "POSITION_STATUS_CLOSED_OUT", - "POSITION_STATUS_DISTRESSED" - ], - "default": "POSITION_STATUS_UNSPECIFIED", - "title": "Represents the status of a position" - }, - "vegaPostTransferBalance": { - "type": "object", - "properties": { - "account": { - "$ref": "#/definitions/vegaAccountDetails", - "description": "Account relating to the transfer." - }, - "balance": { - "type": "string", - "description": "Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Represents the balance for an account during a transfer" - }, - "vegaPriceLevel": { - "type": "object", - "properties": { - "price": { - "type": "string", - "description": "Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places." - }, - "numberOfOrders": { - "type": "string", - "format": "uint64", - "description": "Number of orders at the price level." - }, - "volume": { - "type": "string", - "format": "uint64", - "description": "Volume at the price level." - } - }, - "title": "Represents a price level from market depth or order book data" - }, - "vegaPriceMonitoringBounds": { - "type": "object", - "properties": { - "minValidPrice": { - "type": "string", - "description": "Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "maxValidPrice": { - "type": "string", - "description": "Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places." - }, - "trigger": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger", - "description": "Price monitoring trigger associated with the bounds." - }, - "referencePrice": { - "type": "string", - "description": "Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places." - } - }, - "title": "Represents a list of valid (at the current timestamp) price ranges per associated trigger" - }, - "vegaPriceMonitoringParameters": { - "type": "object", - "properties": { - "triggers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaPriceMonitoringTrigger" - } - } - }, - "title": "PriceMonitoringParameters contains a collection of triggers to be used for a given market" - }, - "vegaPriceMonitoringSettings": { - "type": "object", - "properties": { - "parameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Specifies price monitoring parameters to be used for price monitoring purposes." - } - }, - "title": "PriceMonitoringSettings contains the settings for price monitoring" - }, - "vegaPriceMonitoringTrigger": { - "type": "object", - "properties": { - "horizon": { - "type": "string", - "format": "int64", - "description": "Price monitoring projection horizon τ in seconds." - }, - "probability": { - "type": "string", - "description": "Price monitoring probability level p." - }, - "auctionExtension": { - "type": "string", - "format": "int64", - "description": "Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level." - } - }, - "title": "PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration" - }, - "vegaProductData": { - "type": "object", - "properties": { - "perpetualData": { - "$ref": "#/definitions/vegaPerpetualData" - } - }, - "description": "Represents market data specific to a particular product type." - }, - "vegaProposal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique proposal ID." - }, - "reference": { - "type": "string", - "description": "Proposal reference." - }, - "partyId": { - "type": "string", - "description": "Party ID i.e. public key of the party submitting the proposal." - }, - "state": { - "$ref": "#/definitions/vegaProposalState", - "description": "Current state of the proposal, i.e. open, passed, failed etc." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network." - }, - "terms": { - "$ref": "#/definitions/vegaProposalTerms", - "description": "Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term." - }, - "reason": { - "$ref": "#/definitions/vegaProposalError", - "description": "Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses." - }, - "errorDetails": { - "type": "string", - "description": "Detailed error associated to the reason." - }, - "rationale": { - "$ref": "#/definitions/vegaProposalRationale", - "description": "Rationale behind a proposal." - }, - "requiredParticipation": { - "type": "string", - "description": "Required vote participation for this proposal." - }, - "requiredMajority": { - "type": "string", - "description": "Required majority for this proposal." - }, - "requiredLiquidityProviderParticipation": { - "type": "string", - "description": "Required participation from liquidity providers, optional but is required for market update proposal." - }, - "requiredLiquidityProviderMajority": { - "type": "string", - "description": "Required majority from liquidity providers, optional but is required for market update proposal." - }, - "batchTerms": { - "$ref": "#/definitions/vegaBatchProposalTerms", - "description": "Batch proposal terms." - }, - "batchId": { - "type": "string", - "description": "ID of a batch proposal that this proposal is part of." - } - }, - "title": "Governance proposal" - }, - "vegaProposalError": { - "type": "string", - "enum": [ - "PROPOSAL_ERROR_UNSPECIFIED", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON", - "PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE", - "PROPOSAL_ERROR_ENACT_TIME_TOO_SOON", - "PROPOSAL_ERROR_ENACT_TIME_TOO_LATE", - "PROPOSAL_ERROR_INSUFFICIENT_TOKENS", - "PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY", - "PROPOSAL_ERROR_NO_PRODUCT", - "PROPOSAL_ERROR_UNSUPPORTED_PRODUCT", - "PROPOSAL_ERROR_NO_TRADING_MODE", - "PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE", - "PROPOSAL_ERROR_NODE_VALIDATION_FAILED", - "PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD", - "PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS", - "PROPOSAL_ERROR_INVALID_ASSET", - "PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS", - "PROPOSAL_ERROR_NO_RISK_PARAMETERS", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY", - "PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE", - "PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL", - "PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE", - "PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET", - "PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT", - "PROPOSAL_ERROR_INVALID_RISK_PARAMETER", - "PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED", - "PROPOSAL_ERROR_INVALID_ASSET_DETAILS", - "PROPOSAL_ERROR_UNKNOWN_TYPE", - "PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE", - "PROPOSAL_ERROR_INVALID_FREEFORM", - "PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE", - "PROPOSAL_ERROR_INVALID_MARKET", - "PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES", - "PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS", - "PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE", - "PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE", - "PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE", - "PROPOSAL_ERROR_INVALID_SPOT", - "PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED", - "PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED", - "PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID", - "PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE", - "PROPOSAL_ERROR_INVALID_SLA_PARAMS", - "PROPOSAL_ERROR_MISSING_SLA_PARAMS", - "PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT", - "PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM", - "PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED", - "PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED" - ], - "default": "PROPOSAL_ERROR_UNSPECIFIED", - "description": "- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation \u003c Closing \u003c Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined", - "title": "List of possible errors that can cause a proposal to be in state rejected or failed" - }, - "vegaProposalParameters": { - "type": "object", - "properties": { - "minClose": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before a proposal can be closed for voting." - }, - "maxClose": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time that a proposal can be open for voting." - }, - "minEnact": { - "type": "string", - "format": "int64", - "description": "Represents the minimum time before an enacted proposal takes effect." - }, - "maxEnact": { - "type": "string", - "format": "int64", - "description": "Represents the maximum time before an enacted proposal must take effect." - }, - "requiredParticipation": { - "type": "string", - "description": "Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid." - }, - "requiredMajority": { - "type": "string", - "description": "Specifies the required percentage of votes a proposal needs to be approved." - }, - "minProposerBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a proposer must hold to initiate a proposal." - }, - "minVoterBalance": { - "type": "string", - "description": "Specifies the minimum governance token balance a voter must hold to participate in voting." - }, - "requiredParticipationLp": { - "type": "string", - "description": "Specifies the required percentage of participation from liquidity providers for the proposal to be valid." - }, - "requiredMajorityLp": { - "type": "string", - "description": "Specifies the required majority percentage from liquidity providers for a proposal to be approved." - }, - "minEquityLikeShare": { - "type": "string", - "description": "Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible." - } - } - }, - "vegaProposalRationale": { - "type": "object", - "properties": { - "description": { - "type": "string", - "description": "Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals." - }, - "title": { - "type": "string", - "description": "Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals." - } - }, - "description": "Rationale behind a proposal." - }, - "vegaProposalState": { - "type": "string", - "enum": [ - "STATE_UNSPECIFIED", - "STATE_FAILED", - "STATE_OPEN", - "STATE_PASSED", - "STATE_REJECTED", - "STATE_DECLINED", - "STATE_ENACTED", - "STATE_WAITING_FOR_NODE_VOTE" - ], - "default": "STATE_UNSPECIFIED", - "description": "- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal", - "title": "Proposal state transition:\nOpen -\u003e\n - Passed -\u003e Enacted.\n - Passed -\u003e Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state" - }, - "vegaProposalTerms": { - "type": "object", - "properties": { - "closingTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters." - }, - "enactmentTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters." - }, - "validationTimestamp": { - "type": "string", - "format": "int64", - "description": "Validation timestamp as Unix time in seconds." - }, - "updateMarket": { - "$ref": "#/definitions/vegaUpdateMarket", - "description": "Proposal change for modifying an existing futures market on Vega." - }, - "newMarket": { - "$ref": "#/definitions/vegaNewMarket", - "description": "Proposal change for creating new futures market on Vega." - }, - "updateNetworkParameter": { - "$ref": "#/definitions/vegaUpdateNetworkParameter", - "description": "Proposal change for updating Vega network parameters." - }, - "newAsset": { - "$ref": "#/definitions/vegaNewAsset", - "description": "Proposal change for creating new assets on Vega." - }, - "newFreeform": { - "$ref": "#/definitions/vegaNewFreeform", - "description": "Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment." - }, - "updateAsset": { - "$ref": "#/definitions/vegaUpdateAsset", - "description": "Proposal change for updating an asset." - }, - "newSpotMarket": { - "$ref": "#/definitions/vegaNewSpotMarket", - "description": "Proposal change for creating new spot market on Vega." - }, - "updateSpotMarket": { - "$ref": "#/definitions/vegaUpdateSpotMarket", - "description": "Proposal change for modifying an existing spot market on Vega." - }, - "newTransfer": { - "$ref": "#/definitions/vegaNewTransfer", - "description": "Proposal change for a governance transfer." - }, - "cancelTransfer": { - "$ref": "#/definitions/vegaCancelTransfer", - "description": "Cancel a governance transfer." - }, - "updateMarketState": { - "$ref": "#/definitions/vegaUpdateMarketState", - "description": "Proposal change for updating the state of a market." - }, - "updateReferralProgram": { - "$ref": "#/definitions/vegaUpdateReferralProgram", - "description": "Proposal change for updating the referral program." - }, - "updateVolumeDiscountProgram": { - "$ref": "#/definitions/vegaUpdateVolumeDiscountProgram", - "description": "Proposal change for updating the volume discount program." - } - }, - "title": "Terms for a governance proposal on Vega" - }, - "vegaRank": { - "type": "object", - "properties": { - "startRank": { - "type": "integer", - "format": "int64" - }, - "shareRatio": { - "type": "integer", - "format": "int64" - } - } - }, - "vegaRankingScore": { - "type": "object", - "properties": { - "stakeScore": { - "type": "string", - "description": "Stake based score - no anti-whaling." - }, - "performanceScore": { - "type": "string", - "description": "Performance based score." - }, - "previousStatus": { - "$ref": "#/definitions/vegaValidatorNodeStatus", - "description": "Status of the validator in the previous epoch." - }, - "status": { - "$ref": "#/definitions/vegaValidatorNodeStatus", - "description": "Status of the validator in the current epoch." - }, - "votingPower": { - "type": "integer", - "format": "int64", - "description": "Tendermint voting power of the validator." - }, - "rankingScore": { - "type": "string", - "description": "Final score." - } - } - }, - "vegaRecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be paid." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Specific details for a recurring transfer" - }, - "vegaReferralProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which the referral set's running volume is evaluated." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaReferralProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - }, - "stakingTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaStakingTier" - }, - "description": "Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking." - } - } - }, - "vegaReward": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID in which the reward is being paid." - }, - "partyId": { - "type": "string", - "description": "Party ID to whom the reward is being paid." - }, - "epoch": { - "type": "string", - "format": "uint64", - "description": "Epoch in which the reward is being paid." - }, - "amount": { - "type": "string", - "description": "Amount paid as a reward. This field is an unsigned integer scaled to the asset's decimal places." - }, - "percentageOfTotal": { - "type": "string", - "description": "Percentage of total rewards paid in the epoch." - }, - "receivedAt": { - "type": "string", - "format": "int64", - "description": "Timestamp at which the reward was paid as Unix nano time." - }, - "marketId": { - "type": "string", - "description": "Market ID in which the reward is being paid." - }, - "rewardType": { - "type": "string", - "description": "Type of reward being paid." - }, - "lockedUntilEpoch": { - "type": "string", - "format": "uint64", - "description": "The epoch when the reward is being released." - }, - "quantumAmount": { - "type": "string", - "description": "Amount paid as a reward, expressed in asset's quantum unit." - }, - "gameId": { - "type": "string", - "description": "ID of the game the reward payment was made for if the payment was made for participation in a game." - }, - "teamId": { - "type": "string", - "description": "ID of the team the party is a member of, if the party is a member of a participating team,\nand the reward payment was made for participation in a game.\nThis field is currently only populated by the rewards API." - } - }, - "title": "Details for a single reward payment" - }, - "vegaRewardScore": { - "type": "object", - "properties": { - "rawValidatorScore": { - "type": "string", - "description": "Stake based score - with anti-whaling." - }, - "performanceScore": { - "type": "string", - "description": "Performance based score." - }, - "multisigScore": { - "type": "string", - "description": "Multisig score." - }, - "validatorScore": { - "type": "string", - "description": "Un-normalised score." - }, - "normalisedScore": { - "type": "string", - "description": "Normalised validator score for rewards." - }, - "validatorStatus": { - "$ref": "#/definitions/vegaValidatorNodeStatus", - "description": "Status of the validator for reward." - } - } - }, - "vegaRewardSummary": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID in which the reward is being paid." - }, - "partyId": { - "type": "string", - "description": "Party ID to whom the reward is being paid." - }, - "amount": { - "type": "string", - "description": "Total amount of rewards paid in the asset. This field is an unsigned integer scaled to the asset's decimal places." - } - }, - "title": "Details for rewards for a single asset" - }, - "vegaRiskFactor": { - "type": "object", - "properties": { - "market": { - "type": "string", - "description": "Market ID that relates to this risk factor." - }, - "short": { - "type": "string", - "description": "Short Risk factor value." - }, - "long": { - "type": "string", - "description": "Long Risk factor value." - } - }, - "title": "Risk factors are used to calculate the current risk associated with orders trading on a given market" - }, - "vegaScalingFactors": { - "type": "object", - "properties": { - "searchLevel": { - "type": "number", - "format": "double", - "description": "Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release." - }, - "initialMargin": { - "type": "number", - "format": "double", - "description": "Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin." - }, - "collateralRelease": { - "type": "number", - "format": "double", - "description": "Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset." - } - }, - "title": "Scaling Factors (for use in margin calculation)" - }, - "vegaSide": { - "type": "string", - "enum": [ - "SIDE_UNSPECIFIED", - "SIDE_BUY", - "SIDE_SELL" - ], - "default": "SIDE_UNSPECIFIED", - "description": "- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order", - "title": "Side relates to the direction of an order, to Buy, or Sell" - }, - "vegaSimpleModelParams": { - "type": "object", - "properties": { - "factorLong": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for long." - }, - "factorShort": { - "type": "number", - "format": "double", - "description": "Pre-defined risk factor value for short." - }, - "maxMoveUp": { - "type": "number", - "format": "double", - "description": "Pre-defined maximum price move up that the model considers as valid." - }, - "minMoveDown": { - "type": "number", - "format": "double", - "description": "Pre-defined minimum price move down that the model considers as valid." - }, - "probabilityOfTrading": { - "type": "number", - "format": "double", - "description": "Pre-defined constant probability of trading." - } - }, - "title": "Risk model parameters for simple modelling" - }, - "vegaSimpleRiskModel": { - "type": "object", - "properties": { - "params": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Risk model params for simple modelling." - } - }, - "title": "Risk model for simple modelling" - }, - "vegaSpecBindingForCompositePrice": { - "type": "object", - "properties": { - "priceSourceProperty": { - "type": "string", - "description": "The property name of price." - } - }, - "description": "Describes which property of the data source data is to be\nused for price source." - }, - "vegaSpot": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Asset ID of the underlying base asset for the spot product." - }, - "quoteAsset": { - "type": "string", - "description": "Asset ID of the underlying quote asset for the spot product." - }, - "name": { - "type": "string", - "description": "Name of the instrument." - } - }, - "title": "Spot product definition" - }, - "vegaSpotProduct": { - "type": "object", - "properties": { - "baseAsset": { - "type": "string", - "description": "Base asset ID." - }, - "quoteAsset": { - "type": "string", - "description": "Quote asset ID." - }, - "name": { - "type": "string", - "description": "Product name." - } - }, - "title": "Spot product configuration" - }, - "vegaStakingTier": { - "type": "object", - "properties": { - "minimumStakedTokens": { - "type": "string", - "description": "Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier." - }, - "referralRewardMultiplier": { - "type": "string", - "description": "Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer." - } - } - }, - "vegaStopOrder": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "ID of this stop order\nalso the ID of the associated order if it is ever triggered" - }, - "ocoLinkId": { - "type": "string", - "title": "The ID of the 'other' part of the OCO if 2 stop orders were submitted at once" - }, - "expiresAt": { - "type": "string", - "format": "int64", - "description": "Optional expiry timestamp." - }, - "expiryStrategy": { - "$ref": "#/definitions/StopOrderExpiryStrategy", - "description": "Strategy to adopt if the expiry time is reached." - }, - "triggerDirection": { - "$ref": "#/definitions/StopOrderTriggerDirection", - "description": "Trigger direction for this stop order." - }, - "status": { - "$ref": "#/definitions/vegaStopOrderStatus", - "description": "Status of the stop order." - }, - "createdAt": { - "type": "string", - "format": "int64", - "description": "Creation time of the stop order." - }, - "updatedAt": { - "type": "string", - "format": "int64", - "description": "Last update of this stop order." - }, - "orderId": { - "type": "string", - "description": "ID of the order created once the trigger is hit." - }, - "partyId": { - "type": "string", - "description": "ID of the party that submitted this stop order." - }, - "marketId": { - "type": "string", - "description": "ID of the market the stop order is submitted to." - }, - "rejectionReason": { - "$ref": "#/definitions/StopOrderRejectionReason", - "title": "An optional reason for why a stop order was rejected" - }, - "sizeOverrideSetting": { - "$ref": "#/definitions/StopOrderSizeOverrideSetting", - "title": "Size override setting" - }, - "sizeOverrideValue": { - "$ref": "#/definitions/StopOrderSizeOverrideValue", - "title": "Size override value" - }, - "price": { - "type": "string", - "description": "Fixed price at which the order will be submitted." - }, - "trailingPercentOffset": { - "type": "string", - "title": "Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%" - } - } - }, - "vegaStopOrderStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_PENDING", - "STATUS_CANCELLED", - "STATUS_STOPPED", - "STATUS_TRIGGERED", - "STATUS_EXPIRED", - "STATUS_REJECTED" - ], - "default": "STATUS_UNSPECIFIED", - "title": "- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission" - }, - "vegaSuccessorConfiguration": { - "type": "object", - "properties": { - "parentMarketId": { - "type": "string", - "description": "ID of the market that the successor should take over from." - }, - "insurancePoolFraction": { - "type": "string", - "description": "A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor." - } - }, - "description": "Configuration required to turn a new market proposal in to a successor market proposal." - }, - "vegaTargetStakeParameters": { - "type": "object", - "properties": { - "timeWindow": { - "type": "string", - "format": "int64", - "description": "Specifies length of time window expressed in seconds for target stake calculation." - }, - "scalingFactor": { - "type": "number", - "format": "double", - "description": "Specifies scaling factors used in target stake calculation." - } - }, - "title": "TargetStakeParameters contains parameters used in target stake calculation" - }, - "vegaTradableInstrument": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaInstrument", - "description": "Details for the underlying instrument." - }, - "marginCalculator": { - "$ref": "#/definitions/vegaMarginCalculator", - "description": "Margin calculator for the instrument." - }, - "logNormalRiskModel": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal." - }, - "simpleRiskModel": { - "$ref": "#/definitions/vegaSimpleRiskModel", - "description": "Simple." - } - }, - "title": "Tradable Instrument definition" - }, - "vegaTrade": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the trade." - }, - "marketId": { - "type": "string", - "description": "Market ID on which the trade occurred." - }, - "price": { - "type": "string", - "description": "Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places." - }, - "size": { - "type": "string", - "format": "uint64", - "description": "Size filled for the trade." - }, - "buyer": { - "type": "string", - "description": "Unique party ID for the buyer." - }, - "seller": { - "type": "string", - "description": "Unique party ID for the seller." - }, - "aggressor": { - "$ref": "#/definitions/vegaSide", - "description": "Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL." - }, - "buyOrder": { - "type": "string", - "description": "Identifier of the order from the buy side." - }, - "sellOrder": { - "type": "string", - "description": "Identifier of the order from the sell side." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds for when the trade occurred." - }, - "type": { - "$ref": "#/definitions/vegaTradeType", - "description": "Type for the trade." - }, - "buyerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the buyer party for the trade." - }, - "sellerFee": { - "$ref": "#/definitions/vegaFee", - "description": "Fee amount charged to the seller party for the trade." - }, - "buyerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the buy side order was placed in." - }, - "sellerAuctionBatch": { - "type": "string", - "format": "uint64", - "description": "Auction batch number that the sell side order was placed in." - }, - "assetPrice": { - "type": "string", - "description": "Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates." - } - }, - "title": "A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega" - }, - "vegaTradeType": { - "type": "string", - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_DEFAULT", - "TYPE_NETWORK_CLOSE_OUT_GOOD", - "TYPE_NETWORK_CLOSE_OUT_BAD" - ], - "default": "TYPE_UNSPECIFIED", - "description": "- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_DEFAULT: Normal trading between two parties\n - TYPE_NETWORK_CLOSE_OUT_GOOD: Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties\n - TYPE_NETWORK_CLOSE_OUT_BAD: Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party", - "title": "Type values for a trade" - }, - "vegaTransferType": { - "type": "string", - "enum": [ - "TRANSFER_TYPE_UNSPECIFIED", - "TRANSFER_TYPE_LOSS", - "TRANSFER_TYPE_WIN", - "TRANSFER_TYPE_MTM_LOSS", - "TRANSFER_TYPE_MTM_WIN", - "TRANSFER_TYPE_MARGIN_LOW", - "TRANSFER_TYPE_MARGIN_HIGH", - "TRANSFER_TYPE_MARGIN_CONFISCATED", - "TRANSFER_TYPE_MAKER_FEE_PAY", - "TRANSFER_TYPE_MAKER_FEE_RECEIVE", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY", - "TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE", - "TRANSFER_TYPE_LIQUIDITY_FEE_PAY", - "TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE", - "TRANSFER_TYPE_BOND_LOW", - "TRANSFER_TYPE_BOND_HIGH", - "TRANSFER_TYPE_WITHDRAW", - "TRANSFER_TYPE_DEPOSIT", - "TRANSFER_TYPE_BOND_SLASHING", - "TRANSFER_TYPE_REWARD_PAYOUT", - "TRANSFER_TYPE_TRANSFER_FUNDS_SEND", - "TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE", - "TRANSFER_TYPE_CLEAR_ACCOUNT", - "TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE", - "TRANSFER_TYPE_SPOT", - "TRANSFER_TYPE_HOLDING_LOCK", - "TRANSFER_TYPE_HOLDING_RELEASE", - "TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION", - "TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE", - "TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE", - "TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY", - "TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY", - "TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT", - "TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE", - "TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS", - "TRANSFER_TYPE_PERPETUALS_FUNDING_WIN", - "TRANSFER_TYPE_REWARDS_VESTED", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY", - "TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE", - "TRANSFER_TYPE_ORDER_MARGIN_LOW", - "TRANSFER_TYPE_ORDER_MARGIN_HIGH", - "TRANSFER_TYPE_ISOLATED_MARGIN_LOW", - "TRANSFER_TYPE_ISOLATED_MARGIN_HIGH" - ], - "default": "TRANSFER_TYPE_UNSPECIFIED", - "description": "- TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.", - "title": "Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place" - }, - "vegaUpdateAsset": { - "type": "object", - "properties": { - "assetId": { - "type": "string", - "description": "Asset ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaAssetDetailsUpdate", - "description": "Changes to apply on an existing asset." - } - }, - "title": "Update an existing asset on Vega" - }, - "vegaUpdateFutureProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data of settlement data." - }, - "dataSourceSpecForTradingTermination": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "The data source spec describing the data source for trading termination." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToFutureBinding", - "description": "The binding between the data source spec and the settlement data." - } - }, - "title": "Future product configuration" - }, - "vegaUpdateInstrumentConfiguration": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Instrument code, human-readable shortcode used to describe the instrument." - }, - "name": { - "type": "string", - "title": "Instrument name" - }, - "future": { - "$ref": "#/definitions/vegaUpdateFutureProduct", - "description": "Future." - }, - "perpetual": { - "$ref": "#/definitions/vegaUpdatePerpetualProduct", - "description": "Perpetual." - } - }, - "title": "Instrument configuration" - }, - "vegaUpdateMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateMarketConfiguration", - "description": "Updated configuration of the futures market." - } - }, - "title": "Update an existing market on Vega" - }, - "vegaUpdateMarketConfiguration": { - "type": "object", - "properties": { - "instrument": { - "$ref": "#/definitions/vegaUpdateInstrumentConfiguration", - "description": "Updated futures market instrument configuration." - }, - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional futures market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "liquidityMonitoringParameters": { - "$ref": "#/definitions/vegaLiquidityMonitoringParameters", - "description": "Liquidity monitoring parameters." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "lpPriceRange": { - "type": "string", - "description": "DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed." - }, - "linearSlippageFactor": { - "type": "string", - "description": "Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume." - }, - "quadraticSlippageFactor": { - "type": "string", - "description": "Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume." - }, - "liquiditySlaParameters": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "title": "Liquidity SLA parameters" - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - }, - "liquidationStrategy": { - "$ref": "#/definitions/vegaLiquidationStrategy", - "title": "Liquidation strategy parameters" - }, - "markPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Mark price configuration." - } - }, - "title": "Configuration to update a futures market on Vega" - }, - "vegaUpdateMarketState": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaUpdateMarketStateConfiguration", - "title": "Configuration for governance-initiated change of a market's state" - } - } - }, - "vegaUpdateMarketStateConfiguration": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "title": "ID of the market" - }, - "updateType": { - "$ref": "#/definitions/vegaMarketStateUpdateType", - "title": "Type of the market update" - }, - "price": { - "type": "string", - "title": "Settlement price, relevant only for market termination for futures markets" - } - } - }, - "vegaUpdateNetworkParameter": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaNetworkParameter", - "description": "The network parameter to update." - } - }, - "title": "Update network configuration on Vega" - }, - "vegaUpdatePerpetualProduct": { - "type": "object", - "properties": { - "quoteName": { - "type": "string", - "description": "Human-readable name/abbreviation of the quote name." - }, - "marginFundingFactor": { - "type": "string", - "description": "Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1]." - }, - "interestRate": { - "type": "string", - "description": "Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1]." - }, - "clampLowerBound": { - "type": "string", - "description": "Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "clampUpperBound": { - "type": "string", - "description": "Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1]." - }, - "dataSourceSpecForSettlementSchedule": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement schedule." - }, - "dataSourceSpecForSettlementData": { - "$ref": "#/definitions/vegaDataSourceDefinition", - "description": "Data source spec describing the data source for settlement." - }, - "dataSourceSpecBinding": { - "$ref": "#/definitions/vegaDataSourceSpecToPerpetualBinding", - "description": "Binding between the data source spec and the settlement data." - }, - "fundingRateScalingFactor": { - "type": "string", - "description": "Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments." - }, - "fundingRateLowerBound": { - "type": "string", - "description": "Lower bound for the funding-rate such that the funding-rate will never be lower than this value." - }, - "fundingRateUpperBound": { - "type": "string", - "description": "Upper bound for the funding-rate such that the funding-rate will never be higher than this value." - }, - "indexPriceConfiguration": { - "$ref": "#/definitions/vegaCompositePriceConfiguration", - "description": "Configuration for the index price used in funding payment calculation." - } - }, - "title": "Perpetual product configuration" - }, - "vegaUpdateReferralProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaReferralProgramChanges", - "description": "Configuration for change to update a referral program." - } - } - }, - "vegaUpdateSpotMarket": { - "type": "object", - "properties": { - "marketId": { - "type": "string", - "description": "Market ID the update is for." - }, - "changes": { - "$ref": "#/definitions/vegaUpdateSpotMarketConfiguration", - "description": "Updated configuration of the spot market." - } - }, - "title": "Update an existing spot market on Vega" - }, - "vegaUpdateSpotMarketConfiguration": { - "type": "object", - "properties": { - "metadata": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional spot market metadata, tags." - }, - "priceMonitoringParameters": { - "$ref": "#/definitions/vegaPriceMonitoringParameters", - "description": "Price monitoring parameters." - }, - "targetStakeParameters": { - "$ref": "#/definitions/vegaTargetStakeParameters", - "description": "Specifies parameters related to target stake calculation." - }, - "simple": { - "$ref": "#/definitions/vegaSimpleModelParams", - "description": "Simple risk model parameters, valid only if MODEL_SIMPLE is selected." - }, - "logNormal": { - "$ref": "#/definitions/vegaLogNormalRiskModel", - "description": "Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected." - }, - "slaParams": { - "$ref": "#/definitions/vegaLiquiditySLAParameters", - "description": "Specifies the liquidity provision SLA parameters." - }, - "liquidityFeeSettings": { - "$ref": "#/definitions/vegaLiquidityFeeSettings", - "description": "Specifies how the liquidity fee for the market will be calculated." - } - }, - "title": "Configuration to update a spot market on Vega" - }, - "vegaUpdateVolumeDiscountProgram": { - "type": "object", - "properties": { - "changes": { - "$ref": "#/definitions/vegaVolumeDiscountProgramChanges", - "title": "Configuration for a change to update a volume discount program" - } - } - }, - "vegaValidatorNodeStatus": { - "type": "string", - "enum": [ - "VALIDATOR_NODE_STATUS_UNSPECIFIED", - "VALIDATOR_NODE_STATUS_TENDERMINT", - "VALIDATOR_NODE_STATUS_ERSATZ", - "VALIDATOR_NODE_STATUS_PENDING" - ], - "default": "VALIDATOR_NODE_STATUS_UNSPECIFIED", - "description": "- VALIDATOR_NODE_STATUS_TENDERMINT: Node is a tendermint validator\n - VALIDATOR_NODE_STATUS_ERSATZ: Node is an ersatz validator\n - VALIDATOR_NODE_STATUS_PENDING: Node is a pending validator", - "title": "Validation status of the node" - }, - "vegaVolumeBenefitTier": { - "type": "object", - "properties": { - "minimumRunningNotionalTakerVolume": { - "type": "string", - "description": "Required running notional taker volume in quantum units for parties\nto access this tier." - }, - "volumeDiscountFactor": { - "type": "string", - "description": "Proportion of the taker fees to be discounted." - } - } - }, - "vegaVolumeDiscountProgram": { - "type": "object", - "properties": { - "version": { - "type": "string", - "format": "uint64", - "description": "Incremental version of the program. It is incremented after each program\nupdate." - }, - "id": { - "type": "string", - "description": "Unique ID generated from the proposal that created this program." - }, - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers ordered by increasing discounts." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which a referral set's running volume is evaluated." - } - } - }, - "vegaVolumeDiscountProgramChanges": { - "type": "object", - "properties": { - "benefitTiers": { - "type": "array", - "items": { - "$ref": "#/definitions/vegaVolumeBenefitTier" - }, - "description": "Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria." - }, - "endOfProgramTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled." - }, - "windowLength": { - "type": "string", - "format": "uint64", - "description": "Number of epochs over which to evaluate a referral set's running volume." - } - } - }, - "vegaVote": { - "type": "object", - "properties": { - "partyId": { - "type": "string", - "description": "Voter's party ID." - }, - "value": { - "$ref": "#/definitions/vegaVoteValue", - "description": "Which way the party voted." - }, - "proposalId": { - "type": "string", - "description": "Proposal ID being voted on." - }, - "timestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp in Unix nanoseconds when the vote was acknowledged by the network." - }, - "totalGovernanceTokenBalance": { - "type": "string", - "description": "Total number of governance token for the party that cast the vote." - }, - "totalGovernanceTokenWeight": { - "type": "string", - "description": "The weight of this vote based on the total number of governance tokens." - }, - "totalEquityLikeShareWeight": { - "type": "string", - "description": "The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal." - }, - "perMarketEquityLikeShareWeight": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal." - } - }, - "title": "Governance vote" - }, - "vegaVoteValue": { - "type": "string", - "enum": [ - "VALUE_UNSPECIFIED", - "VALUE_NO", - "VALUE_YES" - ], - "default": "VALUE_UNSPECIFIED", - "description": "- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal", - "title": "Vote value" - }, - "vegaWithdrawExt": { - "type": "object", - "properties": { - "erc20": { - "$ref": "#/definitions/vegaErc20WithdrawExt", - "description": "ERC20 withdrawal details." - } - }, - "title": "Withdrawal external details" - }, - "vegaWithdrawal": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique ID for the withdrawal." - }, - "partyId": { - "type": "string", - "description": "Unique party ID of the user initiating the withdrawal." - }, - "amount": { - "type": "string", - "description": "Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places." - }, - "asset": { - "type": "string", - "description": "Asset to withdraw funds from." - }, - "status": { - "$ref": "#/definitions/vegaWithdrawalStatus", - "description": "Status of the withdrawal." - }, - "ref": { - "type": "string", - "description": "Reference which is used by the foreign chain\nto refer to this withdrawal." - }, - "txHash": { - "type": "string", - "description": "Hash of the foreign chain for this transaction." - }, - "createdTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the network started to process this withdrawal." - }, - "withdrawnTimestamp": { - "type": "string", - "format": "int64", - "description": "Timestamp for when the withdrawal was finalised by the network." - }, - "ext": { - "$ref": "#/definitions/vegaWithdrawExt", - "description": "Foreign chain specifics." - } - }, - "title": "Withdrawal from the Vega network" - }, - "vegaWithdrawalStatus": { - "type": "string", - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_OPEN", - "STATUS_REJECTED", - "STATUS_FINALIZED" - ], - "default": "STATUS_UNSPECIFIED", - "description": "- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Withdrawal is open and being processed by the network\n - STATUS_REJECTED: Withdrawal have been cancelled\n - STATUS_FINALIZED: Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network", - "title": "Status of the withdrawal" - }, - "vegacommandsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64", - "description": "Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account." - } - }, - "description": "Details for a one-off transfer." - }, - "vegacommandsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64", - "description": "First epoch from which this transfer shall be executed." - }, - "endEpoch": { - "type": "string", - "format": "uint64", - "description": "Last epoch at which this transfer shall be executed." - }, - "factor": { - "type": "string", - "description": "Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc." - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy", - "description": "Optional parameter defining how a transfer is dispatched." - } - }, - "title": "Details for a recurring transfer" - }, - "vegacommandsv1Transfer": { - "type": "object", - "properties": { - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Account type from which the funds of the party should be taken." - }, - "to": { - "type": "string", - "description": "Public key of the destination account." - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType", - "description": "Type of the destination account." - }, - "asset": { - "type": "string", - "description": "Asset ID of the asset to be transferred." - }, - "amount": { - "type": "string", - "description": "Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places." - }, - "reference": { - "type": "string", - "description": "Reference to be attached to the transfer." - }, - "oneOff": { - "$ref": "#/definitions/vegacommandsv1OneOffTransfer", - "description": "Details of a one-off transfer that is executed once at a specified time." - }, - "recurring": { - "$ref": "#/definitions/vegacommandsv1RecurringTransfer", - "description": "Details of a transfer that is executed once every epoch until stopped." - } - }, - "title": "Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`" - }, - "vegaeventsv1OneOffTransfer": { - "type": "object", - "properties": { - "deliverOn": { - "type": "string", - "format": "int64" - } - } - }, - "vegaeventsv1RecurringTransfer": { - "type": "object", - "properties": { - "startEpoch": { - "type": "string", - "format": "uint64" - }, - "endEpoch": { - "type": "string", - "format": "uint64" - }, - "factor": { - "type": "string" - }, - "dispatchStrategy": { - "$ref": "#/definitions/vegaDispatchStrategy" - } - } - }, - "vegaeventsv1Transfer": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "from": { - "type": "string" - }, - "fromAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "to": { - "type": "string" - }, - "toAccountType": { - "$ref": "#/definitions/vegaAccountType" - }, - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - }, - "reference": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/v1TransferStatus" - }, - "timestamp": { - "type": "string", - "format": "int64" - }, - "reason": { - "type": "string" - }, - "gameId": { - "type": "string", - "title": "ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation" - }, - "oneOff": { - "$ref": "#/definitions/vegaeventsv1OneOffTransfer" - }, - "recurring": { - "$ref": "#/definitions/vegaeventsv1RecurringTransfer" - }, - "oneOffGovernance": { - "$ref": "#/definitions/v1OneOffGovernanceTransfer" - }, - "recurringGovernance": { - "$ref": "#/definitions/v1RecurringGovernanceTransfer" - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/assets.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/assets.swagger.json deleted file mode 100644 index 9d097dbb9..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/assets.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/assets.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/chain_events.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/chain_events.swagger.json deleted file mode 100644 index 7e122e440..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/chain_events.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/chain_events.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/checkpoint/v1/checkpoint.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/checkpoint/v1/checkpoint.swagger.json deleted file mode 100644 index cdccfb99c..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/checkpoint/v1/checkpoint.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/checkpoint/v1/checkpoint.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/commands.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/commands.swagger.json deleted file mode 100644 index 26814accb..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/commands.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/commands.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/data.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/data.swagger.json deleted file mode 100644 index 72e1066f9..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/data.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/data.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/signature.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/signature.swagger.json deleted file mode 100644 index bca419264..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/signature.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/signature.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/transaction.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/transaction.swagger.json deleted file mode 100644 index 80565817c..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/transaction.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/transaction.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/validator_commands.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/validator_commands.swagger.json deleted file mode 100644 index 11a4f0aac..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/commands/v1/validator_commands.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/commands/v1/validator_commands.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/data.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/data.swagger.json deleted file mode 100644 index dac21342e..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/data.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data/v1/data.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "rpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/spec.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/spec.swagger.json deleted file mode 100644 index 77fbc8b87..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/data/v1/spec.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data/v1/spec.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "rpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/data_source.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/data_source.swagger.json deleted file mode 100644 index fc4472949..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/data_source.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/data_source.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/events/v1/events.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/events/v1/events.swagger.json deleted file mode 100644 index 2b32a0c55..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/events/v1/events.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/events/v1/events.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/governance.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/governance.swagger.json deleted file mode 100644 index 45c945a56..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/governance.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/governance.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/markets.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/markets.swagger.json deleted file mode 100644 index 8fbf8badc..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/markets.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/markets.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/oracle.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/oracle.swagger.json deleted file mode 100644 index ef6f33a5a..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/oracle.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/oracle.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/snapshot/v1/snapshot.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/snapshot/v1/snapshot.swagger.json deleted file mode 100644 index fbdb3af1d..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/snapshot/v1/snapshot.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/snapshot/v1/snapshot.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/vega.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/vega.swagger.json deleted file mode 100644 index 53809884b..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/vega.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/vega.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/wallet/v1/wallet.swagger.json b/specs/v0.74.0-preview.6/vega/swagger/vega/wallet/v1/wallet.swagger.json deleted file mode 100644 index f14317268..000000000 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/wallet/v1/wallet.swagger.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "vega/wallet/v1/wallet.proto", - "version": "version not set" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": {}, - "definitions": { - "googlerpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - } - } -} diff --git a/specs/v0.74.0-preview.6/wallet/api/wallet.openapi.json b/specs/v0.74.0-preview.6/wallet/api/wallet.openapi.json deleted file mode 100644 index a7b82681c..000000000 --- a/specs/v0.74.0-preview.6/wallet/api/wallet.openapi.json +++ /dev/null @@ -1,284 +0,0 @@ -{ - "openapi": "3.0.3", - "info": { - "title": "Wallet API", - "description": "The version 2 of the wallet HTTP API leverages the wallet JSON-RPC API.\n\n## Workflow\n1. Use `GET /v2/methods` to ensure the JSON-RPC API exposes all the methods your application requires.\n\n2. Use `POST /v2/requests` endpoint to submit requests to the JSON-RPC API.\n## Useful links\n- [JSON-RPC 2.0 Specification](https://www.jsonrpc.org/specification)", - "version": "2.0.0" - }, - "servers": [ - { "url": "http://localhost:1789/api/", "description": "Local wallet" } - ], - "externalDocs": { - "description": "Find out more about Vega REST APIs.", - "url": "https://docs.vega.xyz/docs/mainnet/api/rest/overview" - }, - "paths": { - "/v2/requests": { - "post": { - "summary": "Submit JSON-RPC request to wallet API", - "description": "This endpoint is the main entry point to submit JSON-RPC requests. The body of the HTTP request should be formatted as a JSON-RPC v2 request. The HTTP response is formatted as the JSON-RPC v2 response.\n\nThe `ID` should be specified. See [the JSON-RPC notification documentation](https://www.jsonrpc.org/specification#notification) for more details.\n\n# Content type\nThis endpoint returns a response with a specific `Content-Type` header: `application/json-rpc`.\n\nThis content type is used to help third-party applications differentiate the different JSON formats returned by the service. \n\nNote that `application/json-rpc` is not a standard HTTP content type.\n\n# Authentication\n\n## Workflow\nWhen connecting to a wallet, a connection token will be received back through the `Authorisation` header.\n\nWhen accessing protected JSON-RPC methods, the connection token must be set to the `Authorisation` header. If the connection token is not valid, the server returns a response with the HTTP code 401, and the `WWW-Authenticate` header set to `VWT` as required by the HTTP standards.\n\n### Community implementation of the wallet service\nPeople might be willing to implement their own wallet service with their own authentication system. It's recommended that any community implementations follow the same workflow.\n\nThis will save third-party applications from having to _explicitly_ support different authentication schemes, and make the community implementations fully interoperable with all third-party applications, out of the box.\n\n### Token format\n\n\nThe token will be formatted as follows:\n`VWT \\`\n\n`VWT` scheme stands for \"Vega Wallet Token\" and is not a standard authorisation scheme.\n\n`YOUR_TOKEN` is a randomly generated string of 64 characters with numbers and letters. Each session generates a unique one.", - "tags": ["Wallet"], - "parameters": [ - { - "in": "header", - "name": "Origin", - "description": "The origin of the request. If this header is missing, the request will be rejected as an unauthorized request (401 Unauthorized).", - "required": true, - "schema": { - "type": "string" - } - }, - { - "in": "header", - "name": "Authorization", - "description": "The token used to access the protected methods. The format is `VWT YOUR_TOKEN`. VWT is a non-standard scheme that stands for Vega Wallet Token. If this header is missing when accessing protected methods, the request will be rejected as an unauthorized request (401 Unauthorized).", - "schema": { - "type": "string" - }, - "examples": { - "test": { - "value": "VWT stuTxgheMY8RZyISS9voyLjXHBaQFS7DRqDyXCM7Xx6rcj8zP84U1XNAIhf8110S" - } - } - } - ], - "requestBody": { - "description": "The JSON-RPC v2 request", - "content": { - "application/json-rpc": { - "schema": { - "$ref": "#/components/schemas/JsonRpcRequest" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "The request is successful. On this endpoint, only this type of response format should be expected.", - "content": { - "application/json-rpc": { - "schema": { - "$ref": "#/components/schemas/JsonRpcResponse" - } - } - } - }, - "204": { - "description": "This response is returned when there is no `id` property valued in the JSON-RPC request. Concretely, when a JSON-RPC request doesn't have an ID, it is considered a JSON-RPC notification and, as such, no result is to be expected, even in case of failure." - }, - "400": { - "description": "Something went wrong", - "content": { - "application/json-rpc": { - "schema": { - "type": "object", - "description": "This payload is returned when an error occurs at the JSON-RPC API level. See [the JSON-RPC response documentation](https://www.jsonrpc.org/specification#response_object) for more details.", - "properties": { - "jsonrpc": { - "type": "string", - "required": true, - "enum": [ - "2.0" - ] - }, - "errors": { - "type": "object", - "properties": { - "code": { - "type": "number" - }, - "message": { - "type": "string" - }, - "data": { - "type": "string" - } - } - }, - "id": { - "type": "string" - } - } - } - } - } - }, - "401": { - "description": "This error code is returned when the authentication failed." - }, - "500": { - "description": "Something failed internally. Nothing can be done about it on the client side. Reporting the issue to the wallet software developers is encouraged." - } - } - } - }, - "/v2/methods": { - "get": { - "summary": "List the available methods on the JSON-RPC API", - "description": "The JSON-RPC API behind this HTTP API can have an arbitrary set of endpoints enabled.\n\nThis method allows an application to check for the existence of the JSON-RPC before calling the requests method.", - "tags": ["Wallet"], - "responses": { - "200": { - "description": "Successful listing", - "content": { - "application/json": { - "examples": { - "Example 1": { - "summary" : "Listing the registered methods", - "value" : { - "result": { - "registeredMethods": [ - "client.connect_wallet", - "client.disconnect_wallet", - "client.list_keys", - "client.send_transaction" - ] - } - } - } - }, - "schema": { - "type": "object", - "properties": { - "result": { - "type": "object", - "properties": { - "registeredMethods": { - "type": "array", - "required": true - } - } - } - } - } - } - } - }, - "400": { - "description": "Something went wrong", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "errors": { - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "data": { - "type": "string" - } - } - } - } - } - } - } - }, - "500": { - "description": "Something failed internally. Nothing can be done about it." - } - } - } - }, - "/v2/health": { - "get": { - "summary": "Checks if service is up and running", - "description": "If the service is running, this endpoint returns 200, otherwise the endpoint will be unreachable.", - "tags": ["Wallet"], - "responses": { - "200": { - "description": "The service is alive." - }, - "500": { - "description": "Something failed internally. Nothing can be done about it." - } - } - } - } - }, - "components": { - "schemas": { - "JsonResponse": { - "type": "object", - "description": "This payload is returned by HTTP handlers. It's the generic envelope for all HTTP responses that do not come from the JSON-RPC API.", - "properties": { - "result": { - "type": "object" - }, - "errors": { - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "data": { - "type": "string" - } - } - } - } - }, - "JsonRpcRequest": { - "type": "object", - "description": "This request payload is used to query the JSON-RPC API. See [the JSON-RPC request documentation](https://www.jsonrpc.org/specification#request_object) for more details.", - "properties": { - "jsonrpc": { - "required": true, - "type": "string", - "enum": [ - "2.0" - ] - }, - "method": { - "required": true, - "type": "string" - }, - "params": { - "type": "object" - }, - "id": { - "description": "According to the JSON-RPC v2 standard, if the ID is not specified, an empty response should be returned, whatever the state is (success or error). In the Vega implementation, this empty response corresponds to `204 No content`.", - "type": "string" - } - } - }, - "JsonRpcResponse": { - "type": "object", - "description": "This payload is returned by the JSON-RPC API sitting behind the `/v2/requests` endpoint. See [the JSON-RPC response documentation](https://www.jsonrpc.org/specification#response_object) for more details.", - "properties": { - "jsonrpc": { - "type": "string", - "required": true, - "enum": [ - "2.0" - ] - }, - "result": { - "type": "object" - }, - "errors": { - "type": "object", - "properties": { - "code": { - "type": "number" - }, - "message": { - "type": "string" - }, - "data": { - "type": "string" - } - } - }, - "id": { - "type": "string" - } - } - } - } - } -} diff --git a/specs/v0.74.0/blockexplorer.openapi.json b/specs/v0.74.0/blockexplorer.openapi.json new file mode 100644 index 000000000..babfb2425 --- /dev/null +++ b/specs/v0.74.0/blockexplorer.openapi.json @@ -0,0 +1 @@ +{"openapi":"3.0.0","info":{"title":"Vega block explorer APIs","version":"v0.74.0-preview.6"},"servers":[{"url":"https://be.testnet.vega.xyz/rest","description":"Block Explorer"}],"paths":{"/info":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1InfoResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"Get information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built","operationId":"BlockExplorer_Info","summary":"Info"}},"/transactions":{"get":{"parameters":[{"description":"Cursor to paginate the request. It can be used in conjunction with the `after` cursor.","in":"query","name":"before","required":false,"schema":{"type":"string"}},{"description":"Cursor to paginate the request. It can be used in conjunction with the `before` cursor.","in":"query","name":"after","required":false,"schema":{"type":"string"}},{"description":"Transaction command types filter, for listing transactions with specified command types.","explode":true,"in":"query","name":"cmdTypes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Transaction command types exclusion filter, for listing all the transactions except the ones with specified command types.","explode":true,"in":"query","name":"excludeCmdTypes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Party IDs filter, can be sender or receiver.","explode":true,"in":"query","name":"parties","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `after` cursor to paginate forwards. Paginating forwards means toward the most recent\ntransactions.\nIt cannot be used in conjunction with the `before` cursor.\nOn its own, this will return the `first` most recent transactions.","in":"query","name":"first","required":false,"schema":{"format":"int64","type":"integer"}},{"description":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `before` cursor to paginate backwards. Paginating forwards means toward the least recent\ntransactions.\nIt cannot be used in conjunction with the `after` cursor.\nOn its own, this will return the `last` oldest transactions.","in":"query","name":"last","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListTransactionsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"List transactions from the Vega blockchain from the newest to the oldest transactions.","operationId":"BlockExplorer_ListTransactions","summary":"List transactions"}},"/transactions/{hash}":{"get":{"parameters":[{"description":"Hash of the transaction","in":"path","name":"hash","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1GetTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["BlockExplorer"],"description":"Get a transaction from the Vega blockchain","operationId":"BlockExplorer_GetTransaction","summary":"Get transaction"}}},"components":{"schemas":{"ConditionOperator":{"default":"OPERATOR_UNSPECIFIED","description":"Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue.","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string"},"OracleDataSubmissionOracleSource":{"default":"ORACLE_SOURCE_UNSPECIFIED","description":"- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"},"OrderTimeInForce":{"default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"StopOrderExpiryStrategy":{"default":"EXPIRY_STRATEGY_UNSPECIFIED","description":" - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string"},"StopOrderSizeOverrideSetting":{"default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"title":"- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader","type":"string"},"StopOrderSizeOverrideValue":{"properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"UpdateMarginModeMode":{"default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"blockexplorerapiv1Transaction":{"properties":{"block":{"format":"uint64","title":"Height of the block the transaction was found in","type":"string"},"code":{"format":"int64","title":"Results code of the transaction. 0 indicates the transaction was successful","type":"integer"},"command":{"$ref":"#/components/schemas/v1InputData","title":"Actual command of the transaction"},"createdAt":{"description":"Timestamp when the transaction happened, using RFC3399 format.","type":"string"},"cursor":{"title":"Cursor for this transaction. This is used for paginating results","type":"string"},"error":{"title":"Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0","type":"string"},"hash":{"title":"Hash of the transaction","type":"string"},"index":{"format":"int64","title":"Index of the transaction in the block","type":"integer"},"pow":{"$ref":"#/components/schemas/v1ProofOfWork","title":"Proof of Work parameters of the transaction"},"signature":{"$ref":"#/components/schemas/v1Signature","title":"Signature generated by the submitter for the transaction"},"submitter":{"title":"Vega public key of the transaction's submitter","type":"string"},"type":{"title":"Type of transaction","type":"string"},"version":{"$ref":"#/components/schemas/v1TxVersion","title":"Version format of the transaction"}},"type":"object"},"commandsv1CancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object"},"commandsv1OneOffTransfer":{"description":"Details for a one-off transfer.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object"},"commandsv1RecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy","description":"Optional parameter defining how a transfer is dispatched."},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"commandsv1Transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Account type from which the funds of the party should be taken."},"oneOff":{"$ref":"#/components/schemas/commandsv1OneOffTransfer","description":"Details of a one-off transfer that is executed once at a specified time."},"recurring":{"$ref":"#/components/schemas/commandsv1RecurringTransfer","description":"Details of a transfer that is executed once every epoch until stopped."},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Type of the destination account."}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"googlerpcStatus":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"$ref":"#/components/schemas/protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object"},"protobufAny":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object"},"protobufNullValue":{"default":"NULL_VALUE","description":"`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value.","enum":["NULL_VALUE"],"type":"string"},"v1AnnounceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the node made using the ethereum wallet."},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the node made using the Vega wallet."}},"type":"object"},"v1ApplyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object"},"v1BatchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"$ref":"#/components/schemas/v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"$ref":"#/components/schemas/v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"$ref":"#/components/schemas/v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object"},"v1BatchProposalSubmission":{"description":"Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.","properties":{"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"$ref":"#/components/schemas/v1BatchProposalSubmissionTerms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment."}},"type":"object"},"v1BatchProposalSubmissionTerms":{"properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"$ref":"#/components/schemas/vegaBatchProposalTermsChange"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"},"v1ChainEvent":{"description":"A validator command sent automatically that provides information of events that have happened on foreign chains.","properties":{"builtin":{"$ref":"#/components/schemas/vegaBuiltinAssetEvent","description":"Built-in asset event."},"contractCall":{"$ref":"#/components/schemas/vegaEthContractCallEvent","description":"Ethereum contract call event."},"erc20":{"$ref":"#/components/schemas/vegaERC20Event","description":"Ethereum ERC20 event."},"erc20Multisig":{"$ref":"#/components/schemas/vegaERC20MultiSigEvent","description":"Ethereum ERC20 multisig event."},"nonce":{"description":"Arbitrary one-time integer used to prevent replay attacks.","format":"uint64","type":"string"},"stakingEvent":{"$ref":"#/components/schemas/vegaStakingEvent","description":"Ethereum Staking event."},"txId":{"description":"ID of the transaction on the foreign chain that caused the event.","type":"string"}},"type":"object"},"v1Condition":{"properties":{"operator":{"$ref":"#/components/schemas/ConditionOperator","description":"Type of comparison to make on the value."},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"v1CreateReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"$ref":"#/components/schemas/v1CreateReferralSetTeam","description":"Team details, if the referral set is to be considered a team."}},"type":"object"},"v1CreateReferralSetTeam":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object"},"v1DelegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object"},"v1ETHAddress":{"properties":{"address":{"type":"string"}},"type":"object"},"v1EthereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature signed by the new Ethereum key that can be verified to prove ownership."},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object"},"v1Filter":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"key":{"$ref":"#/components/schemas/v1PropertyKey","description":"Data source's data property key targeted by the filter."}},"type":"object"},"v1GetTransactionResponse":{"properties":{"transaction":{"$ref":"#/components/schemas/blockexplorerapiv1Transaction","title":"Transaction corresponding to the hash"}},"type":"object"},"v1IcebergOpts":{"properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"v1InfoResponse":{"properties":{"commitHash":{"title":"Commit hash from which the data node was built","type":"string"},"version":{"title":"Semver formatted version of the data node","type":"string"}},"type":"object"},"v1InputData":{"description":"Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message.","properties":{"announceNode":{"$ref":"#/components/schemas/v1AnnounceNode","description":"Command used by a node operator to announce its node as a pending validator."},"applyReferralCode":{"$ref":"#/components/schemas/v1ApplyReferralCode","description":"Command to apply a referral code."},"batchMarketInstructions":{"$ref":"#/components/schemas/v1BatchMarketInstructions","description":"Command to submit a batch of order instructions."},"batchProposalSubmission":{"$ref":"#/components/schemas/v1BatchProposalSubmission","description":"Command to submit a batch governance proposal."},"blockHeight":{"description":"Block height which has been used to calculate the transaction proof-of-work.","format":"uint64","type":"string"},"cancelTransfer":{"$ref":"#/components/schemas/commandsv1CancelTransfer","description":"Command to cancel a recurring transfer."},"chainEvent":{"$ref":"#/components/schemas/v1ChainEvent","description":"Validator command sent automatically to notify the Vega chain of an off-chain event."},"createReferralSet":{"$ref":"#/components/schemas/v1CreateReferralSet","description":"Command to create a referral set."},"delegateSubmission":{"$ref":"#/components/schemas/v1DelegateSubmission","description":"Command to delegate tokens to a validator."},"ethereumKeyRotateSubmission":{"$ref":"#/components/schemas/v1EthereumKeyRotateSubmission","description":"Validator command sent manually by a node operator to rotate their node's Ethereum keys."},"issueSignatures":{"$ref":"#/components/schemas/v1IssueSignatures","description":"Command to request signatures to amend the multisig-control contract."},"joinTeam":{"$ref":"#/components/schemas/v1JoinTeam","description":"Command to join a team."},"keyRotateSubmission":{"$ref":"#/components/schemas/v1KeyRotateSubmission","description":"Validator command sent manually by a node operator to rotate their node's Vega keys."},"liquidityProvisionAmendment":{"$ref":"#/components/schemas/v1LiquidityProvisionAmendment","description":"Command to amend a liquidity commitment."},"liquidityProvisionCancellation":{"$ref":"#/components/schemas/v1LiquidityProvisionCancellation","description":"Command to cancel a liquidity commitment."},"liquidityProvisionSubmission":{"$ref":"#/components/schemas/v1LiquidityProvisionSubmission","description":"Command to submit a liquidity commitment."},"nodeSignature":{"$ref":"#/components/schemas/v1NodeSignature","description":"Validator command sent automatically to provide signatures for the Ethereum bridge."},"nodeVote":{"$ref":"#/components/schemas/v1NodeVote","description":"Validator command sent automatically to vote on that validity of an external resource."},"nonce":{"description":"Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly.","format":"uint64","type":"string"},"oracleDataSubmission":{"$ref":"#/components/schemas/v1OracleDataSubmission","description":"Command to submit external oracle data."},"orderAmendment":{"$ref":"#/components/schemas/v1OrderAmendment","description":"Command to amend an order."},"orderCancellation":{"$ref":"#/components/schemas/v1OrderCancellation","description":"Command to cancel an order."},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission","description":"Command to submit an order."},"proposalSubmission":{"$ref":"#/components/schemas/v1ProposalSubmission","description":"Command to submit a governance proposal."},"protocolUpgradeProposal":{"$ref":"#/components/schemas/v1ProtocolUpgradeProposal","description":"Validator command sent manually to propose a protocol upgrade."},"stateVariableProposal":{"$ref":"#/components/schemas/v1StateVariableProposal","description":"Validator command sent automatically to reach consensus on floating point values."},"stopOrdersCancellation":{"$ref":"#/components/schemas/v1StopOrdersCancellation","description":"Command to cancel stop orders."},"stopOrdersSubmission":{"$ref":"#/components/schemas/v1StopOrdersSubmission","description":"Command to submit a pair of stop orders."},"transfer":{"$ref":"#/components/schemas/commandsv1Transfer","description":"Command to submit a transfer."},"undelegateSubmission":{"$ref":"#/components/schemas/v1UndelegateSubmission","description":"Command to remove tokens delegated to a validator."},"updateMarginMode":{"$ref":"#/components/schemas/v1UpdateMarginMode","description":"Command to update the margin mode of a party in a market."},"updatePartyProfile":{"$ref":"#/components/schemas/v1UpdatePartyProfile","description":"Command to update a party's profile."},"updateReferralSet":{"$ref":"#/components/schemas/v1UpdateReferralSet","description":"Command to update a referral set."},"validatorHeartbeat":{"$ref":"#/components/schemas/v1ValidatorHeartbeat","description":"Validator command sent automatically to signal regular participation in the network."},"voteSubmission":{"$ref":"#/components/schemas/v1VoteSubmission","description":"Command to submit a vote on a governance proposal."},"withdrawSubmission":{"$ref":"#/components/schemas/v1WithdrawSubmission","description":"Command to submit a withdrawal."}},"type":"object"},"v1InternalTimeTrigger":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object"},"v1IssueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"$ref":"#/components/schemas/v1NodeSignatureKind","description":"What kind of signatures to generate, namely for whether a signer is being added or removed."},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object"},"v1JoinTeam":{"description":"Command that allows the submitter to join a team or change teams if they are already a member of a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object"},"v1KeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object"},"v1LiquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object"},"v1LiquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object"},"v1LiquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object"},"v1ListTransactionsResponse":{"properties":{"transactions":{"items":{"$ref":"#/components/schemas/blockexplorerapiv1Transaction"},"title":"Transaction corresponding to the specific request and filters","type":"array"}},"type":"object"},"v1NodeSignature":{"description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"$ref":"#/components/schemas/v1NodeSignatureKind","description":"Kind of resource being signed."},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object"},"v1NodeSignatureKind":{"default":"NODE_SIGNATURE_KIND_UNSPECIFIED","description":"- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"v1NodeVote":{"description":"A validator command which is sent automatically by a node when it has verified a resource external to the network.","properties":{"reference":{"description":"Reference identifying the resource that has been verified.","type":"string"},"type":{"$ref":"#/components/schemas/v1NodeVoteType","description":"Type of external event that has been verified."}},"type":"object"},"v1NodeVoteType":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_STAKE_DEPOSITED","TYPE_STAKE_REMOVED","TYPE_FUNDS_DEPOSITED","TYPE_SIGNER_ADDED","TYPE_SIGNER_REMOVED","TYPE_BRIDGE_STOPPED","TYPE_BRIDGE_RESUMED","TYPE_ASSET_LISTED","TYPE_LIMITS_UPDATED","TYPE_STAKE_TOTAL_SUPPLY","TYPE_SIGNER_THRESHOLD_SET","TYPE_GOVERNANCE_VALIDATE_ASSET","TYPE_ETHEREUM_CONTRACT_CALL_RESULT"],"title":"- TYPE_UNSPECIFIED: Represents an unspecified or missing value from the input\n - TYPE_STAKE_DEPOSITED: Node vote for a new stake deposit\n - TYPE_STAKE_REMOVED: Node vote for a new stake removed event\n - TYPE_FUNDS_DEPOSITED: Node vote for a new collateral deposit\n - TYPE_SIGNER_ADDED: Node vote for a new signer added to the erc20 bridge\n - TYPE_SIGNER_REMOVED: Node vote for a signer removed from the erc20 bridge\n - TYPE_BRIDGE_STOPPED: Node vote for a bridge stopped event\n - TYPE_BRIDGE_RESUMED: Node vote for a bridge resumed event\n - TYPE_ASSET_LISTED: Node vote for a newly listed asset\n - TYPE_LIMITS_UPDATED: Node vote for an asset limits update\n - TYPE_STAKE_TOTAL_SUPPLY: Node vote to share the total supply of the staking token\n - TYPE_SIGNER_THRESHOLD_SET: Node vote to update the threshold of the signer set for the multisig contract\n - TYPE_GOVERNANCE_VALIDATE_ASSET: Node vote to validate a new assert governance proposal\n - TYPE_ETHEREUM_CONTRACT_CALL_RESULT: Node vote for an Ethereum contract call result","type":"string"},"v1OracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"$ref":"#/components/schemas/OracleDataSubmissionOracleSource","description":"Source from which the data is coming from."}},"title":"Command to submit new oracle data from third party providers","type":"object"},"v1OrderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"New pegged reference for the order."},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","description":"New time in force for the order."}},"type":"object"},"v1OrderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object"},"v1OrderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"$ref":"#/components/schemas/v1IcebergOpts","description":"Iceberg order details. If set, the order will exist on the order book in chunks."},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"$ref":"#/components/schemas/vegaPeggedOrder","description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times."},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"$ref":"#/components/schemas/vegaSide","description":"Which side of the order book the order is for, e.g. buy or sell."},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","description":"Time in force indicates how long an order will remain active before it is executed or expires.."},"type":{"$ref":"#/components/schemas/vegaOrderType","description":"Type of the order."}},"type":"object"},"v1ProofOfWork":{"description":"Components needed for the network to verify proof-of-work.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object"},"v1PropertyKey":{"description":"PropertyKey describes the property key contained in data source data.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"$ref":"#/components/schemas/v1PropertyKeyType","description":"Data type of the property."}},"type":"object"},"v1PropertyKeyType":{"default":"TYPE_UNSPECIFIED","description":"Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type.","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string"},"v1ProposalSubmission":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"$ref":"#/components/schemas/vegaProposalTerms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment."}},"type":"object"},"v1ProtocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object"},"v1PubKey":{"description":"PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated.","properties":{"key":{"type":"string"}},"type":"object"},"v1Signature":{"description":"Signature definition that allows the network to authenticate external data.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object"},"v1Signer":{"properties":{"ethAddress":{"$ref":"#/components/schemas/v1ETHAddress","description":"In case of an open oracle - Ethereum address will be submitted."},"pubKey":{"$ref":"#/components/schemas/v1PubKey","description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys."}},"type":"object"},"v1StateVariableProposal":{"description":"A validator command sent automatically to reach consensus on floating point values.","properties":{"proposal":{"$ref":"#/components/schemas/vegaStateValueProposal","description":"Details of the state variable being proposed."}},"type":"object"},"v1StopOrderSetup":{"description":"Price and expiry configuration for a stop order.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"$ref":"#/components/schemas/StopOrderExpiryStrategy","description":"Strategy to adopt if the expiry time is reached."},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission","description":"Order to be submitted once the trigger is breached."},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"$ref":"#/components/schemas/StopOrderSizeOverrideSetting","title":"Indicates if this order is linked to an order or position to derive the order size"},"sizeOverrideValue":{"$ref":"#/components/schemas/StopOrderSizeOverrideValue","title":"If this order is linked to a position, provide an optional scaling factor"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object"},"v1StopOrdersCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object"},"v1StopOrdersSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"$ref":"#/components/schemas/v1StopOrderSetup","description":"Stop order that will be triggered if the price falls below a given trigger price."},"risesAbove":{"$ref":"#/components/schemas/v1StopOrderSetup","description":"Stop order that will be triggered if the price rises above a given trigger price."}},"type":"object"},"v1TxVersion":{"default":"TX_VERSION_UNSPECIFIED","description":"Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks.","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string"},"v1UndelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"$ref":"#/components/schemas/v1UndelegateSubmissionMethod","description":"Method of delegation."},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object"},"v1UndelegateSubmissionMethod":{"default":"METHOD_UNSPECIFIED","description":" - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch.","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string"},"v1UpdateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"$ref":"#/components/schemas/UpdateMarginModeMode","description":"Margin mode to use."}},"type":"object"},"v1UpdatePartyProfile":{"description":"Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"}},"type":"object"},"v1UpdateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"$ref":"#/components/schemas/v1UpdateReferralSetTeam","description":"Team details, if the referral set is to be considered a team."}},"type":"object"},"v1UpdateReferralSetTeam":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object"},"v1ValidatorHeartbeat":{"description":"A validator command which is sent automatically at regular intervals by any validator participating in the network.\nIt is used to allow the network to know whether a validator is active, or if they have shut down.","properties":{"ethereumSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the validator made using their Ethereum wallet."},"message":{"description":"Message which has been signed.","type":"string"},"nodeId":{"description":"Node ID of the validator emitting the heartbeat.","type":"string"},"vegaSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the validator made using their Vega wallet."}},"type":"object"},"v1VoteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"$ref":"#/components/schemas/vegaVoteValue","description":"Actual value of the vote."}},"type":"object"},"v1WithdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"$ref":"#/components/schemas/vegaWithdrawExt","description":"Details specific to the foreign chain, such as the receiver address."}},"type":"object"},"vegaAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"vegaAssetDetails":{"properties":{"builtinAsset":{"$ref":"#/components/schemas/vegaBuiltinAsset","description":"Vega built-in asset."},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"$ref":"#/components/schemas/vegaERC20","description":"Ethereum ERC20 asset."},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"vegaAssetDetailsUpdate":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"$ref":"#/components/schemas/vegaERC20Update","description":"Ethereum ERC20 asset update."},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object"},"vegaBatchProposalTermsChange":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Proposal change to cancel a governance initiated transfe."},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance initiated transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."}},"title":"Terms change for a batch governance proposal","type":"object"},"vegaBenefitTier":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object"},"vegaBuiltinAsset":{"properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"vegaBuiltinAssetDeposit":{"properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Deposit for a Vega built-in asset","type":"object"},"vegaBuiltinAssetEvent":{"properties":{"deposit":{"$ref":"#/components/schemas/vegaBuiltinAssetDeposit","description":"Built-in asset deposit."},"withdrawal":{"$ref":"#/components/schemas/vegaBuiltinAssetWithdrawal","description":"Built-in asset withdrawal."}},"title":"Event related to a Vega built-in asset","type":"object"},"vegaBuiltinAssetWithdrawal":{"properties":{"amount":{"description":"The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"partyId":{"description":"Vega network party ID i.e. public key.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Withdrawal for a Vega built-in asset","type":"object"},"vegaCancelTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaCancelTransferConfiguration","title":"Configuration for cancellation of a governance-initiated transfer"}},"type":"object"},"vegaCancelTransferConfiguration":{"properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"},"vegaCompositePriceConfiguration":{"description":"Mark price configuration parameters.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"Which method is used for the calculation of the composite price for the market."},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"$ref":"#/components/schemas/vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"$ref":"#/components/schemas/vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object"},"vegaCompositePriceType":{"default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","description":" - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price.","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string"},"vegaDataSourceDefinition":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"$ref":"#/components/schemas/vegaDataSourceDefinitionExternal"},"internal":{"$ref":"#/components/schemas/vegaDataSourceDefinitionInternal"}},"type":"object"},"vegaDataSourceDefinitionExternal":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"$ref":"#/components/schemas/vegaEthCallSpec","description":"Contains the data specification that is received from Ethereum sources."},"oracle":{"$ref":"#/components/schemas/vegaDataSourceSpecConfiguration"}},"type":"object"},"vegaDataSourceDefinitionInternal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object"},"vegaDataSourceSpecConfiguration":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"$ref":"#/components/schemas/v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"$ref":"#/components/schemas/v1Signer"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTime":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTimeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"triggers":{"items":{"$ref":"#/components/schemas/v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object"},"vegaDataSourceSpecToFutureBinding":{"properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"vegaDataSourceSpecToPerpetualBinding":{"description":"Describes which properties of the data source data is to be\nused for settlement.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object"},"vegaDispatchMetric":{"default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"vegaDispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"$ref":"#/components/schemas/vegaDistributionStrategy","title":"Controls how the reward is distributed between qualifying parties"},"entityScope":{"$ref":"#/components/schemas/vegaEntityScope","description":"Mandatory enum that defines the entities within scope."},"individualScope":{"$ref":"#/components/schemas/vegaIndividualScope","description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded."},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"$ref":"#/components/schemas/vegaDispatchMetric","description":"Metric to apply."},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"$ref":"#/components/schemas/vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object"},"vegaDistributionStrategy":{"default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"vegaERC20":{"properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"vegaERC20AssetDelist":{"properties":{"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deny-listing for an ERC20 token","type":"object"},"vegaERC20AssetLimitsUpdated":{"properties":{"lifetimeLimits":{"description":"Updated lifetime limits.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"},"withdrawThreshold":{"description":"Updated withdrawal threshold.","type":"string"}},"type":"object"},"vegaERC20AssetList":{"properties":{"assetSource":{"description":"Ethereum address of the asset.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset allow-listing for an ERC20 token","type":"object"},"vegaERC20Deposit":{"properties":{"amount":{"description":"Amount to be deposited.","type":"string"},"sourceEthereumAddress":{"description":"Ethereum wallet that initiated the deposit.","type":"string"},"targetPartyId":{"description":"Vega party ID i.e. public key that is the target of the deposit.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset deposit for an ERC20 token","type":"object"},"vegaERC20Event":{"properties":{"assetDelist":{"$ref":"#/components/schemas/vegaERC20AssetDelist","description":"De-list an ERC20 asset."},"assetLimitsUpdated":{"$ref":"#/components/schemas/vegaERC20AssetLimitsUpdated","description":"Update an ERC20 asset."},"assetList":{"$ref":"#/components/schemas/vegaERC20AssetList","description":"List an ERC20 asset."},"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"bridgeResumed":{"description":"Bridge operations has been resumed.","type":"boolean"},"bridgeStopped":{"description":"Bridge operations has been stopped.","type":"boolean"},"deposit":{"$ref":"#/components/schemas/vegaERC20Deposit","description":"Deposit ERC20 asset."},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"withdrawal":{"$ref":"#/components/schemas/vegaERC20Withdrawal","description":"Withdraw ERC20 asset."}},"title":"Event related to an ERC20 token","type":"object"},"vegaERC20MultiSigEvent":{"properties":{"block":{"format":"uint64","title":"Block in which the transaction was added","type":"string"},"index":{"format":"uint64","title":"Index of the log in the transaction","type":"string"},"signerAdded":{"$ref":"#/components/schemas/vegaERC20SignerAdded","title":"Add a signer to the erc20 bridge"},"signerRemoved":{"$ref":"#/components/schemas/vegaERC20SignerRemoved","title":"Remove a signer from the erc20 bridge"},"thresholdSet":{"$ref":"#/components/schemas/vegaERC20ThresholdSet","title":"Threshold set"}},"title":"Event related to the ERC20 MultiSig","type":"object"},"vegaERC20SignerAdded":{"properties":{"blockTime":{"description":"Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this new signer","type":"string"}},"title":"New signer added to the ERC20 bridge","type":"object"},"vegaERC20SignerRemoved":{"properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"nonce":{"title":"Nonce created by the Vega network used for this old signer","type":"string"},"oldSigner":{"title":"Ethereum address of the old signer","type":"string"}},"title":"Signer removed from the ERC20 bridge","type":"object"},"vegaERC20ThresholdSet":{"properties":{"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"newThreshold":{"format":"int64","title":"New threshold value to set","type":"integer"},"nonce":{"title":"Nonce created by the Vega network","type":"string"}},"title":"Threshold has been updated on the multisig control","type":"object"},"vegaERC20Update":{"properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object"},"vegaERC20Withdrawal":{"properties":{"referenceNonce":{"description":"Reference nonce used for the transaction.","type":"string"},"targetEthereumAddress":{"description":"Target Ethereum wallet address.","type":"string"},"vegaAssetId":{"description":"Vega network internal asset ID.","type":"string"}},"title":"Asset withdrawal for an ERC20 token","type":"object"},"vegaEntityScope":{"default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"vegaErc20WithdrawExt":{"properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"},"vegaEthCallSpec":{"description":"Specifies a data source that derives its content from calling a read method\non an Ethereum contract.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"$ref":"#/components/schemas/v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"$ref":"#/components/schemas/vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaEthCallTrigger","description":"Conditions for determining when to call the contract method."}},"type":"object"},"vegaEthCallTrigger":{"description":"Determines when the contract method should be called.","properties":{"timeTrigger":{"$ref":"#/components/schemas/vegaEthTimeTrigger"}},"type":"object"},"vegaEthContractCallEvent":{"properties":{"blockHeight":{"description":"Ethereum block height.","format":"uint64","type":"string"},"blockTime":{"description":"Ethereum block time in Unix seconds.","format":"uint64","type":"string"},"error":{"description":"Error message if the call failed.","type":"string"},"result":{"description":"Result of contract call, packed according to the ABI stored in the associated data source spec.","format":"byte","type":"string"},"sourceChainId":{"description":"Source chain for this chain event.","format":"uint64","type":"string"},"specId":{"description":"ID of the data source spec that triggered this contract call.","type":"string"}},"title":"Result of calling an arbitrary Ethereum contract method","type":"object"},"vegaEthTimeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object"},"vegaFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The external data source spec describing the data source of trading termination."},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaGovernanceTransferType":{"default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"},"vegaIndividualScope":{"default":"INDIVIDUAL_SCOPE_UNSPECIFIED","description":" - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward.","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string"},"vegaInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaFutureProduct","description":"Future."},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaPerpetualProduct","description":"Perpetual."},"spot":{"$ref":"#/components/schemas/vegaSpotProduct","description":"Spot."}},"title":"Instrument configuration","type":"object"},"vegaKeyValueBundle":{"properties":{"key":{"type":"string"},"tolerance":{"type":"string"},"value":{"$ref":"#/components/schemas/vegaStateVarValue"}},"type":"object"},"vegaLiquidationStrategy":{"description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"vegaLiquidityFeeSettings":{"description":"Market settings that describe how the liquidity fee is calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"$ref":"#/components/schemas/vegaLiquidityFeeSettingsMethod","description":"Method used to calculate the market's liquidity fee."}},"type":"object"},"vegaLiquidityFeeSettingsMethod":{"default":"METHOD_UNSPECIFIED","description":" - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee.","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string"},"vegaLiquidityMonitoringParameters":{"properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"vegaLiquiditySLAParameters":{"properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"vegaLogNormalModelParams":{"properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"vegaLogNormalRiskModel":{"properties":{"params":{"$ref":"#/components/schemas/vegaLogNormalModelParams","description":"Risk model parameters for log normal."},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"vegaMarketStateUpdateType":{"default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"title":"- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance","type":"string"},"vegaMatrixValue":{"properties":{"value":{"items":{"$ref":"#/components/schemas/vegaVectorValue"},"type":"array"}},"type":"object"},"vegaMetadata":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object"},"vegaNetworkParameter":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"},"vegaNewAsset":{"properties":{"changes":{"$ref":"#/components/schemas/vegaAssetDetails","description":"Configuration of the new asset."}},"title":"New asset on Vega","type":"object"},"vegaNewFreeform":{"description":"Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed.","type":"object"},"vegaNewMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewMarketConfiguration","description":"Configuration of the new market."}},"title":"New market on Vega","type":"object"},"vegaNewMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","description":"Liquidation strategy for this market."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"successor":{"$ref":"#/components/schemas/vegaSuccessorConfiguration","description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set."}},"title":"Configuration for a new futures market on Vega","type":"object"},"vegaNewSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewSpotMarketConfiguration","description":"Configuration of the new spot market."}},"title":"New spot market on Vega","type":"object"},"vegaNewSpotMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New spot market instrument configuration."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration for a new spot market on Vega","type":"object"},"vegaNewTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewTransferConfiguration","description":"Configuration for a new transfer."}},"title":"New governance transfer","type":"object"},"vegaNewTransferConfiguration":{"properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"$ref":"#/components/schemas/vegaAccountType","title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"$ref":"#/components/schemas/vegaOneOffTransfer"},"recurring":{"$ref":"#/components/schemas/vegaRecurringTransfer"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"$ref":"#/components/schemas/vegaAccountType","title":"Source account type, such as network treasury, market insurance pool"},"transferType":{"$ref":"#/components/schemas/vegaGovernanceTransferType","title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount"}},"type":"object"},"vegaNormaliser":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object"},"vegaOneOffTransfer":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"vegaOrderType":{"default":"TYPE_UNSPECIFIED","description":"- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"vegaPeggedOrder":{"properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"Price point the order is linked to."}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"vegaPeggedReference":{"default":"PEGGED_REFERENCE_UNSPECIFIED","description":"- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"vegaPerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaPriceMonitoringParameters":{"properties":{"triggers":{"items":{"$ref":"#/components/schemas/vegaPriceMonitoringTrigger"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"vegaPriceMonitoringTrigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"vegaProposalRationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object"},"vegaProposalTerms":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Cancel a governance transfer."},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"$ref":"#/components/schemas/vegaNewAsset","description":"Proposal change for creating new assets on Vega."},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market on Vega."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market on Vega."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market on Vega."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market on Vega."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"vegaRank":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object"},"vegaRecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy","description":"Optional parameter defining how a transfer is dispatched."},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"vegaReferralProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"$ref":"#/components/schemas/vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaScalarValue":{"properties":{"value":{"type":"string"}},"type":"object"},"vegaSide":{"default":"SIDE_UNSPECIFIED","description":"- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"vegaSimpleModelParams":{"properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"vegaSpecBindingForCompositePrice":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object"},"vegaSpotProduct":{"properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"},"vegaStakeDeposited":{"properties":{"amount":{"description":"Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available.","format":"int64","type":"string"},"ethereumAddress":{"title":"Ethereum Address of the user depositing stake (hex encode with 0x prefix)","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party receiving the stake deposit.","type":"string"}},"type":"object"},"vegaStakeRemoved":{"properties":{"amount":{"description":"Amount removed as a base 10 unsigned integer scaled to the asset's decimal places.","type":"string"},"blockTime":{"description":"The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address of the user removing stake. This should be hex encoded with 0x prefix.","type":"string"},"vegaPublicKey":{"description":"Hex encoded public key of the party from which to remove stake.","type":"string"}},"type":"object"},"vegaStakeTotalSupply":{"properties":{"tokenAddress":{"title":"Address of the staking asset","type":"string"},"totalSupply":{"description":"Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places.","type":"string"}},"type":"object"},"vegaStakingEvent":{"description":"Event related to staking on the Vega network.","properties":{"block":{"description":"Block in which the transaction was added.","format":"uint64","type":"string"},"index":{"description":"Index of the log in the transaction.","format":"uint64","type":"string"},"stakeDeposited":{"$ref":"#/components/schemas/vegaStakeDeposited"},"stakeRemoved":{"$ref":"#/components/schemas/vegaStakeRemoved"},"totalSupply":{"$ref":"#/components/schemas/vegaStakeTotalSupply"}},"type":"object"},"vegaStakingTier":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object"},"vegaStateValueProposal":{"properties":{"eventId":{"description":"Event ID.","type":"string"},"kvb":{"description":"Key value tolerance triplets.","items":{"$ref":"#/components/schemas/vegaKeyValueBundle"},"type":"array"},"stateVarId":{"description":"State variable ID.","type":"string"}},"type":"object"},"vegaStateVarValue":{"properties":{"matrixVal":{"$ref":"#/components/schemas/vegaMatrixValue"},"scalarVal":{"$ref":"#/components/schemas/vegaScalarValue"},"vectorVal":{"$ref":"#/components/schemas/vegaVectorValue"}},"type":"object"},"vegaSuccessorConfiguration":{"description":"Configuration required to turn a new market proposal in to a successor market proposal.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object"},"vegaTargetStakeParameters":{"properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"vegaUpdateAsset":{"properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"$ref":"#/components/schemas/vegaAssetDetailsUpdate","description":"Changes to apply on an existing asset."}},"title":"Update an existing asset on Vega","type":"object"},"vegaUpdateFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"The binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data of settlement data."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data source for trading termination."},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaUpdateInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaUpdateFutureProduct","description":"Future."},"name":{"title":"Instrument name","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaUpdatePerpetualProduct","description":"Perpetual."}},"title":"Instrument configuration","type":"object"},"vegaUpdateMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketConfiguration","description":"Updated configuration of the futures market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"vegaUpdateMarketConfiguration":{"properties":{"instrument":{"$ref":"#/components/schemas/vegaUpdateInstrumentConfiguration","description":"Updated futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","title":"Liquidation strategy parameters"},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."}},"title":"Configuration to update a futures market on Vega","type":"object"},"vegaUpdateMarketState":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketStateConfiguration","title":"Configuration for governance-initiated change of a market's state"}},"type":"object"},"vegaUpdateMarketStateConfiguration":{"properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"$ref":"#/components/schemas/vegaMarketStateUpdateType","title":"Type of the market update"}},"type":"object"},"vegaUpdateNetworkParameter":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNetworkParameter","description":"The network parameter to update."}},"title":"Update network configuration on Vega","type":"object"},"vegaUpdatePerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Configuration for the index price used in funding payment calculation."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaUpdateReferralProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaReferralProgramChanges","description":"Configuration for change to update a referral program."}},"type":"object"},"vegaUpdateSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateSpotMarketConfiguration","description":"Updated configuration of the spot market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"vegaUpdateSpotMarketConfiguration":{"properties":{"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration to update a spot market on Vega","type":"object"},"vegaUpdateVolumeDiscountProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaVolumeDiscountProgramChanges","title":"Configuration for a change to update a volume discount program"}},"type":"object"},"vegaVectorValue":{"properties":{"value":{"items":{"type":"string"},"type":"array"}},"type":"object"},"vegaVolumeBenefitTier":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object"},"vegaVolumeDiscountProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaVoteValue":{"default":"VALUE_UNSPECIFIED","description":"- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"},"vegaWithdrawExt":{"properties":{"erc20":{"$ref":"#/components/schemas/vegaErc20WithdrawExt","description":"ERC20 withdrawal details."}},"title":"Withdrawal external details","type":"object"}}},"tags":[{"name":"Block Explorer"}]} \ No newline at end of file diff --git a/specs/v0.74.0-preview.6/blockexplorer/swagger/blockexplorer/api/v1/blockexplorer.swagger.json b/specs/v0.74.0/blockexplorer.swagger.json similarity index 99% rename from specs/v0.74.0-preview.6/blockexplorer/swagger/blockexplorer/api/v1/blockexplorer.swagger.json rename to specs/v0.74.0/blockexplorer.swagger.json index 71b2193ab..5ec98ede9 100644 --- a/specs/v0.74.0-preview.6/blockexplorer/swagger/blockexplorer/api/v1/blockexplorer.swagger.json +++ b/specs/v0.74.0/blockexplorer.swagger.json @@ -6,12 +6,12 @@ }, "tags": [ { - "name": "BlockExplorerService" + "name": "Block Explorer" } ], - "host": "lb.testnet.vega.xyz", + "host": "api.n10.testnet.vega.xyz", "schemes": [ - "http", + "https" ], "consumes": [ @@ -25,7 +25,7 @@ "get": { "summary": "Info", "description": "Get information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built", - "operationId": "BlockExplorerService_Info", + "operationId": "BlockExplorer_Info", "responses": { "200": { "description": "A successful response.", @@ -41,7 +41,7 @@ } }, "tags": [ - "BlockExplorerService" + "BlockExplorer" ] } }, @@ -49,7 +49,7 @@ "get": { "summary": "List transactions", "description": "List transactions from the Vega blockchain from the newest to the oldest transactions.", - "operationId": "BlockExplorerService_ListTransactions", + "operationId": "BlockExplorer_ListTransactions", "responses": { "200": { "description": "A successful response.", @@ -130,7 +130,7 @@ } ], "tags": [ - "BlockExplorerService" + "BlockExplorer" ] } }, @@ -138,7 +138,7 @@ "get": { "summary": "Get transaction", "description": "Get a transaction from the Vega blockchain", - "operationId": "BlockExplorerService_GetTransaction", + "operationId": "BlockExplorer_GetTransaction", "responses": { "200": { "description": "A successful response.", @@ -163,7 +163,7 @@ } ], "tags": [ - "BlockExplorerService" + "BlockExplorer" ] } } diff --git a/specs/v0.74.0/core.openapi.json b/specs/v0.74.0/core.openapi.json new file mode 100644 index 000000000..902214f27 --- /dev/null +++ b/specs/v0.74.0/core.openapi.json @@ -0,0 +1 @@ +{"openapi":"3.0.0","info":{"title":"Vega core APIs","version":"v0.74.0-preview.6"},"servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"paths":{"/blockchain/height":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1LastBlockHeightResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get the height of the last tendermint block","operationId":"CoreService_LastBlockHeight","summary":"Blockchain height"}},"/statistics":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1StatisticsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get statistics on Vega","operationId":"CoreService_Statistics","summary":"Statistics"}},"/statistics/spam/{partyId}":{"get":{"parameters":[{"description":"Party ID whose statistics are requested","in":"path","name":"partyId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1GetSpamStatisticsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get the spam statistics for a given party.","operationId":"CoreService_GetSpamStatistics","summary":"Get Spam statistics"}},"/stream/event/bus":{"get":{"parameters":[{"description":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","explode":true,"in":"query","name":"type","required":false,"schema":{"items":{"enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"type":"array"}},{"description":"Market ID to filter events for, optional field. If omitted, no markets will be filtered out.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter events for, optional field. If omitted, no parties will be filtered out.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Batch size, optional field -\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","in":"query","name":"batchSize","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v1ObserveEventBusResponse"}},"title":"Stream result of v1ObserveEventBusResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Subscribe to a stream of events from the core","operationId":"CoreService_ObserveEventBus","summary":"Events subscription"}},"/time":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1GetVegaTimeResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Get current Vega time","operationId":"CoreService_GetVegaTime","summary":"Vega time"}},"/transaction":{"post":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmitTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Submit a signed transaction to the network containing a command to be executed such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","operationId":"CoreService_SubmitTransaction","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmitTransactionRequest"}}},"required":true},"summary":"Submit transaction"}},"/transaction/check":{"post":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1CheckTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Send a signed transaction containing a command to the network to be checked, but not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","operationId":"CoreService_CheckTransaction","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1CheckTransactionRequest"}}},"required":true},"summary":"Check transaction"}},"/transaction/raw":{"post":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmitRawTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Submit a pre-serialised signed transaction containing a command to the network to be executed, such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","operationId":"CoreService_SubmitRawTransaction","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmitRawTransactionRequest"}}},"required":true},"summary":"Submit raw transaction"}},"/transaction/raw/check":{"post":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1CheckRawTransactionResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreService"],"description":"Send a pre-serialised transaction containing a command to the network to be checked, but then not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","operationId":"CoreService_CheckRawTransaction","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1CheckRawTransactionRequest"}}},"required":true},"summary":"Check raw transaction"}}},"components":{"schemas":{"ConditionOperator":{"default":"OPERATOR_UNSPECIFIED","description":"Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue.","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string"},"FundingPeriodDataPointSource":{"default":"SOURCE_UNSPECIFIED","description":" - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market.","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string"},"MarketTradingMode":{"default":"TRADING_MODE_UNSPECIFIED","description":"- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"OracleDataSubmissionOracleSource":{"default":"ORACLE_SOURCE_UNSPECIFIED","description":"- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"},"OrderTimeInForce":{"default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"StopOrderExpiryStrategy":{"default":"EXPIRY_STRATEGY_UNSPECIFIED","description":" - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string"},"StopOrderRejectionReason":{"default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION","REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION","REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES"],"title":"- REJECTION_REASON_UNSPECIFIED: Never valid\n - REJECTION_REASON_TRADING_NOT_ALLOWED: Trading is not allowed yet\n - REJECTION_REASON_EXPIRY_IN_THE_PAST: Expiry of the stop order is in the past\n - REJECTION_REASON_MUST_BE_REDUCE_ONLY: Stop orders submission must be reduce only\n - REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED: Party has reached the maximum stop orders allowed for this market\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION: Stop orders are not allowed if there is no open position\n - REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION: This stop order does not close the position\n - REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID: The percentage value for the linked stop order is invalid\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION: Stop orders are not allowed during the opening auction\n - REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES: Stop OCO orders cannot have the same expiry timestamp","type":"string"},"StopOrderSizeOverrideSetting":{"default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"title":"- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader","type":"string"},"StopOrderSizeOverrideValue":{"properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"StopOrderTriggerDirection":{"default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"TransactionResultFailureDetails":{"properties":{"error":{"title":"Error message explaining the reason for the transaction failing processing","type":"string"}},"type":"object"},"TransactionResultSuccessDetails":{"type":"object"},"UpdateMarginModeMode":{"default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"commandsv1CancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object"},"googlerpcStatus":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"$ref":"#/components/schemas/protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object"},"protobufAny":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object"},"protobufNullValue":{"default":"NULL_VALUE","description":"`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value.","enum":["NULL_VALUE"],"type":"string"},"v1AnnounceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the node made using the ethereum wallet."},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the node made using the Vega wallet."}},"type":"object"},"v1ApplyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object"},"v1AuctionEvent":{"properties":{"end":{"format":"int64","title":"Timestamp containing the end time for an auction","type":"string"},"extensionTrigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","title":"If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction"},"leave":{"title":"True if the event indicates leaving auction mode and False otherwise","type":"boolean"},"marketId":{"title":"Market ID for the event","type":"string"},"openingAuction":{"title":"True if the event indicates an auction opening and False otherwise","type":"boolean"},"start":{"format":"int64","title":"Timestamp containing the start time for an auction","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","title":"Reason this market is/was in auction"}},"title":"Auction event indicating a change in auction state, for example starting or ending an auction","type":"object"},"v1BatchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"$ref":"#/components/schemas/v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"$ref":"#/components/schemas/v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"$ref":"#/components/schemas/v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object"},"v1BatchProposalSubmission":{"description":"Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.","properties":{"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"$ref":"#/components/schemas/v1BatchProposalSubmissionTerms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment."}},"type":"object"},"v1BatchProposalSubmissionTerms":{"properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"$ref":"#/components/schemas/vegaBatchProposalTermsChange"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"},"v1BeginBlock":{"properties":{"hash":{"type":"string"},"height":{"format":"uint64","type":"string"},"timestamp":{"format":"int64","type":"string"}},"title":"BeginBlock","type":"object"},"v1BusEvent":{"properties":{"account":{"$ref":"#/components/schemas/vegaAccount","title":"Account events"},"asset":{"$ref":"#/components/schemas/vegaAsset","title":"Asset events"},"auction":{"$ref":"#/components/schemas/v1AuctionEvent","title":"Auction events"},"beginBlock":{"$ref":"#/components/schemas/v1BeginBlock","title":"Core is starting to process a new block"},"block":{"title":"The batch or block of transactions that the events relate to","type":"string"},"chainId":{"type":"string"},"checkpoint":{"$ref":"#/components/schemas/v1CheckpointEvent","title":"Checkpoint was created"},"coreSnapshotEvent":{"$ref":"#/components/schemas/v1CoreSnapshotData","title":"Core snapshot has been taken at the end of the block"},"delegationBalance":{"$ref":"#/components/schemas/v1DelegationBalanceEvent","title":"Delegation balance events"},"deposit":{"$ref":"#/components/schemas/vegaDeposit","title":"Deposit events"},"distressedOrders":{"$ref":"#/components/schemas/v1DistressedOrders","title":"Parties that had their orders closed because they were distressed"},"distressedPositions":{"$ref":"#/components/schemas/v1DistressedPositions","title":"Open positions on the market that are/were distressed"},"endBlock":{"$ref":"#/components/schemas/v1EndBlock","title":"Core finished processing a block"},"epochEvent":{"$ref":"#/components/schemas/v1EpochEvent","title":"Epoch update events"},"erc20MultisigSetThresholdEvent":{"$ref":"#/components/schemas/v1ERC20MultiSigThresholdSetEvent","title":"ERC20 multi sig set threshold event"},"erc20MultisigSignerAdded":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerAdded","title":"ERC20 multi sig signer added"},"erc20MultisigSignerEvent":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerEvent","title":"ERC20 multi sig signer event"},"erc20MultisigSignerRemoved":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerRemoved","title":"ERC20 multi sig signer removed"},"ethereumKeyRotation":{"$ref":"#/components/schemas/v1EthereumKeyRotation","title":"Ethereum key rotation took place"},"expiredOrders":{"$ref":"#/components/schemas/v1ExpiredOrders","title":"Orders that expired for a given market"},"feesStats":{"$ref":"#/components/schemas/v1FeesStats","description":"Event notifying of an update the fees stats for a market."},"fundingPayments":{"$ref":"#/components/schemas/v1FundingPayments","description":"Event notifying of funding payments at the end of a funding period."},"fundingPeriod":{"$ref":"#/components/schemas/v1FundingPeriod","description":"Start or end of a funding period."},"fundingPeriodDataPoint":{"$ref":"#/components/schemas/v1FundingPeriodDataPoint","description":"Data point within a funding period."},"id":{"title":"Unique event ID for the message","type":"string"},"keyRotation":{"$ref":"#/components/schemas/v1KeyRotation","title":"Key rotation took place"},"ledgerMovements":{"$ref":"#/components/schemas/v1LedgerMovements","title":"Transfer responses update events"},"liquidityProvision":{"$ref":"#/components/schemas/vegaLiquidityProvision","title":"LiquidityProvision events"},"lossSocialization":{"$ref":"#/components/schemas/v1LossSocialization","title":"Loss socialization events"},"marginLevels":{"$ref":"#/components/schemas/vegaMarginLevels","title":"Margin level update events"},"market":{"$ref":"#/components/schemas/v1MarketEvent","title":"Market tick events"},"marketCreated":{"$ref":"#/components/schemas/vegaMarket","title":"Market created events"},"marketData":{"$ref":"#/components/schemas/vegaMarketData","title":"Market data events"},"marketTick":{"$ref":"#/components/schemas/v1MarketTick","title":"Market tick events"},"marketUpdated":{"$ref":"#/components/schemas/vegaMarket","title":"Market created events"},"networkLimits":{"$ref":"#/components/schemas/vegaNetworkLimits","title":"Network limits events"},"networkParameter":{"$ref":"#/components/schemas/vegaNetworkParameter","title":"Network parameter events"},"nodeSignature":{"$ref":"#/components/schemas/v1NodeSignature","title":"Node signature events"},"oracleData":{"$ref":"#/components/schemas/vegaOracleData","title":"OracleData events"},"oracleSpec":{"$ref":"#/components/schemas/vegaOracleSpec","title":"OracleSpec events"},"order":{"$ref":"#/components/schemas/vegaOrder","title":"Order events"},"paidLiquidityFeesStats":{"$ref":"#/components/schemas/v1PaidLiquidityFeesStats","description":"Event notifying of an update to the liqudity fees stats for a market."},"party":{"$ref":"#/components/schemas/vegaParty","title":"Party events"},"partyActivityStreak":{"$ref":"#/components/schemas/v1PartyActivityStreak","title":"Event notifying of an update to a party's activity streak"},"partyMarginModeUpdated":{"$ref":"#/components/schemas/v1PartyMarginModeUpdated","description":"Event notifying of a party's margin mode update on a market."},"partyProfileUpdated":{"$ref":"#/components/schemas/v1PartyProfileUpdated","description":"Event notifying of a party's profile update."},"positionResolution":{"$ref":"#/components/schemas/v1PositionResolution","title":"Position resolution events"},"positionStateEvent":{"$ref":"#/components/schemas/v1PositionStateEvent","title":"Position status for a party in a market"},"proposal":{"$ref":"#/components/schemas/vegaProposal","title":"Proposal events for governance"},"protocolUpgradeDataNodeReady":{"$ref":"#/components/schemas/v1ProtocolUpgradeDataNodeReady","title":"Core snapshot has been taken at the end of the block"},"protocolUpgradeEvent":{"$ref":"#/components/schemas/v1ProtocolUpgradeEvent","title":"Protocol upgrade proposal updates"},"protocolUpgradeStarted":{"$ref":"#/components/schemas/v1ProtocolUpgradeStarted","title":"Core is starting a protocol upgrade"},"rankingEvent":{"$ref":"#/components/schemas/v1ValidatorRankingEvent","title":"Ranking event"},"refereeJoinedReferralSet":{"$ref":"#/components/schemas/v1RefereeJoinedReferralSet","description":"Event notifying a referee has joined a referral set."},"refereeJoinedTeam":{"$ref":"#/components/schemas/v1RefereeJoinedTeam","description":"Event notifying that a referee joined a team."},"refereeSwitchedTeam":{"$ref":"#/components/schemas/v1RefereeSwitchedTeam","description":"Event notifying that a referee switched teams."},"referralProgramEnded":{"$ref":"#/components/schemas/v1ReferralProgramEnded","description":"Event notifying that a referral program has ended."},"referralProgramStarted":{"$ref":"#/components/schemas/v1ReferralProgramStarted","description":"Event notifying that a referral program has started."},"referralProgramUpdated":{"$ref":"#/components/schemas/v1ReferralProgramUpdated","description":"Event notifying that a referral program has been updated."},"referralSetCreated":{"$ref":"#/components/schemas/v1ReferralSetCreated","description":"Event notifying a referral set has been created."},"referralSetStatsUpdated":{"$ref":"#/components/schemas/v1ReferralSetStatsUpdated","description":"Event notifying of an update to a referral set's statistics."},"rewardPayout":{"$ref":"#/components/schemas/v1RewardPayoutEvent","title":"Reward payout event"},"riskFactor":{"$ref":"#/components/schemas/vegaRiskFactor","title":"Risk factor events"},"settleDistressed":{"$ref":"#/components/schemas/v1SettleDistressed","title":"Position distressed events"},"settleMarket":{"$ref":"#/components/schemas/v1SettleMarket","title":"Settle market event for data-node to update positions for settled markets"},"settlePosition":{"$ref":"#/components/schemas/v1SettlePosition","title":"Position settlement events"},"stakeLinking":{"$ref":"#/components/schemas/v1StakeLinking","title":"Staking event"},"stateVar":{"$ref":"#/components/schemas/v1StateVar","title":"State variable consensus state transition update"},"stopOrder":{"$ref":"#/components/schemas/v1StopOrderEvent","title":"A stop order event"},"teamCreated":{"$ref":"#/components/schemas/v1TeamCreated","title":"Event notifying of the creation of a team.m"},"teamUpdated":{"$ref":"#/components/schemas/v1TeamUpdated","description":"Event notifying of an update to a team."},"timeUpdate":{"$ref":"#/components/schemas/v1TimeUpdate","title":"Time update events"},"trade":{"$ref":"#/components/schemas/vegaTrade","title":"Trade events"},"transactionResult":{"$ref":"#/components/schemas/v1TransactionResult","title":"Result of a transaction processed by the network"},"transfer":{"$ref":"#/components/schemas/vegaeventsv1Transfer","title":"Transfer event"},"transferFees":{"$ref":"#/components/schemas/v1TransferFees","description":"Event notifying of fees related to a transfer being paid."},"transferFeesDiscount":{"$ref":"#/components/schemas/v1TransferFeesDiscount","description":"Event notifying of a party's available discounts for transfer fees, per asset."},"txErrEvent":{"$ref":"#/components/schemas/v1TxErrorEvent","title":"Transaction error events, not included in the ALL event type"},"txHash":{"type":"string"},"type":{"$ref":"#/components/schemas/v1BusEventType","title":"The type of bus event. Must be one of the list below:"},"validatorScore":{"$ref":"#/components/schemas/v1ValidatorScoreEvent","title":"Validator score calculated"},"validatorUpdate":{"$ref":"#/components/schemas/v1ValidatorUpdate","title":"Validator update events"},"version":{"format":"int64","title":"Version of bus event","type":"integer"},"vestingBalancesSummary":{"$ref":"#/components/schemas/v1VestingBalancesSummary","description":"Event notifying of an update to the vesting and locked balances."},"vestingStatsUpdated":{"$ref":"#/components/schemas/v1VestingStatsUpdated","description":"Event notifying of an update to the vesting statistics."},"volumeDiscountProgramEnded":{"$ref":"#/components/schemas/v1VolumeDiscountProgramEnded","description":"Event notifying that a volume discount program has ended."},"volumeDiscountProgramStarted":{"$ref":"#/components/schemas/v1VolumeDiscountProgramStarted","description":"Event notifying that a volume discount program has started."},"volumeDiscountProgramUpdated":{"$ref":"#/components/schemas/v1VolumeDiscountProgramUpdated","description":"Event notifying that a volume discount program has been updated."},"volumeDiscountStatsUpdated":{"$ref":"#/components/schemas/v1VolumeDiscountStatsUpdated","description":"Event notifying of an update to the volume discount statistics."},"vote":{"$ref":"#/components/schemas/vegaVote","title":"Vote events for governance"},"withdrawal":{"$ref":"#/components/schemas/vegaWithdrawal","title":"Withdrawal events"}},"title":"Bus event is a container for event bus events emitted by Vega","type":"object"},"v1BusEventType":{"default":"BUS_EVENT_TYPE_UNSPECIFIED","description":"- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"title":"Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items","type":"string"},"v1CheckRawTransactionRequest":{"properties":{"tx":{"format":"byte","required":["tx"],"title":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that would be submitted to the Vega blockchain","type":"string"}},"required":["tx"],"title":"Request for checking a version agnostic transaction on Vega","type":"object"},"v1CheckRawTransactionResponse":{"properties":{"info":{"title":"Unused","type":"string"},"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully checked.","type":"string"},"gasUsed":{"description":"Unused.","format":"int64","type":"string"},"gasWanted":{"description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction passed the submission checks.","type":"boolean"}},"title":"Response for checking a version agnostic transaction on Vega","type":"object"},"v1CheckTransactionRequest":{"properties":{"tx":{"$ref":"#/components/schemas/v1Transaction","description":"Transaction containing a command to be checked on the network, and not added to the chain's mempool."}},"title":"Request for checking a transaction v2 on Vega","type":"object"},"v1CheckTransactionResponse":{"properties":{"info":{"description":"Unused.","type":"string"},"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully checked.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"gasUsed":{"description":"Unused.","format":"int64","type":"string"},"gasWanted":{"description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction passed the submission checks.","type":"boolean"}},"type":"object"},"v1CheckpointEvent":{"properties":{"blockHash":{"type":"string"},"blockHeight":{"format":"uint64","type":"string"},"hash":{"type":"string"}},"type":"object"},"v1Condition":{"properties":{"operator":{"$ref":"#/components/schemas/ConditionOperator","description":"Type of comparison to make on the value."},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"v1CoreSnapshotData":{"description":"CoreSnapshotData represents the core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object"},"v1CreateReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"$ref":"#/components/schemas/v1CreateReferralSetTeam","description":"Team details, if the referral set is to be considered a team."}},"type":"object"},"v1CreateReferralSetTeam":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object"},"v1Data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"$ref":"#/components/schemas/v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"$ref":"#/components/schemas/v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"$ref":"#/components/schemas/v1Signer"},"type":"array"}},"type":"object"},"v1DelegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object"},"v1DelegationBalanceEvent":{"properties":{"amount":{"type":"string"},"epochSeq":{"type":"string"},"nodeId":{"type":"string"},"party":{"type":"string"}},"title":"DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect","type":"object"},"v1DistressedOrders":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"parties":{"items":{"type":"string"},"title":"Slice of Party IDs i.e. each party's public key for the event","type":"array"}},"title":"Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders","type":"object"},"v1DistressedPositions":{"description":"Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.","properties":{"distressedParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, that are distressed but still have open volume","type":"array"},"marketId":{"title":"Market ID for the event","type":"string"},"safeParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position","type":"array"}},"type":"object"},"v1ERC20MultiSigSignerAdded":{"properties":{"epochSeq":{"title":"Epoch that the node was added for","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"signatureId":{"title":"ID of the signature bundle","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node to be added","type":"string"}},"type":"object"},"v1ERC20MultiSigSignerEvent":{"properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"nonce":{"type":"string"},"signer":{"type":"string"},"txHash":{"type":"string"},"type":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerEventType"}},"type":"object"},"v1ERC20MultiSigSignerEventType":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ADDED","TYPE_REMOVED"],"type":"string"},"v1ERC20MultiSigSignerRemoved":{"properties":{"epochSeq":{"title":"Epoch that the node was removed for","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"oldSigner":{"title":"Ethereum address of the signer to be removed","type":"string"},"signatureSubmitters":{"items":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerRemovedSubmitter"},"title":"List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set","type":"array"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node which is to be removed","type":"string"}},"type":"object"},"v1ERC20MultiSigSignerRemovedSubmitter":{"properties":{"signatureId":{"description":"Signature ID of the signer removed.","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"}},"type":"object"},"v1ERC20MultiSigThresholdSetEvent":{"properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"newThreshold":{"format":"int64","type":"integer"},"nonce":{"type":"string"},"txHash":{"type":"string"}},"type":"object"},"v1ETHAddress":{"properties":{"address":{"type":"string"}},"type":"object"},"v1EndBlock":{"properties":{"height":{"format":"uint64","type":"string"}},"title":"EndBlock","type":"object"},"v1EpochEvent":{"properties":{"action":{"$ref":"#/components/schemas/vegaEpochAction","title":"Action tells us what action is taking place"},"endTime":{"format":"int64","title":"Vega time at which this epoch actually ended","type":"string"},"expireTime":{"format":"int64","title":"Vega time at which this epoch should end","type":"string"},"seq":{"format":"uint64","title":"Sequence number that increases by one each epoch","type":"string"},"startTime":{"format":"int64","title":"Vega time at which this epoch started","type":"string"}},"title":"Epoch details","type":"object"},"v1EthereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature signed by the new Ethereum key that can be verified to prove ownership."},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object"},"v1EthereumKeyRotation":{"properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"title":"Event that contains information about an Ethereum key rotation","type":"object"},"v1ExpiredOrders":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"orderIds":{"items":{"type":"string"},"title":"Slice of expired order IDs","type":"array"}},"type":"object"},"v1ExternalData":{"properties":{"data":{"$ref":"#/components/schemas/v1Data"}},"type":"object"},"v1FeesStats":{"properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"$ref":"#/components/schemas/v1MakerFeesGenerated"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"$ref":"#/components/schemas/v1ReferrerRewardsGenerated"},"type":"array"},"totalFeesPaidAndReceived":{"description":"Total trading fees received and paid by the party.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"},"v1Filter":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"key":{"$ref":"#/components/schemas/v1PropertyKey","description":"Data source's data property key targeted by the filter."}},"type":"object"},"v1FundingPayment":{"description":"The amount gained or lost by a party as a result of a funding payment.","properties":{"amount":{"description":"The amount paid, this can be negative for parties who lost at the end of the funding period.","type":"string"},"partyId":{"description":"ID of the party.","type":"string"}},"type":"object"},"v1FundingPayments":{"description":"Event notifying of funding payments at the end of a funding period.","properties":{"marketId":{"description":"ID of the market.","type":"string"},"payments":{"description":"List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.","items":{"$ref":"#/components/schemas/v1FundingPayment"},"type":"array"},"seq":{"description":"Sequence number of the funding period associated with these payments.","format":"uint64","type":"string"}},"type":"object"},"v1FundingPeriod":{"description":"Event notifying on the details of a funding interval for a perpetuals market.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object"},"v1FundingPeriodDataPoint":{"description":"Event notifying a data point for a funding period.","properties":{"dataPointType":{"$ref":"#/components/schemas/FundingPeriodDataPointSource","description":"Origin of the data point."},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object"},"v1GetSpamStatisticsResponse":{"properties":{"chainId":{"description":"Chain ID for which the statistics are captured.","type":"string"},"statistics":{"$ref":"#/components/schemas/v1SpamStatistics","title":"Spam statistics for the party"}},"title":"Response containing all the spam statistics of a party for the current epoch","type":"object"},"v1GetVegaTimeResponse":{"properties":{"timestamp":{"format":"int64","title":"Timestamp representation of current VegaTime as represented in\nUnix nanoseconds, for example `1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`","type":"string"}},"title":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","type":"object"},"v1IcebergOpts":{"properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"v1InternalTimeTrigger":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object"},"v1IssueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"$ref":"#/components/schemas/v1NodeSignatureKind","description":"What kind of signatures to generate, namely for whether a signer is being added or removed."},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object"},"v1JoinTeam":{"description":"Command that allows the submitter to join a team or change teams if they are already a member of a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object"},"v1KeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object"},"v1KeyRotation":{"properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"title":"Event that contains information about a Vega key rotation","type":"object"},"v1LastBlockHeightResponse":{"properties":{"chainId":{"title":"Network chain id from which the block comes from","type":"string"},"hash":{"title":"Last block hash","type":"string"},"height":{"format":"uint64","title":"Last block height","type":"string"},"spamPowDifficulty":{"format":"int64","title":"Difficulty of the proof of work, i.e. the target number of zeros","type":"integer"},"spamPowHashFunction":{"title":"Supported proof of work hash function","type":"string"},"spamPowIncreasingDifficulty":{"title":"Boolean indicating whether increasing difficulty is allowed for using the\nsame height for more than `spam_pow_number_of_past_blocks` transactions","type":"boolean"},"spamPowNumberOfPastBlocks":{"format":"int64","title":"Supported proof of work number of blocks behind current height allowed","type":"integer"},"spamPowNumberOfTxPerBlock":{"format":"int64","title":"Allowed number of transactions per block","type":"integer"}},"title":"Response with the height of the last block processed by\ntendermint","type":"object"},"v1LedgerMovements":{"properties":{"ledgerMovements":{"items":{"$ref":"#/components/schemas/vegaLedgerMovement"},"title":"One or more entries containing internal transfer information","type":"array"}},"title":"Transfer responses event contains a collection of transfer information","type":"object"},"v1LiquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object"},"v1LiquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object"},"v1LiquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object"},"v1LossSocialization":{"properties":{"amount":{"title":"Amount distributed","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"}},"title":"Loss socialization event contains details on the amount of wins unable to be distributed","type":"object"},"v1MakerFeesGenerated":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"v1MarketEvent":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"payload":{"title":"Payload is a unique information string","type":"string"}},"title":"MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging","type":"object"},"v1MarketTick":{"properties":{"id":{"title":"Market ID for the event","type":"string"},"time":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"title":"Market tick event contains the time value for when a particular market was last processed on Vega","type":"object"},"v1NodeSignature":{"description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"$ref":"#/components/schemas/v1NodeSignatureKind","description":"Kind of resource being signed."},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object"},"v1NodeSignatureKind":{"default":"NODE_SIGNATURE_KIND_UNSPECIFIED","description":"- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"v1ObserveEventBusResponse":{"properties":{"events":{"description":"One or more events that match the subscription request criteria.","items":{"$ref":"#/components/schemas/v1BusEvent"},"type":"array"}},"title":"Response to a subscribed stream of events from the Vega event bus","type":"object"},"v1OneOffGovernanceTransfer":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object"},"v1OracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"$ref":"#/components/schemas/OracleDataSubmissionOracleSource","description":"Source from which the data is coming from."}},"title":"Command to submit new oracle data from third party providers","type":"object"},"v1OrderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"New pegged reference for the order."},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","description":"New time in force for the order."}},"type":"object"},"v1OrderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object"},"v1OrderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"$ref":"#/components/schemas/v1IcebergOpts","description":"Iceberg order details. If set, the order will exist on the order book in chunks."},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"$ref":"#/components/schemas/vegaPeggedOrder","description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times."},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"$ref":"#/components/schemas/vegaSide","description":"Which side of the order book the order is for, e.g. buy or sell."},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","description":"Time in force indicates how long an order will remain active before it is executed or expires.."},"type":{"$ref":"#/components/schemas/vegaOrderType","description":"Type of the order."}},"type":"object"},"v1PaidLiquidityFeesStats":{"properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid across all parties.","type":"string"}},"type":"object"},"v1PartyActivityStreak":{"properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"title":"The updated activity streak of a party at end of epoch","type":"object"},"v1PartyAmount":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"v1PartyLockedBalance":{"description":"A party's locked balance for a given asset.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Locked balance.","type":"string"},"untilEpoch":{"description":"Epoch in which the balance will be released.","format":"uint64","type":"string"}},"type":"object"},"v1PartyMarginModeUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the update happened.","format":"uint64","type":"string"},"marginFactor":{"description":"Margin factor for the market. Isolated mode only.","type":"string"},"marginMode":{"$ref":"#/components/schemas/vegaMarginMode","description":"Updated margin mode."},"marketId":{"description":"Unique ID of the market in which the update happened.","type":"string"},"maxTheoreticalLeverage":{"description":"Maximum theoretical leverage for the market. Isolated mode only.","type":"string"},"minTheoreticalMarginFactor":{"description":"Minimum theoretical margin factor for the market. Isolated mode only.","type":"string"},"partyId":{"description":"Unique ID of the party that updated their margin mode.","type":"string"}},"type":"object"},"v1PartyProfileUpdated":{"properties":{"updatedProfile":{"$ref":"#/components/schemas/vegaPartyProfile","description":"Party's profile updated."}},"type":"object"},"v1PartyVestingBalance":{"description":"Balance that is being vested for the party.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Balance that is vested.","type":"string"}},"type":"object"},"v1PartyVestingStats":{"description":"The vesting stats for a given party.","properties":{"partyId":{"description":"The party.","type":"string"},"quantumBalance":{"description":"The balance of the party, in quantum.","type":"string"},"rewardBonusMultiplier":{"description":"The bonus multiplier applied on the reward.","type":"string"}},"type":"object"},"v1PartyVestingSummary":{"properties":{"party":{"description":"Party ID.","type":"string"},"partyLockedBalances":{"description":"List of locked balances.","items":{"$ref":"#/components/schemas/v1PartyLockedBalance"},"type":"array"},"partyVestingBalances":{"description":"List of vesting balances.","items":{"$ref":"#/components/schemas/v1PartyVestingBalance"},"type":"array"}},"title":"Summary of a party's vesting balances","type":"object"},"v1PartyVolumeDiscountStats":{"description":"Volume discount stats for a given party.","properties":{"discountFactor":{"description":"Discount factor applied to fees.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object"},"v1PoWBlockState":{"properties":{"blockHash":{"title":"Hash of the current block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height for the current Proof of Work state statistics","type":"string"},"difficulty":{"format":"uint64","title":"Base difficulty for this block for when transactions seen < tx_per_block","type":"string"},"expectedDifficulty":{"description":"This is the minimum required difficulty for the next transaction submitted on this block\nif it is possible to submit more transactions on this block, otherwise nil.","format":"uint64","type":"string"},"hashFunction":{"title":"Hashing function used to calculate the block hash","type":"string"},"increasingDifficulty":{"title":"Whether or not this block allows for increasing proof-of-work difficulty if the\ntx-per-block-hash limit has been reached","type":"boolean"},"transactionsSeen":{"format":"uint64","title":"Total number of transactions seen in the block","type":"string"},"txPerBlock":{"format":"uint64","title":"Number of transactions that can have their proof-of-work calculated with this block hash before\neither the difficulty increases, or no more transactions can use this block hash","type":"string"}},"title":"Proof of Work state for a given block","type":"object"},"v1PoWStatistic":{"properties":{"bannedUntil":{"title":"PoW banned until timestamp as RFC3339Nano","type":"string"},"blockStates":{"items":{"$ref":"#/components/schemas/v1PoWBlockState"},"title":"Block state for each block in scope for PoW calculation","type":"array"},"numberOfPastBlocks":{"format":"uint64","title":"Number of block behind the current block whose hash can be used for proof-of-work calculations","type":"string"}},"title":"Proof of work statistics for a party","type":"object"},"v1PositionResolution":{"properties":{"closed":{"format":"int64","title":"Number of close outs","type":"string"},"distressed":{"format":"int64","title":"Number of distressed traders","type":"string"},"markPrice":{"title":"Mark price as a string representing a scaled price","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"}},"title":"Position resolution event contains information on distressed trades","type":"object"},"v1PositionStateEvent":{"properties":{"marketId":{"title":"Market ID for this position update","type":"string"},"partyId":{"title":"Party ID for this position update","type":"string"},"potentialBuys":{"format":"int64","title":"Potential orders","type":"string"},"potentialSells":{"format":"int64","type":"string"},"size":{"format":"int64","title":"Current position","type":"string"},"vwBuyPrice":{"title":"Volume weighted prices","type":"string"},"vwSellPrice":{"type":"string"}},"title":"Position state event contains the current position state for a single party in a single market","type":"object"},"v1ProofOfWork":{"description":"Components needed for the network to verify proof-of-work.","properties":{"nonce":{"description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","format":"uint64","type":"string"},"tid":{"description":"Unique transaction identifier used to seed the proof-of-work hash.","type":"string"}},"type":"object"},"v1PropagateChainEventResponse":{"properties":{"success":{"title":"Success will be true if the event was accepted by the node,\n**Important** - success does not mean that the event is confirmed by consensus","type":"boolean"}},"title":"Response for a new event sent by the blockchain queue to be propagated on Vega","type":"object"},"v1Property":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object"},"v1PropertyKey":{"description":"PropertyKey describes the property key contained in data source data.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"$ref":"#/components/schemas/v1PropertyKeyType","description":"Data type of the property."}},"type":"object"},"v1PropertyKeyType":{"default":"TYPE_UNSPECIFIED","description":"Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type.","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string"},"v1ProposalSubmission":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"$ref":"#/components/schemas/vegaProposalTerms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment."}},"type":"object"},"v1ProtocolUpgradeDataNodeReady":{"properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"title":"Event indicating the data node is ready for protocol upgrade","type":"object"},"v1ProtocolUpgradeEvent":{"properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"$ref":"#/components/schemas/v1ProtocolUpgradeProposalStatus","title":"Status of the proposal"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object"},"v1ProtocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object"},"v1ProtocolUpgradeProposalStatus":{"default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"title":"- PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected","type":"string"},"v1ProtocolUpgradeStarted":{"properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"title":"Event indicating the core is starting a protocol upgrade","type":"object"},"v1PubKey":{"description":"PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated.","properties":{"key":{"type":"string"}},"type":"object"},"v1RecurringGovernanceTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object"},"v1RefereeJoinedReferralSet":{"properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"setId":{"description":"Unique ID of the referral set the referee joined.","type":"string"}},"type":"object"},"v1RefereeJoinedTeam":{"properties":{"atEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined a team.","format":"int64","type":"string"},"referee":{"description":"The party that joined the team.","type":"string"},"teamId":{"description":"The unique identifier of the team the referee joined.","type":"string"}},"type":"object"},"v1RefereeStats":{"properties":{"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"title":"Current referee notional taker volume","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object"},"v1RefereeSwitchedTeam":{"properties":{"atEpoch":{"description":"Epoch at which the party switched the team.","format":"uint64","type":"string"},"fromTeamId":{"description":"The unique identifier of the team the referee left.","type":"string"},"referee":{"description":"The party that switched team.","type":"string"},"switchedAt":{"description":"Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.","format":"int64","type":"string"},"toTeamId":{"description":"The unique identifier of the team joined.","type":"string"}},"type":"object"},"v1ReferralProgramEnded":{"properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the referral program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object"},"v1ReferralProgramStarted":{"properties":{"atEpoch":{"description":"Epoch at which the referral program started.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaReferralProgram","description":"Referral program that has started."},"startedAt":{"description":"Time in Unix nanoseconds when the referral program started.","format":"int64","type":"string"}},"type":"object"},"v1ReferralProgramUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the referral program was updated.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaReferralProgram","description":"The updated referral program."},"updatedAt":{"description":"Time in Unix nanoseconds when the referral program was updated.","format":"int64","type":"string"}},"type":"object"},"v1ReferralSetCreated":{"properties":{"createdAt":{"description":"Time in Unix nanoseconds when the set was created.","format":"int64","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"setId":{"description":"Unique ID of the created set.","type":"string"},"updatedAt":{"description":"Time in Unix nanoseconds when the set was updated.","format":"int64","type":"string"}},"type":"object"},"v1ReferralSetStatsUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the set's statistics are updated.","format":"uint64","type":"string"},"refereesStats":{"description":"Referees' statistics for that epoch.","items":{"$ref":"#/components/schemas/v1RefereeStats"},"type":"array"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Taker volume of the referrer","type":"string"},"rewardFactor":{"description":"Reward factor applied to the trades.","type":"string"},"rewardsFactorMultiplier":{"description":"Rewards factor multiplier for the trades.","type":"string"},"rewardsMultiplier":{"description":"Rewards multiplier applied to the trades.","type":"string"},"setId":{"description":"Unique ID of the set.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object"},"v1ReferrerRewardsGenerated":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"v1RewardPayoutEvent":{"properties":{"amount":{"type":"string"},"asset":{"type":"string"},"epochSeq":{"type":"string"},"gameId":{"type":"string"},"lockedUntilEpoch":{"type":"string"},"party":{"type":"string"},"percentOfTotalReward":{"type":"string"},"quantumAmount":{"type":"string"},"rewardType":{"type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"v1SettleDistressed":{"properties":{"margin":{"title":"Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID i.e. a party's public key for the event","type":"string"},"price":{"title":"Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"}},"title":"Settle distressed event contains information on distressed trading parties who are closed out","type":"object"},"v1SettleMarket":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"}},"title":"Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly","type":"object"},"v1SettlePosition":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"},"tradeSettlements":{"items":{"$ref":"#/components/schemas/v1TradeSettlement"},"title":"A collection of 1 or more trade settlements","type":"array"}},"title":"Settle position event contains position settlement information for a party","type":"object"},"v1Signature":{"description":"Signature definition that allows the network to authenticate external data.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object"},"v1Signer":{"properties":{"ethAddress":{"$ref":"#/components/schemas/v1ETHAddress","description":"In case of an open oracle - Ethereum address will be submitted."},"pubKey":{"$ref":"#/components/schemas/v1PubKey","description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys."}},"type":"object"},"v1SpamStatistic":{"properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"countForEpoch":{"format":"uint64","title":"Current transaction count received from the party during this epoch for this policy","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of transactions allowed for this policy in an epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to submit a transaction of this type","type":"string"}},"title":"Statistics for a given spam policy","type":"object"},"v1SpamStatistics":{"properties":{"applyReferralCode":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for transactions made by the party to apply referral codes."},"createReferralSet":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for transactions made by the party to create referral sets."},"delegations":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for delegation transactions made by the party."},"epochSeq":{"description":"Epoch in which these statistics apply to.","format":"uint64","type":"string"},"issueSignatures":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for multisig signatures issued for the party."},"nodeAnnouncements":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for node announcement transactions made by the party."},"pow":{"$ref":"#/components/schemas/v1PoWStatistic","description":"Statistics for proof of work difficulty observed per block for the party."},"proposals":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for proposal transactions made by the party."},"transfers":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for transfer transactions made by the party."},"updateReferralSet":{"$ref":"#/components/schemas/v1SpamStatistic","description":"Statistics for transactions made by the party to update referral sets."},"votes":{"$ref":"#/components/schemas/v1VoteSpamStatistics","description":"Statistics for proposal votes made by the party."}},"title":"Complete spam statistics captured for a given party","type":"object"},"v1StakeLinking":{"properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"$ref":"#/components/schemas/v1StakeLinkingStatus","description":"Status of the event."},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"$ref":"#/components/schemas/v1StakeLinkingType","description":"Stake linking event type."}},"title":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","type":"object"},"v1StakeLinkingStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"v1StakeLinkingType":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"},"v1StateVar":{"properties":{"eventId":{"type":"string"},"id":{"type":"string"},"state":{"type":"string"}},"title":"StateVar event updates on state changes in state variable consensus","type":"object"},"v1Statistics":{"properties":{"accountSubscriptions":{"format":"int64","title":"Current number of stream subscribers to account data","type":"integer"},"appVersion":{"title":"Version of the Vega node software","type":"string"},"appVersionHash":{"title":"Version hash of the Vega node software","type":"string"},"averageOrdersPerBlock":{"format":"uint64","title":"Average orders per block","type":"string"},"averageTxBytes":{"format":"uint64","title":"Average transaction size in bytes","type":"string"},"backlogLength":{"format":"uint64","title":"Current backlog length i.e., number of transactions, that are waiting to be included in a block","type":"string"},"blockDuration":{"format":"uint64","title":"Current block duration, in nanoseconds","type":"string"},"blockHash":{"title":"Current block hash","type":"string"},"blockHeight":{"format":"uint64","title":"Current block height as reported by the Vega blockchain","type":"string"},"candleSubscriptions":{"format":"int64","title":"Current number of stream subscribers to candlestick data","type":"integer"},"chainId":{"title":"Unique ID for the underlying Vega blockchain","type":"string"},"chainVersion":{"title":"Version of the underlying Vega blockchain","type":"string"},"currentTime":{"title":"Current system date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"epochExpiryTime":{"title":"Epoch expected end time","type":"string"},"epochSeq":{"format":"uint64","title":"Current epoch","type":"string"},"epochStartTime":{"title":"Epoch start time","type":"string"},"eventCount":{"format":"uint64","title":"Number of events in the last block","type":"string"},"eventsPerSecond":{"format":"uint64","title":"Rate of events per second in the last block","type":"string"},"genesisTime":{"title":"Genesis block date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"marketDataSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market data","type":"integer"},"marketDepthSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market depth data","type":"integer"},"marketDepthUpdatesSubscriptions":{"format":"int64","title":"Current number of stream subscribers to market depth update data","type":"integer"},"orderSubscriptions":{"format":"int64","title":"Current number of stream subscribers to order data","type":"integer"},"ordersPerSecond":{"format":"uint64","title":"Orders processed per second","type":"string"},"positionsSubscriptions":{"format":"int64","title":"Current number of stream subscribers to positions data","type":"integer"},"status":{"$ref":"#/components/schemas/vegaChainStatus","title":"Status of the connection to the Vega blockchain"},"totalAmendOrder":{"format":"uint64","title":"Total number of order amendments since genesis across all markets","type":"string"},"totalCancelOrder":{"format":"uint64","title":"Total number of order cancellations since genesis across all markets","type":"string"},"totalCreateOrder":{"format":"uint64","title":"Total number of order submissions since genesis across all markets","type":"string"},"totalMarkets":{"format":"uint64","title":"Total markets on this Vega network","type":"string"},"totalOrders":{"format":"uint64","title":"Total number of orders processed since genesis across all markets","type":"string"},"totalPeers":{"format":"uint64","title":"Total number of connected peers to this node","type":"string"},"totalTrades":{"format":"uint64","title":"Total number of trades emitted since genesis across all markets","type":"string"},"tradeSubscriptions":{"format":"int64","title":"Current number of stream subscribers to trade data","type":"integer"},"tradesPerSecond":{"format":"uint64","title":"Trades emitted per second","type":"string"},"txPerBlock":{"format":"uint64","title":"Transactions per block","type":"string"},"uptime":{"title":"Total uptime for this node formatted in ISO-8601 datetime format with nanosecond precision","type":"string"},"vegaTime":{"title":"Current Vega date and time formatted in ISO-8601 datetime format with nanosecond precision","type":"string"}},"title":"Vega domain specific statistics as reported by the node the caller is connected to","type":"object"},"v1StatisticsResponse":{"properties":{"statistics":{"$ref":"#/components/schemas/v1Statistics"}},"title":"Response containing statistics about the Vega network","type":"object"},"v1StopOrderEvent":{"properties":{"stopOrder":{"$ref":"#/components/schemas/vegaStopOrder"},"submission":{"$ref":"#/components/schemas/v1OrderSubmission"}},"type":"object"},"v1StopOrderSetup":{"description":"Price and expiry configuration for a stop order.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"$ref":"#/components/schemas/StopOrderExpiryStrategy","description":"Strategy to adopt if the expiry time is reached."},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission","description":"Order to be submitted once the trigger is breached."},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"$ref":"#/components/schemas/StopOrderSizeOverrideSetting","title":"Indicates if this order is linked to an order or position to derive the order size"},"sizeOverrideValue":{"$ref":"#/components/schemas/StopOrderSizeOverrideValue","title":"If this order is linked to a position, provide an optional scaling factor"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object"},"v1StopOrdersCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object"},"v1StopOrdersSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"$ref":"#/components/schemas/v1StopOrderSetup","description":"Stop order that will be triggered if the price falls below a given trigger price."},"risesAbove":{"$ref":"#/components/schemas/v1StopOrderSetup","description":"Stop order that will be triggered if the price rises above a given trigger price."}},"type":"object"},"v1SubmitRawTransactionRequest":{"properties":{"tx":{"format":"byte","required":["tx"],"title":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that will be submitted to the Vega blockchain","type":"string"},"type":{"$ref":"#/components/schemas/v1SubmitRawTransactionRequestType","title":"Type of transaction request, for example ASYNC, meaning the transaction will be submitted and not block on a response"}},"required":["tx"],"title":"Request for submitting a version agnostic transaction on Vega","type":"object"},"v1SubmitRawTransactionRequestType":{"default":"TYPE_UNSPECIFIED","description":"- TYPE_ASYNC: Transaction will be submitted without waiting for response\n - TYPE_SYNC: Transaction will be submitted, and blocking until the\ntendermint mempool returns a response\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the tendermint\nnetwork has committed it into a block. Used only for debugging,\nnot for submitting transactions","enum":["TYPE_UNSPECIFIED","TYPE_ASYNC","TYPE_SYNC","TYPE_COMMIT"],"title":"Blockchain transaction type","type":"string"},"v1SubmitRawTransactionResponse":{"properties":{"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"height":{"description":"Unused.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction was validated and submitted to the chain's mempool.","type":"boolean"},"txHash":{"description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","type":"string"}},"title":"Response for submitting a version agnostic transaction on Vega","type":"object"},"v1SubmitTransactionRequest":{"properties":{"tx":{"$ref":"#/components/schemas/v1Transaction","description":"Transaction containing a command to execute on the network, and a signature to provide authentication."},"type":{"$ref":"#/components/schemas/v1SubmitTransactionRequestType","description":"Method of submission."}},"title":"Request for submitting a transaction v2 on Vega","type":"object"},"v1SubmitTransactionRequestType":{"default":"TYPE_UNSPECIFIED","description":"Blockchain transaction type.\n\n - TYPE_ASYNC: Transaction will be submitted without waiting for a response.\n - TYPE_SYNC: Transaction will be submitted, and blocking until the mempool returns a response.\n - TYPE_COMMIT: Transaction will be submitted, and blocking until the network has committed it into a block.\nUsed only for debugging local network, not for submitting transactions.","enum":["TYPE_UNSPECIFIED","TYPE_ASYNC","TYPE_SYNC","TYPE_COMMIT"],"type":"string"},"v1SubmitTransactionResponse":{"description":"Response for submitting a transaction on the network.","properties":{"code":{"description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","format":"int64","type":"integer"},"data":{"description":"Further details for why the transaction was not successfully submitted.","type":"string"},"height":{"description":"Unused.","format":"int64","type":"string"},"log":{"description":"Further details for the underlying consensus layer of the result of the transaction.","type":"string"},"success":{"description":"Whether or not the transaction was validated and submitted to the chain's mempool.","type":"boolean"},"txHash":{"description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","type":"string"}},"type":"object"},"v1TeamCreated":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"atEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"createdAt":{"description":"Time in Unix nanoseconds when the team is created.","format":"int64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"The party that created the team.","type":"string"},"teamId":{"description":"The unique identifier of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"v1TeamUpdated":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamId":{"description":"The unique identifier for the updated team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"v1TimeUpdate":{"properties":{"timestamp":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"title":"Time update event contains the latest time update from Vega blockchain and indicates the start of a new block","type":"object"},"v1TradeSettlement":{"properties":{"marketPrice":{"title":"Price of settlement as a string (in market decimals)","type":"string"},"price":{"title":"Price of settlement as string (in asset decimals)","type":"string"},"size":{"format":"int64","title":"Size of trade settlement","type":"string"}},"title":"Trade settlement is part of the settle position event","type":"object"},"v1Transaction":{"description":"Transaction containing a command that can be sent to instruct the network to execute an action.\nA transaction contains a byte string representation of the input data which must then be signed, with the signature added to the transaction.","properties":{"address":{"description":"Hex-encoded address of the sender. Not supported yet.","type":"string"},"inputData":{"description":"Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`.","format":"byte","type":"string"},"pow":{"$ref":"#/components/schemas/v1ProofOfWork","description":"Proof-of-work containing the random transaction ID used by the client and the nonce."},"pubKey":{"description":"Hex-encoded public key of the sender.","type":"string"},"signature":{"$ref":"#/components/schemas/v1Signature","description":"Signature of the input data field, signed by the sender of this transaction."},"version":{"$ref":"#/components/schemas/v1TxVersion","description":"Version of the transaction."}},"type":"object"},"v1TransactionResult":{"properties":{"announceNode":{"$ref":"#/components/schemas/v1AnnounceNode"},"applyReferralCode":{"$ref":"#/components/schemas/v1ApplyReferralCode"},"batchMarketInstructions":{"$ref":"#/components/schemas/v1BatchMarketInstructions"},"batchProposal":{"$ref":"#/components/schemas/v1BatchProposalSubmission"},"cancelTransfer":{"$ref":"#/components/schemas/commandsv1CancelTransfer"},"createReferralSet":{"$ref":"#/components/schemas/v1CreateReferralSet"},"delegateSubmission":{"$ref":"#/components/schemas/v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"$ref":"#/components/schemas/v1EthereumKeyRotateSubmission"},"failure":{"$ref":"#/components/schemas/TransactionResultFailureDetails"},"hash":{"title":"Hash of the transaction","type":"string"},"issueSignatures":{"$ref":"#/components/schemas/v1IssueSignatures"},"joinTeam":{"$ref":"#/components/schemas/v1JoinTeam"},"keyRotateSubmission":{"$ref":"#/components/schemas/v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"$ref":"#/components/schemas/v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"$ref":"#/components/schemas/v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"$ref":"#/components/schemas/v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"$ref":"#/components/schemas/v1OracleDataSubmission"},"orderAmendment":{"$ref":"#/components/schemas/v1OrderAmendment"},"orderCancellation":{"$ref":"#/components/schemas/v1OrderCancellation"},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"$ref":"#/components/schemas/v1ProposalSubmission"},"protocolUpgradeProposal":{"$ref":"#/components/schemas/v1ProtocolUpgradeProposal"},"status":{"description":"Status of the transaction, did it succeed or an error was raised.","type":"boolean"},"stopOrderCancellation":{"$ref":"#/components/schemas/v1StopOrdersCancellation"},"stopOrderSubmission":{"$ref":"#/components/schemas/v1StopOrdersSubmission"},"success":{"$ref":"#/components/schemas/TransactionResultSuccessDetails"},"transfer":{"$ref":"#/components/schemas/vegacommandsv1Transfer"},"undelegateSubmission":{"$ref":"#/components/schemas/v1UndelegateSubmission"},"updateMarginMode":{"$ref":"#/components/schemas/v1UpdateMarginMode"},"updatePartyProfile":{"$ref":"#/components/schemas/v1UpdatePartyProfile"},"updateReferralSet":{"$ref":"#/components/schemas/v1UpdateReferralSet"},"voteSubmission":{"$ref":"#/components/schemas/v1VoteSubmission"},"withdrawSubmission":{"$ref":"#/components/schemas/v1WithdrawSubmission"}},"type":"object"},"v1TransferFees":{"properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"discountApplied":{"description":"Amount that was subtracted from the transfer fee based on available discounts.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object"},"v1TransferFeesDiscount":{"properties":{"amount":{"description":"Amount that the transfer fee was discounted by.","type":"string"},"asset":{"description":"Asset that the transfer fee discount is relevant to.","type":"string"},"epoch":{"description":"Epoch in which the discount was first available.","format":"uint64","type":"string"},"party":{"description":"Party that the transfer fee discount applies to.","type":"string"}},"type":"object"},"v1TransferStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"v1TxErrorEvent":{"properties":{"announceNode":{"$ref":"#/components/schemas/v1AnnounceNode"},"batchMarketInstructions":{"$ref":"#/components/schemas/v1BatchMarketInstructions"},"cancelTransfer":{"$ref":"#/components/schemas/commandsv1CancelTransfer"},"delegateSubmission":{"$ref":"#/components/schemas/v1DelegateSubmission"},"errMsg":{"title":"Error message describing what went wrong","type":"string"},"issueSignatures":{"$ref":"#/components/schemas/v1IssueSignatures"},"liquidityProvisionAmendment":{"$ref":"#/components/schemas/v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"$ref":"#/components/schemas/v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"$ref":"#/components/schemas/v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"$ref":"#/components/schemas/v1OracleDataSubmission"},"orderAmendment":{"$ref":"#/components/schemas/v1OrderAmendment"},"orderCancellation":{"$ref":"#/components/schemas/v1OrderCancellation"},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"$ref":"#/components/schemas/v1ProposalSubmission"},"protocolUpgradeProposal":{"$ref":"#/components/schemas/v1ProtocolUpgradeProposal"},"transfer":{"$ref":"#/components/schemas/vegacommandsv1Transfer"},"undelegateSubmission":{"$ref":"#/components/schemas/v1UndelegateSubmission"},"voteSubmission":{"$ref":"#/components/schemas/v1VoteSubmission"},"withdrawSubmission":{"$ref":"#/components/schemas/v1WithdrawSubmission"}},"type":"object"},"v1TxVersion":{"default":"TX_VERSION_UNSPECIFIED","description":"Transaction versions to maintain backwards compatibility of transaction formats.\n\n - TX_VERSION_UNSPECIFIED: Transaction version is unspecified.\n - TX_VERSION_V2: Transaction requires the addition of a proof-of-work calculation.\n - TX_VERSION_V3: Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks.","enum":["TX_VERSION_UNSPECIFIED","TX_VERSION_V2","TX_VERSION_V3"],"type":"string"},"v1UndelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"$ref":"#/components/schemas/v1UndelegateSubmissionMethod","description":"Method of delegation."},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object"},"v1UndelegateSubmissionMethod":{"default":"METHOD_UNSPECIFIED","description":" - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch.","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string"},"v1UpdateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"$ref":"#/components/schemas/UpdateMarginModeMode","description":"Margin mode to use."}},"type":"object"},"v1UpdatePartyProfile":{"description":"Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"}},"type":"object"},"v1UpdateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"$ref":"#/components/schemas/v1UpdateReferralSetTeam","description":"Team details, if the referral set is to be considered a team."}},"type":"object"},"v1UpdateReferralSetTeam":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object"},"v1ValidatorRankingEvent":{"properties":{"epochSeq":{"title":"Epoch seq for which the status is valid","type":"string"},"nextStatus":{"title":"Status of the validator in the next epoch","type":"string"},"nodeId":{"type":"string"},"performanceScore":{"title":"Performance base score","type":"string"},"previousStatus":{"title":"Status of the validator in the previous epoch","type":"string"},"rankingScore":{"title":"Final score","type":"string"},"stakeScore":{"title":"Stake based score - no anti-whaling","type":"string"},"tmVotingPower":{"format":"int64","title":"Tendermint voting power of the validator","type":"integer"}},"title":"Event that explains the status of the validator for the coming epoch","type":"object"},"v1ValidatorScoreEvent":{"properties":{"epochSeq":{"type":"string"},"multisigScore":{"type":"string"},"nodeId":{"type":"string"},"normalisedScore":{"type":"string"},"rawValidatorScore":{"type":"string"},"validatorPerformance":{"type":"string"},"validatorScore":{"type":"string"},"validatorStatus":{"type":"string"}},"title":"ValidatorScoreEvent is the score a validator gets for a given epoch","type":"object"},"v1ValidatorUpdate":{"properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"title":"Validator update event contains information about validator node","type":"object"},"v1VestingBalancesSummary":{"properties":{"epochSeq":{"description":"Epoch for which these balances are valid.","format":"uint64","type":"string"},"partiesVestingSummary":{"description":"Parties' summaries.","items":{"$ref":"#/components/schemas/v1PartyVestingSummary"},"type":"array"}},"title":"Summary of the vesting and locked balances for an epoch","type":"object"},"v1VestingStatsUpdated":{"description":"Stats of all parties invested in the vesting program.","properties":{"atEpoch":{"description":"Epoch at which the vesting statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties stats.","items":{"$ref":"#/components/schemas/v1PartyVestingStats"},"type":"array"}},"type":"object"},"v1VolumeDiscountProgramEnded":{"properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the volume discount program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object"},"v1VolumeDiscountProgramStarted":{"properties":{"atEpoch":{"description":"Epoch at which the volume discount program started.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaVolumeDiscountProgram","description":"Volume discount program that has started."},"startedAt":{"description":"Time in Unix nanoseconds when the volume discount program started.","format":"int64","type":"string"}},"type":"object"},"v1VolumeDiscountProgramUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the volume discount program was updated.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaVolumeDiscountProgram","description":"The updated volume discount program."},"updatedAt":{"description":"Time in Unix nanoseconds when the volume discount program was updated.","format":"int64","type":"string"}},"type":"object"},"v1VolumeDiscountStatsUpdated":{"description":"Stats of all parties eligible for volume discount.","properties":{"atEpoch":{"description":"Epoch at which the volume discount statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties' stats.","items":{"$ref":"#/components/schemas/v1PartyVolumeDiscountStats"},"type":"array"}},"type":"object"},"v1VoteSpamStatistic":{"description":"Vote statistics for the voting spam policies\nwhich are calculated as a ratio of the total votes\nthat have been rejected.","properties":{"countForEpoch":{"format":"uint64","title":"Current vote count received from the party for the given proposal during this epoch","type":"string"},"minTokensRequired":{"title":"Effective minimum number of tokens required to vote on the proposal","type":"string"},"proposal":{"description":"Unique ID of the proposal being voted on by the party.","type":"string"}},"type":"object"},"v1VoteSpamStatistics":{"properties":{"bannedUntil":{"title":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","type":"string"},"maxForEpoch":{"format":"uint64","title":"Maximum number of votes per proposal allowed in an epoch","type":"string"},"statistics":{"items":{"$ref":"#/components/schemas/v1VoteSpamStatistic"},"title":"List of statistics for proposals voted on by the party","type":"array"}},"title":"Voting statistics by proposal for a given party for the current epoch","type":"object"},"v1VoteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"$ref":"#/components/schemas/vegaVoteValue","description":"Actual value of the vote."}},"type":"object"},"v1WithdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"$ref":"#/components/schemas/vegaWithdrawExt","description":"Details specific to the foreign chain, such as the receiver address."}},"type":"object"},"vegaAccount":{"properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.","type":"string"},"id":{"description":"Unique account ID, used internally by Vega.","type":"string"},"marketId":{"description":"Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.","type":"string"},"owner":{"description":"Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.","type":"string"},"type":{"$ref":"#/components/schemas/vegaAccountType","description":"Account type related to this account."}},"title":"Represents an account for an asset on Vega for a particular owner or party","type":"object"},"vegaAccountDetails":{"properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"$ref":"#/components/schemas/vegaAccountType","description":"Type of the account."}},"type":"object"},"vegaAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"vegaAsset":{"properties":{"details":{"$ref":"#/components/schemas/vegaAssetDetails","description":"Definition of the external source for this asset."},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"$ref":"#/components/schemas/vegaAssetStatus","description":"Status of the asset."}},"title":"Vega representation of an external asset","type":"object"},"vegaAssetDetails":{"properties":{"builtinAsset":{"$ref":"#/components/schemas/vegaBuiltinAsset","description":"Vega built-in asset."},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"$ref":"#/components/schemas/vegaERC20","description":"Ethereum ERC20 asset."},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"vegaAssetDetailsUpdate":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"$ref":"#/components/schemas/vegaERC20Update","description":"Ethereum ERC20 asset update."},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object"},"vegaAssetStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"},"vegaAuctionDuration":{"properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"vegaAuctionTrigger":{"default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"vegaBatchProposalTerms":{"properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"$ref":"#/components/schemas/vegaBatchProposalTermsChange"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"$ref":"#/components/schemas/vegaProposalParameters","description":"Specific parameters defining the proposal's characteristics used for validation."}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"vegaBatchProposalTermsChange":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Proposal change to cancel a governance initiated transfe."},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance initiated transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."}},"title":"Terms change for a batch governance proposal","type":"object"},"vegaBenefitTier":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object"},"vegaBuiltinAsset":{"properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"vegaCancelTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaCancelTransferConfiguration","title":"Configuration for cancellation of a governance-initiated transfer"}},"type":"object"},"vegaCancelTransferConfiguration":{"properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"},"vegaChainStatus":{"default":"CHAIN_STATUS_UNSPECIFIED","description":"- CHAIN_STATUS_UNSPECIFIED: Default value, always invalid\n - CHAIN_STATUS_DISCONNECTED: Blockchain is disconnected\n - CHAIN_STATUS_REPLAYING: Blockchain is replaying historic transactions\n - CHAIN_STATUS_CONNECTED: Blockchain is connected and receiving transactions","enum":["CHAIN_STATUS_UNSPECIFIED","CHAIN_STATUS_DISCONNECTED","CHAIN_STATUS_REPLAYING","CHAIN_STATUS_CONNECTED"],"title":"Vega blockchain status as reported by the node the caller is connected to","type":"string"},"vegaCompositePriceConfiguration":{"description":"Mark price configuration parameters.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"Which method is used for the calculation of the composite price for the market."},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"$ref":"#/components/schemas/vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"$ref":"#/components/schemas/vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object"},"vegaCompositePriceType":{"default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","description":" - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price.","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string"},"vegaDataSourceDefinition":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"$ref":"#/components/schemas/vegaDataSourceDefinitionExternal"},"internal":{"$ref":"#/components/schemas/vegaDataSourceDefinitionInternal"}},"type":"object"},"vegaDataSourceDefinitionExternal":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"$ref":"#/components/schemas/vegaEthCallSpec","description":"Contains the data specification that is received from Ethereum sources."},"oracle":{"$ref":"#/components/schemas/vegaDataSourceSpecConfiguration"}},"type":"object"},"vegaDataSourceDefinitionInternal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object"},"vegaDataSourceSpec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"$ref":"#/components/schemas/vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"$ref":"#/components/schemas/vegaDataSourceSpecStatus","title":"Status describes the status of the data source spec"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object"},"vegaDataSourceSpecConfiguration":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"$ref":"#/components/schemas/v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"$ref":"#/components/schemas/v1Signer"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTime":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTimeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"triggers":{"items":{"$ref":"#/components/schemas/v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object"},"vegaDataSourceSpecStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"title":"Status describe the status of the data source spec","type":"string"},"vegaDataSourceSpecToFutureBinding":{"properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"vegaDataSourceSpecToPerpetualBinding":{"description":"Describes which properties of the data source data is to be\nused for settlement.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object"},"vegaDeposit":{"properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"$ref":"#/components/schemas/vegaDepositStatus","description":"Status of the deposit."},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"title":"Deposit on to the Vega network","type":"object"},"vegaDepositStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Deposit is being processed by the network\n - STATUS_CANCELLED: Deposit has been cancelled by the network\n - STATUS_FINALIZED: Deposit has been finalised and accounts have been updated","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"vegaDispatchMetric":{"default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"vegaDispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"$ref":"#/components/schemas/vegaDistributionStrategy","title":"Controls how the reward is distributed between qualifying parties"},"entityScope":{"$ref":"#/components/schemas/vegaEntityScope","description":"Mandatory enum that defines the entities within scope."},"individualScope":{"$ref":"#/components/schemas/vegaIndividualScope","description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded."},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"$ref":"#/components/schemas/vegaDispatchMetric","description":"Metric to apply."},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"$ref":"#/components/schemas/vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object"},"vegaDistributionStrategy":{"default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"vegaERC20":{"properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"vegaERC20Update":{"properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object"},"vegaEntityScope":{"default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"vegaEpochAction":{"default":"EPOCH_ACTION_UNSPECIFIED","description":"- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.","enum":["EPOCH_ACTION_UNSPECIFIED","EPOCH_ACTION_START","EPOCH_ACTION_END"],"title":"What epoch action has occurred","type":"string"},"vegaErc20WithdrawExt":{"properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"},"vegaEthCallSpec":{"description":"Specifies a data source that derives its content from calling a read method\non an Ethereum contract.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"$ref":"#/components/schemas/v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"$ref":"#/components/schemas/vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaEthCallTrigger","description":"Conditions for determining when to call the contract method."}},"type":"object"},"vegaEthCallTrigger":{"description":"Determines when the contract method should be called.","properties":{"timeTrigger":{"$ref":"#/components/schemas/vegaEthTimeTrigger"}},"type":"object"},"vegaEthTimeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object"},"vegaExternalDataSourceSpec":{"properties":{"spec":{"$ref":"#/components/schemas/vegaDataSourceSpec"}},"type":"object"},"vegaFee":{"properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"vegaFeeFactors":{"properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"vegaFees":{"properties":{"factors":{"$ref":"#/components/schemas/vegaFeeFactors","description":"Fee factors."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Liquidity fee settings for the market describing how the fee was calculated."}},"title":"Fees definition","type":"object"},"vegaFuture":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"Binding between the data spec and the data source."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source specification that describes the settlement data source filter."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source specification that describes the trading termination data source filter."},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"vegaFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The external data source spec describing the data source of trading termination."},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaGovernanceTransferType":{"default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"},"vegaIcebergOrder":{"properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"title":"Details of an iceberg order","type":"object"},"vegaIndividualScope":{"default":"INDIVIDUAL_SCOPE_UNSPECIFIED","description":" - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward.","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string"},"vegaInstrument":{"properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaFuture","description":"Future."},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"$ref":"#/components/schemas/vegaInstrumentMetadata","description":"Collection of instrument meta-data."},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaPerpetual","description":"Perpetual."},"spot":{"$ref":"#/components/schemas/vegaSpot","description":"Spot."}},"title":"Instrument definition","type":"object"},"vegaInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaFutureProduct","description":"Future."},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaPerpetualProduct","description":"Perpetual."},"spot":{"$ref":"#/components/schemas/vegaSpotProduct","description":"Spot."}},"title":"Instrument configuration","type":"object"},"vegaInstrumentMetadata":{"properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"vegaLedgerEntry":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"$ref":"#/components/schemas/vegaAccountDetails","description":"One or more accounts to transfer from."},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"$ref":"#/components/schemas/vegaAccountDetails","description":"One or more accounts to transfer to."},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"transferId":{"description":"Transfer ID the ledger entry relates to.","type":"string"},"type":{"$ref":"#/components/schemas/vegaTransferType","description":"Transfer type for this entry."}},"title":"Represents a ledger entry on Vega","type":"object"},"vegaLedgerMovement":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"$ref":"#/components/schemas/vegaPostTransferBalance"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"$ref":"#/components/schemas/vegaLedgerEntry"},"type":"array"}},"type":"object"},"vegaLiquidationStrategy":{"description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"vegaLiquidityFeeSettings":{"description":"Market settings that describe how the liquidity fee is calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"$ref":"#/components/schemas/vegaLiquidityFeeSettingsMethod","description":"Method used to calculate the market's liquidity fee."}},"type":"object"},"vegaLiquidityFeeSettingsMethod":{"default":"METHOD_UNSPECIFIED","description":" - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee.","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string"},"vegaLiquidityMonitoringParameters":{"properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"vegaLiquidityOrder":{"properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"Pegged reference point for the order."}},"title":"Represents a liquidity order","type":"object"},"vegaLiquidityOrderReference":{"properties":{"liquidityOrder":{"$ref":"#/components/schemas/vegaLiquidityOrder","description":"Liquidity order from the original submission."},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"vegaLiquidityProviderFeeShare":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"vegaLiquidityProviderSLA":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"vegaLiquidityProvision":{"properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"$ref":"#/components/schemas/vegaLiquidityOrderReference"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"$ref":"#/components/schemas/vegaLiquidityOrderReference"},"type":"array"},"status":{"$ref":"#/components/schemas/vegaLiquidityProvisionStatus","description":"Status of this liquidity provision."},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"},"vegaLiquidityProvisionStatus":{"default":"STATUS_UNSPECIFIED","description":"Status of a liquidity provision.\n\n - STATUS_UNSPECIFIED: Always invalid\n - STATUS_ACTIVE: Liquidity provision is active\n - STATUS_STOPPED: Liquidity provision was stopped by the network\n - STATUS_CANCELLED: Liquidity provision was cancelled by the liquidity provider\n - STATUS_REJECTED: Liquidity provision was invalid and got rejected\n - STATUS_UNDEPLOYED: Liquidity provision is valid and accepted by network, but orders aren't deployed\n - STATUS_PENDING: Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string"},"vegaLiquiditySLAParameters":{"properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"vegaLogNormalModelParams":{"properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"vegaLogNormalRiskModel":{"properties":{"params":{"$ref":"#/components/schemas/vegaLogNormalModelParams","description":"Risk model parameters for log normal."},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"vegaMarginCalculator":{"properties":{"scalingFactors":{"$ref":"#/components/schemas/vegaScalingFactors","description":"Scaling factors for margin calculation."}},"title":"Margin Calculator definition","type":"object"},"vegaMarginLevels":{"properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"$ref":"#/components/schemas/vegaMarginMode","description":"Margin mode for the party, cross margin or isolated margin."},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"},"vegaMarginMode":{"default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"vegaMarket":{"properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"$ref":"#/components/schemas/vegaFees","description":"Fees configuration that apply to the market."},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","description":"Liquidation strategy used by this market."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"LiquidityMonitoringParameters for the market."},"liquiditySlaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Liquidity SLA parameters for the market."},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price calculation configuration."},"marketTimestamps":{"$ref":"#/components/schemas/vegaMarketTimestamps","description":"Timestamps for when the market state changes."},"openingAuction":{"$ref":"#/components/schemas/vegaAuctionDuration","description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)."},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"$ref":"#/components/schemas/vegaPriceMonitoringSettings","description":"PriceMonitoringSettings for the market."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"$ref":"#/components/schemas/vegaMarketState","description":"Current state of the market."},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"$ref":"#/components/schemas/vegaTradableInstrument","description":"Tradable instrument configuration."},"tradingMode":{"$ref":"#/components/schemas/MarketTradingMode","description":"Current mode of execution of the market."}},"title":"Market definition","type":"object"},"vegaMarketData":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","description":"When a market auction is extended, this field indicates what caused the extension."},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"$ref":"#/components/schemas/vegaLiquidityProviderFeeShare"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"$ref":"#/components/schemas/vegaLiquidityProviderSLA"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"The method used for calculating the mark price."},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"$ref":"#/components/schemas/vegaMarketState","description":"Current state of the market."},"marketTradingMode":{"$ref":"#/components/schemas/MarketTradingMode","description":"Current trading mode for the market."},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"$ref":"#/components/schemas/vegaPriceMonitoringBounds"},"type":"array"},"productData":{"$ref":"#/components/schemas/vegaProductData","description":"Data related to the particular product type of the market."},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","description":"When a market is in an auction trading mode, this field indicates what triggered the auction."}},"title":"Represents data generated by a market when open","type":"object"},"vegaMarketState":{"default":"STATE_UNSPECIFIED","description":"- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"vegaMarketStateUpdateType":{"default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"title":"- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance","type":"string"},"vegaMarketTimestamps":{"properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"vegaMetadata":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object"},"vegaNetworkLimits":{"properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"title":"Network limits, defined in the genesis file","type":"object"},"vegaNetworkParameter":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"},"vegaNewAsset":{"properties":{"changes":{"$ref":"#/components/schemas/vegaAssetDetails","description":"Configuration of the new asset."}},"title":"New asset on Vega","type":"object"},"vegaNewFreeform":{"description":"Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed.","type":"object"},"vegaNewMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewMarketConfiguration","description":"Configuration of the new market."}},"title":"New market on Vega","type":"object"},"vegaNewMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","description":"Liquidation strategy for this market."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"successor":{"$ref":"#/components/schemas/vegaSuccessorConfiguration","description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set."}},"title":"Configuration for a new futures market on Vega","type":"object"},"vegaNewSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewSpotMarketConfiguration","description":"Configuration of the new spot market."}},"title":"New spot market on Vega","type":"object"},"vegaNewSpotMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New spot market instrument configuration."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration for a new spot market on Vega","type":"object"},"vegaNewTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewTransferConfiguration","description":"Configuration for a new transfer."}},"title":"New governance transfer","type":"object"},"vegaNewTransferConfiguration":{"properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"$ref":"#/components/schemas/vegaAccountType","title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"$ref":"#/components/schemas/vegaOneOffTransfer"},"recurring":{"$ref":"#/components/schemas/vegaRecurringTransfer"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"$ref":"#/components/schemas/vegaAccountType","title":"Source account type, such as network treasury, market insurance pool"},"transferType":{"$ref":"#/components/schemas/vegaGovernanceTransferType","title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount"}},"type":"object"},"vegaNormaliser":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object"},"vegaOneOffTransfer":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"vegaOracleData":{"properties":{"externalData":{"$ref":"#/components/schemas/v1ExternalData"}},"type":"object"},"vegaOracleSpec":{"properties":{"externalDataSourceSpec":{"$ref":"#/components/schemas/vegaExternalDataSourceSpec"}},"title":"Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*","type":"object"},"vegaOrder":{"properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"$ref":"#/components/schemas/vegaIcebergOrder","title":"Details of an iceberg order"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"$ref":"#/components/schemas/vegaPeggedOrder","description":"Pegged order details, used only if the order represents a pegged order."},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"$ref":"#/components/schemas/vegaOrderError","description":"Futher details for why an order with status `STATUS_REJECTED` was rejected."},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"$ref":"#/components/schemas/vegaSide","description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL."},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"$ref":"#/components/schemas/vegaOrderStatus","description":"Current status of the order."},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce"},"type":{"$ref":"#/components/schemas/vegaOrderType","description":"Type for the order."},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"},"vegaOrderError":{"default":"ORDER_ERROR_UNSPECIFIED","description":"- ORDER_ERROR_UNSPECIFIED: Default value, no error reported\n - ORDER_ERROR_INVALID_MARKET_ID: Order was submitted for a market that does not exist\n - ORDER_ERROR_INVALID_ORDER_ID: Order was submitted with an invalid ID\n - ORDER_ERROR_OUT_OF_SEQUENCE: Order was amended with a sequence number that was not previous version + 1\n - ORDER_ERROR_INVALID_REMAINING_SIZE: Order was amended with an invalid remaining size (e.g. remaining greater than total size)\n - ORDER_ERROR_TIME_FAILURE: Node was unable to get Vega (blockchain) time\n - ORDER_ERROR_REMOVAL_FAILURE: Failed to remove an order from the book\n - ORDER_ERROR_INVALID_EXPIRATION_DATETIME: Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid\n - ORDER_ERROR_INVALID_ORDER_REFERENCE: Order was submitted or amended with an invalid reference field\n - ORDER_ERROR_EDIT_NOT_ALLOWED: Order amend was submitted for an order field that cannot not be amended (e.g. order ID)\n - ORDER_ERROR_AMEND_FAILURE: Amend failure because amend details do not match original order\n - ORDER_ERROR_NOT_FOUND: Order not found in an order book or store\n - ORDER_ERROR_INVALID_PARTY_ID: Order was submitted with an invalid or missing party ID\n - ORDER_ERROR_MARKET_CLOSED: Order was submitted for a market that has closed\n - ORDER_ERROR_MARGIN_CHECK_FAILED: Order was submitted, but the party did not have enough collateral to cover the order\n - ORDER_ERROR_MISSING_GENERAL_ACCOUNT: Order was submitted, but the party did not have an account for this asset\n - ORDER_ERROR_INTERNAL_ERROR: Unspecified internal error\n - ORDER_ERROR_INVALID_SIZE: Order was submitted with an invalid or missing size (e.g. 0)\n - ORDER_ERROR_INVALID_PERSISTENCE: Order was submitted with an invalid persistence for its type\n - ORDER_ERROR_INVALID_TYPE: Order was submitted with an invalid type field\n - ORDER_ERROR_SELF_TRADING: Order was stopped as it would have traded with another order submitted from the same party\n - ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES: Order was submitted, but the party did not have enough collateral to cover the fees for the order\n - ORDER_ERROR_INCORRECT_MARKET_TYPE: Order was submitted with an incorrect or invalid market type\n - ORDER_ERROR_INVALID_TIME_IN_FORCE: Order was submitted with invalid time in force\n - ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION: Good For Normal order has reached the market when it is in auction mode\n - ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING: Good For Auction order has reached the market when it is in continuous trading mode\n - ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT: Attempt to amend order to GTT without ExpiryAt\n - ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT: Attempt to amend ExpiryAt to a value before CreatedAt\n - ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT: Attempt to amend to GTC without an ExpiryAt value\n - ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC: Amending to FOK or IOC is invalid\n - ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN: Amending to GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN: Amending from GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION: IOC orders are not allowed during auction\n - ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION: FOK orders are not allowed during auction\n - ORDER_ERROR_MUST_BE_LIMIT_ORDER: Pegged orders must be LIMIT orders\n - ORDER_ERROR_MUST_BE_GTT_OR_GTC: Pegged orders can only have TIF GTC or GTT\n - ORDER_ERROR_WITHOUT_REFERENCE_PRICE: Pegged order must have a reference price\n - ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE: Buy pegged order cannot reference best ask price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO: Pegged order offset must be >= 0\n - ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE: Sell pegged order cannot reference best bid price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO: Pegged order offset must be > zero\n - ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE: Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)\n - ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER: Cannot amend details of a non pegged details\n - ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER: Could not re-price a pegged order because a market price is unavailable\n - ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER: It is not possible to amend the price of an existing pegged order\n - ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS: FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds\n - ORDER_ERROR_TOO_MANY_PEGGED_ORDERS: Unable to submit pegged order, temporarily too many pegged orders across all markets\n - ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE: Post order would trade\n - ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION: Post order would trade\n - ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED: Isolated margin check failed\n - ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE: In isolated margin pegged orders are rejected","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"vegaOrderStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"vegaOrderType":{"default":"TYPE_UNSPECIFIED","description":"- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"vegaParty":{"properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"},"vegaPartyProfile":{"description":"Holds metadata associated to a party.","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"},"partyId":{"description":"Party ID associated to the profile.","type":"string"}},"type":"object"},"vegaPeggedOrder":{"properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"Price point the order is linked to."}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"vegaPeggedReference":{"default":"PEGGED_REFERENCE_UNSPECIFIED","description":"- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"vegaPerpetual":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Optional configuration for the index price used in funding payment calculation."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"vegaPerpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"The method used for calculating the index price (perps only)."},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object"},"vegaPerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaPostTransferBalance":{"properties":{"account":{"$ref":"#/components/schemas/vegaAccountDetails","description":"Account relating to the transfer."},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"vegaPriceMonitoringBounds":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaPriceMonitoringTrigger","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"vegaPriceMonitoringParameters":{"properties":{"triggers":{"items":{"$ref":"#/components/schemas/vegaPriceMonitoringTrigger"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"vegaPriceMonitoringSettings":{"properties":{"parameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Specifies price monitoring parameters to be used for price monitoring purposes."}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"vegaPriceMonitoringTrigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"vegaProductData":{"description":"Represents market data specific to a particular product type.","properties":{"perpetualData":{"$ref":"#/components/schemas/vegaPerpetualData"}},"type":"object"},"vegaProposal":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"$ref":"#/components/schemas/vegaBatchProposalTerms","description":"Batch proposal terms."},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reason":{"$ref":"#/components/schemas/vegaProposalError","description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses."},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"$ref":"#/components/schemas/vegaProposalState","description":"Current state of the proposal, i.e. open, passed, failed etc."},"terms":{"$ref":"#/components/schemas/vegaProposalTerms","description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term."},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"vegaProposalError":{"default":"PROPOSAL_ERROR_UNSPECIFIED","description":"- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation < Closing < Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"vegaProposalParameters":{"properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object"},"vegaProposalRationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object"},"vegaProposalState":{"default":"STATE_UNSPECIFIED","description":"- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"vegaProposalTerms":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Cancel a governance transfer."},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"$ref":"#/components/schemas/vegaNewAsset","description":"Proposal change for creating new assets on Vega."},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market on Vega."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market on Vega."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market on Vega."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market on Vega."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"vegaRank":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object"},"vegaRecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy","description":"Optional parameter defining how a transfer is dispatched."},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"vegaReferralProgram":{"properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"$ref":"#/components/schemas/vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"$ref":"#/components/schemas/vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object"},"vegaReferralProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"$ref":"#/components/schemas/vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaRiskFactor":{"properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"title":"Risk factors are used to calculate the current risk associated with orders trading on a given market","type":"object"},"vegaScalingFactors":{"properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"},"vegaSide":{"default":"SIDE_UNSPECIFIED","description":"- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"vegaSimpleModelParams":{"properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"vegaSimpleRiskModel":{"properties":{"params":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Risk model params for simple modelling."}},"title":"Risk model for simple modelling","type":"object"},"vegaSpecBindingForCompositePrice":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object"},"vegaSpot":{"properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"},"vegaSpotProduct":{"properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"},"vegaStakingTier":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object"},"vegaStopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"$ref":"#/components/schemas/StopOrderExpiryStrategy","description":"Strategy to adopt if the expiry time is reached."},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"$ref":"#/components/schemas/StopOrderRejectionReason","title":"An optional reason for why a stop order was rejected"},"sizeOverrideSetting":{"$ref":"#/components/schemas/StopOrderSizeOverrideSetting","title":"Size override setting"},"sizeOverrideValue":{"$ref":"#/components/schemas/StopOrderSizeOverrideValue","title":"Size override value"},"status":{"$ref":"#/components/schemas/vegaStopOrderStatus","description":"Status of the stop order."},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"$ref":"#/components/schemas/StopOrderTriggerDirection","description":"Trigger direction for this stop order."},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object"},"vegaStopOrderStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"vegaSuccessorConfiguration":{"description":"Configuration required to turn a new market proposal in to a successor market proposal.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object"},"vegaTargetStakeParameters":{"properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"vegaTradableInstrument":{"properties":{"instrument":{"$ref":"#/components/schemas/vegaInstrument","description":"Details for the underlying instrument."},"logNormalRiskModel":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal."},"marginCalculator":{"$ref":"#/components/schemas/vegaMarginCalculator","description":"Margin calculator for the instrument."},"simpleRiskModel":{"$ref":"#/components/schemas/vegaSimpleRiskModel","description":"Simple."}},"title":"Tradable Instrument definition","type":"object"},"vegaTrade":{"properties":{"aggressor":{"$ref":"#/components/schemas/vegaSide","description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL."},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"$ref":"#/components/schemas/vegaFee","description":"Fee amount charged to the buyer party for the trade."},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"$ref":"#/components/schemas/vegaFee","description":"Fee amount charged to the seller party for the trade."},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"$ref":"#/components/schemas/vegaTradeType","description":"Type for the trade."}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"},"vegaTradeType":{"default":"TYPE_UNSPECIFIED","description":"- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_DEFAULT: Normal trading between two parties\n - TYPE_NETWORK_CLOSE_OUT_GOOD: Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties\n - TYPE_NETWORK_CLOSE_OUT_BAD: Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"},"vegaTransferType":{"default":"TRANSFER_TYPE_UNSPECIFIED","description":"- TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"},"vegaUpdateAsset":{"properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"$ref":"#/components/schemas/vegaAssetDetailsUpdate","description":"Changes to apply on an existing asset."}},"title":"Update an existing asset on Vega","type":"object"},"vegaUpdateFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"The binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data of settlement data."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data source for trading termination."},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaUpdateInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaUpdateFutureProduct","description":"Future."},"name":{"title":"Instrument name","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaUpdatePerpetualProduct","description":"Perpetual."}},"title":"Instrument configuration","type":"object"},"vegaUpdateMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketConfiguration","description":"Updated configuration of the futures market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"vegaUpdateMarketConfiguration":{"properties":{"instrument":{"$ref":"#/components/schemas/vegaUpdateInstrumentConfiguration","description":"Updated futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","title":"Liquidation strategy parameters"},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."}},"title":"Configuration to update a futures market on Vega","type":"object"},"vegaUpdateMarketState":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketStateConfiguration","title":"Configuration for governance-initiated change of a market's state"}},"type":"object"},"vegaUpdateMarketStateConfiguration":{"properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"$ref":"#/components/schemas/vegaMarketStateUpdateType","title":"Type of the market update"}},"type":"object"},"vegaUpdateNetworkParameter":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNetworkParameter","description":"The network parameter to update."}},"title":"Update network configuration on Vega","type":"object"},"vegaUpdatePerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Configuration for the index price used in funding payment calculation."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaUpdateReferralProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaReferralProgramChanges","description":"Configuration for change to update a referral program."}},"type":"object"},"vegaUpdateSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateSpotMarketConfiguration","description":"Updated configuration of the spot market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"vegaUpdateSpotMarketConfiguration":{"properties":{"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration to update a spot market on Vega","type":"object"},"vegaUpdateVolumeDiscountProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaVolumeDiscountProgramChanges","title":"Configuration for a change to update a volume discount program"}},"type":"object"},"vegaVolumeBenefitTier":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object"},"vegaVolumeDiscountProgram":{"properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"$ref":"#/components/schemas/vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object"},"vegaVolumeDiscountProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaVote":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"$ref":"#/components/schemas/vegaVoteValue","description":"Which way the party voted."}},"title":"Governance vote","type":"object"},"vegaVoteValue":{"default":"VALUE_UNSPECIFIED","description":"- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"},"vegaWithdrawExt":{"properties":{"erc20":{"$ref":"#/components/schemas/vegaErc20WithdrawExt","description":"ERC20 withdrawal details."}},"title":"Withdrawal external details","type":"object"},"vegaWithdrawal":{"properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"$ref":"#/components/schemas/vegaWithdrawExt","description":"Foreign chain specifics."},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"$ref":"#/components/schemas/vegaWithdrawalStatus","description":"Status of the withdrawal."},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"title":"Withdrawal from the Vega network","type":"object"},"vegaWithdrawalStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Withdrawal is open and being processed by the network\n - STATUS_REJECTED: Withdrawal have been cancelled\n - STATUS_FINALIZED: Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"vegacommandsv1OneOffTransfer":{"description":"Details for a one-off transfer.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object"},"vegacommandsv1RecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy","description":"Optional parameter defining how a transfer is dispatched."},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"vegacommandsv1Transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Account type from which the funds of the party should be taken."},"oneOff":{"$ref":"#/components/schemas/vegacommandsv1OneOffTransfer","description":"Details of a one-off transfer that is executed once at a specified time."},"recurring":{"$ref":"#/components/schemas/vegacommandsv1RecurringTransfer","description":"Details of a transfer that is executed once every epoch until stopped."},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Type of the destination account."}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"vegaeventsv1OneOffTransfer":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object"},"vegaeventsv1RecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object"},"vegaeventsv1Transfer":{"properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"$ref":"#/components/schemas/vegaAccountType"},"gameId":{"title":"ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation","type":"string"},"id":{"type":"string"},"oneOff":{"$ref":"#/components/schemas/vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"$ref":"#/components/schemas/v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"$ref":"#/components/schemas/vegaeventsv1RecurringTransfer"},"recurringGovernance":{"$ref":"#/components/schemas/v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"$ref":"#/components/schemas/v1TransferStatus"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"$ref":"#/components/schemas/vegaAccountType"}},"type":"object"}}},"tags":[{"name":"CoreService"}]} \ No newline at end of file diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/api/v1/core.swagger.json b/specs/v0.74.0/core.swagger.json similarity index 99% rename from specs/v0.74.0-preview.6/vega/swagger/vega/api/v1/core.swagger.json rename to specs/v0.74.0/core.swagger.json index 4e8ee8378..3f737b324 100644 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/api/v1/core.swagger.json +++ b/specs/v0.74.0/core.swagger.json @@ -9,9 +9,9 @@ "name": "CoreService" } ], - "host": "lb.testnet.vega.xyz", + "host": "api.n10.testnet.vega.xyz", "schemes": [ - "http", + "https" ], "consumes": [ diff --git a/specs/v0.74.0/corestate.openapi.json b/specs/v0.74.0/corestate.openapi.json new file mode 100644 index 000000000..fd1e3bb4c --- /dev/null +++ b/specs/v0.74.0/corestate.openapi.json @@ -0,0 +1 @@ +{"openapi":"3.0.0","info":{"title":"Vega core state APIs","version":"v0.74.0-preview.6"},"servers":[{"url":"https://n00.testnet.vega.rocks","description":"n00"},{"url":"https://n06.testnet.vega.rocks","description":"n06"},{"url":"https://n07.testnet.vega.rocks","description":"n07"},{"url":"https://n08.testnet.vega.rocks","description":"n08"}],"paths":{"/accounts":{"get":{"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}},{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListAccountsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of accounts. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListAccounts","summary":"Accounts list"}},"/assets":{"get":{"parameters":[{"in":"query","name":"asset","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListAssetsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of assets. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListAssets","summary":"Assets list"}},"/delegations":{"get":{"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}},{"in":"query","name":"node","required":false,"schema":{"type":"string"}},{"in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListDelegationsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of delegations. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListDelegations","summary":"Delegations list"}},"/markets":{"get":{"parameters":[{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListMarketsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of markets. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListMarkets","summary":"Markets list"}},"/markets/data":{"get":{"parameters":[{"in":"query","name":"market","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListMarketsDataResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of markets' data. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListMarketsData","summary":"Markets data list"}},"/network/limits":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListNetworkLimitsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of network limits. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListNetworkLimits","summary":"Network limits list"}},"/network/parameters":{"get":{"parameters":[{"in":"query","name":"networkParameterKey","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListNetworkParametersResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of network parameters. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListNetworkParameters","summary":"Network parameters list"}},"/parties":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListPartiesResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of parties. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListParties","summary":"Parties list"}},"/parties/stake":{"get":{"parameters":[{"in":"query","name":"party","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListPartiesStakeResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of parties' stake. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListPartiesStake","summary":"Parties stake list"}},"/proposals":{"get":{"parameters":[{"in":"query","name":"proposal","required":false,"schema":{"type":"string"}},{"in":"query","name":"proposer","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListProposalsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of proposals. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListProposals","summary":"Proposals list"}},"/validators":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListValidatorsResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of validators. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListValidators","summary":"Validators list"}},"/votes":{"get":{"parameters":[{"in":"query","name":"proposal","required":false,"schema":{"type":"string"}},{"in":"query","name":"party","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ListVotesResponse"}}},"description":"A successful response."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["CoreStateService"],"description":"Get a list of votes. This endpoint may not be exposed by mainnet nodes.","operationId":"CoreStateService_ListVotes","summary":"Votes list"}}},"components":{"schemas":{"ConditionOperator":{"default":"OPERATOR_UNSPECIFIED","description":"Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue.","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string"},"MarketTradingMode":{"default":"TRADING_MODE_UNSPECIFIED","description":"- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"apiv1Account":{"properties":{"asset":{"type":"string"},"balance":{"type":"string"},"market":{"type":"string"},"party":{"type":"string"},"type":{"type":"string"}},"type":"object"},"googlerpcStatus":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"$ref":"#/components/schemas/protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object"},"protobufAny":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object"},"protobufNullValue":{"default":"NULL_VALUE","description":"`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value.","enum":["NULL_VALUE"],"type":"string"},"v1Condition":{"properties":{"operator":{"$ref":"#/components/schemas/ConditionOperator","description":"Type of comparison to make on the value."},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"v1ETHAddress":{"properties":{"address":{"type":"string"}},"type":"object"},"v1Filter":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"key":{"$ref":"#/components/schemas/v1PropertyKey","description":"Data source's data property key targeted by the filter."}},"type":"object"},"v1InternalTimeTrigger":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object"},"v1ListAccountsResponse":{"properties":{"accounts":{"items":{"$ref":"#/components/schemas/apiv1Account"},"type":"array"}},"type":"object"},"v1ListAssetsResponse":{"properties":{"assets":{"items":{"$ref":"#/components/schemas/vegaAsset"},"type":"array"}},"type":"object"},"v1ListDelegationsResponse":{"properties":{"delegations":{"items":{"$ref":"#/components/schemas/vegaDelegation"},"type":"array"}},"type":"object"},"v1ListMarketsDataResponse":{"properties":{"marketsData":{"items":{"$ref":"#/components/schemas/vegaMarketData"},"type":"array"}},"type":"object"},"v1ListMarketsResponse":{"properties":{"markets":{"items":{"$ref":"#/components/schemas/vegaMarket"},"type":"array"}},"type":"object"},"v1ListNetworkLimitsResponse":{"properties":{"networkLimits":{"$ref":"#/components/schemas/vegaNetworkLimits"}},"type":"object"},"v1ListNetworkParametersResponse":{"properties":{"networkParameters":{"items":{"$ref":"#/components/schemas/vegaNetworkParameter"},"type":"array"}},"type":"object"},"v1ListPartiesResponse":{"properties":{"parties":{"items":{"$ref":"#/components/schemas/vegaParty"},"type":"array"}},"type":"object"},"v1ListPartiesStakeResponse":{"properties":{"partiesStake":{"items":{"$ref":"#/components/schemas/v1PartyStake"},"type":"array"}},"type":"object"},"v1ListProposalsResponse":{"properties":{"proposals":{"items":{"$ref":"#/components/schemas/vegaProposal"},"type":"array"}},"type":"object"},"v1ListValidatorsResponse":{"properties":{"validators":{"items":{"$ref":"#/components/schemas/v1ValidatorUpdate"},"type":"array"}},"type":"object"},"v1ListVotesResponse":{"properties":{"votes":{"items":{"$ref":"#/components/schemas/vegaVote"},"type":"array"}},"type":"object"},"v1PartyStake":{"properties":{"currentStakeAvailable":{"type":"string"},"party":{"type":"string"},"stakeLinkings":{"items":{"$ref":"#/components/schemas/v1StakeLinking"},"type":"array"}},"type":"object"},"v1PropertyKey":{"description":"PropertyKey describes the property key contained in data source data.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"$ref":"#/components/schemas/v1PropertyKeyType","description":"Data type of the property."}},"type":"object"},"v1PropertyKeyType":{"default":"TYPE_UNSPECIFIED","description":"Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type.","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string"},"v1PubKey":{"description":"PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated.","properties":{"key":{"type":"string"}},"type":"object"},"v1Signer":{"properties":{"ethAddress":{"$ref":"#/components/schemas/v1ETHAddress","description":"In case of an open oracle - Ethereum address will be submitted."},"pubKey":{"$ref":"#/components/schemas/v1PubKey","description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys."}},"type":"object"},"v1StakeLinking":{"properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"$ref":"#/components/schemas/v1StakeLinkingStatus","description":"Status of the event."},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"$ref":"#/components/schemas/v1StakeLinkingType","description":"Stake linking event type."}},"title":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","type":"object"},"v1StakeLinkingStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"v1StakeLinkingType":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"},"v1ValidatorUpdate":{"properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"title":"Validator update event contains information about validator node","type":"object"},"vegaAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"vegaAsset":{"properties":{"details":{"$ref":"#/components/schemas/vegaAssetDetails","description":"Definition of the external source for this asset."},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"$ref":"#/components/schemas/vegaAssetStatus","description":"Status of the asset."}},"title":"Vega representation of an external asset","type":"object"},"vegaAssetDetails":{"properties":{"builtinAsset":{"$ref":"#/components/schemas/vegaBuiltinAsset","description":"Vega built-in asset."},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"$ref":"#/components/schemas/vegaERC20","description":"Ethereum ERC20 asset."},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"vegaAssetDetailsUpdate":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"$ref":"#/components/schemas/vegaERC20Update","description":"Ethereum ERC20 asset update."},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object"},"vegaAssetStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"},"vegaAuctionDuration":{"properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"vegaAuctionTrigger":{"default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"vegaBatchProposalTerms":{"properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"$ref":"#/components/schemas/vegaBatchProposalTermsChange"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"$ref":"#/components/schemas/vegaProposalParameters","description":"Specific parameters defining the proposal's characteristics used for validation."}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"vegaBatchProposalTermsChange":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Proposal change to cancel a governance initiated transfe."},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance initiated transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."}},"title":"Terms change for a batch governance proposal","type":"object"},"vegaBenefitTier":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object"},"vegaBuiltinAsset":{"properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"vegaCancelTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaCancelTransferConfiguration","title":"Configuration for cancellation of a governance-initiated transfer"}},"type":"object"},"vegaCancelTransferConfiguration":{"properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"},"vegaCompositePriceConfiguration":{"description":"Mark price configuration parameters.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"Which method is used for the calculation of the composite price for the market."},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"$ref":"#/components/schemas/vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"$ref":"#/components/schemas/vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object"},"vegaCompositePriceType":{"default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","description":" - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price.","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string"},"vegaDataSourceDefinition":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"$ref":"#/components/schemas/vegaDataSourceDefinitionExternal"},"internal":{"$ref":"#/components/schemas/vegaDataSourceDefinitionInternal"}},"type":"object"},"vegaDataSourceDefinitionExternal":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"$ref":"#/components/schemas/vegaEthCallSpec","description":"Contains the data specification that is received from Ethereum sources."},"oracle":{"$ref":"#/components/schemas/vegaDataSourceSpecConfiguration"}},"type":"object"},"vegaDataSourceDefinitionInternal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object"},"vegaDataSourceSpec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"$ref":"#/components/schemas/vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"$ref":"#/components/schemas/vegaDataSourceSpecStatus","title":"Status describes the status of the data source spec"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object"},"vegaDataSourceSpecConfiguration":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"$ref":"#/components/schemas/v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"$ref":"#/components/schemas/v1Signer"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTime":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTimeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"triggers":{"items":{"$ref":"#/components/schemas/v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object"},"vegaDataSourceSpecStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"title":"Status describe the status of the data source spec","type":"string"},"vegaDataSourceSpecToFutureBinding":{"properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"vegaDataSourceSpecToPerpetualBinding":{"description":"Describes which properties of the data source data is to be\nused for settlement.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object"},"vegaDelegation":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object"},"vegaDispatchMetric":{"default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"vegaDispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"$ref":"#/components/schemas/vegaDistributionStrategy","title":"Controls how the reward is distributed between qualifying parties"},"entityScope":{"$ref":"#/components/schemas/vegaEntityScope","description":"Mandatory enum that defines the entities within scope."},"individualScope":{"$ref":"#/components/schemas/vegaIndividualScope","description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded."},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"$ref":"#/components/schemas/vegaDispatchMetric","description":"Metric to apply."},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"$ref":"#/components/schemas/vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object"},"vegaDistributionStrategy":{"default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"vegaERC20":{"properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"vegaERC20Update":{"properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object"},"vegaEntityScope":{"default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"vegaEthCallSpec":{"description":"Specifies a data source that derives its content from calling a read method\non an Ethereum contract.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"$ref":"#/components/schemas/v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"$ref":"#/components/schemas/vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaEthCallTrigger","description":"Conditions for determining when to call the contract method."}},"type":"object"},"vegaEthCallTrigger":{"description":"Determines when the contract method should be called.","properties":{"timeTrigger":{"$ref":"#/components/schemas/vegaEthTimeTrigger"}},"type":"object"},"vegaEthTimeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object"},"vegaFeeFactors":{"properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"vegaFees":{"properties":{"factors":{"$ref":"#/components/schemas/vegaFeeFactors","description":"Fee factors."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Liquidity fee settings for the market describing how the fee was calculated."}},"title":"Fees definition","type":"object"},"vegaFuture":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"Binding between the data spec and the data source."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source specification that describes the settlement data source filter."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source specification that describes the trading termination data source filter."},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"vegaFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The external data source spec describing the data source of trading termination."},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaGovernanceTransferType":{"default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"},"vegaIndividualScope":{"default":"INDIVIDUAL_SCOPE_UNSPECIFIED","description":" - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward.","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string"},"vegaInstrument":{"properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaFuture","description":"Future."},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"$ref":"#/components/schemas/vegaInstrumentMetadata","description":"Collection of instrument meta-data."},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaPerpetual","description":"Perpetual."},"spot":{"$ref":"#/components/schemas/vegaSpot","description":"Spot."}},"title":"Instrument definition","type":"object"},"vegaInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaFutureProduct","description":"Future."},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaPerpetualProduct","description":"Perpetual."},"spot":{"$ref":"#/components/schemas/vegaSpotProduct","description":"Spot."}},"title":"Instrument configuration","type":"object"},"vegaInstrumentMetadata":{"properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"vegaLiquidationStrategy":{"description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"vegaLiquidityFeeSettings":{"description":"Market settings that describe how the liquidity fee is calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"$ref":"#/components/schemas/vegaLiquidityFeeSettingsMethod","description":"Method used to calculate the market's liquidity fee."}},"type":"object"},"vegaLiquidityFeeSettingsMethod":{"default":"METHOD_UNSPECIFIED","description":" - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee.","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string"},"vegaLiquidityMonitoringParameters":{"properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"vegaLiquidityProviderFeeShare":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"vegaLiquidityProviderSLA":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"vegaLiquiditySLAParameters":{"properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"vegaLogNormalModelParams":{"properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"vegaLogNormalRiskModel":{"properties":{"params":{"$ref":"#/components/schemas/vegaLogNormalModelParams","description":"Risk model parameters for log normal."},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"vegaMarginCalculator":{"properties":{"scalingFactors":{"$ref":"#/components/schemas/vegaScalingFactors","description":"Scaling factors for margin calculation."}},"title":"Margin Calculator definition","type":"object"},"vegaMarket":{"properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"$ref":"#/components/schemas/vegaFees","description":"Fees configuration that apply to the market."},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","description":"Liquidation strategy used by this market."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"LiquidityMonitoringParameters for the market."},"liquiditySlaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Liquidity SLA parameters for the market."},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price calculation configuration."},"marketTimestamps":{"$ref":"#/components/schemas/vegaMarketTimestamps","description":"Timestamps for when the market state changes."},"openingAuction":{"$ref":"#/components/schemas/vegaAuctionDuration","description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)."},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"$ref":"#/components/schemas/vegaPriceMonitoringSettings","description":"PriceMonitoringSettings for the market."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"$ref":"#/components/schemas/vegaMarketState","description":"Current state of the market."},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"$ref":"#/components/schemas/vegaTradableInstrument","description":"Tradable instrument configuration."},"tradingMode":{"$ref":"#/components/schemas/MarketTradingMode","description":"Current mode of execution of the market."}},"title":"Market definition","type":"object"},"vegaMarketData":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","description":"When a market auction is extended, this field indicates what caused the extension."},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"$ref":"#/components/schemas/vegaLiquidityProviderFeeShare"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"$ref":"#/components/schemas/vegaLiquidityProviderSLA"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"The method used for calculating the mark price."},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"$ref":"#/components/schemas/vegaMarketState","description":"Current state of the market."},"marketTradingMode":{"$ref":"#/components/schemas/MarketTradingMode","description":"Current trading mode for the market."},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"$ref":"#/components/schemas/vegaPriceMonitoringBounds"},"type":"array"},"productData":{"$ref":"#/components/schemas/vegaProductData","description":"Data related to the particular product type of the market."},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","description":"When a market is in an auction trading mode, this field indicates what triggered the auction."}},"title":"Represents data generated by a market when open","type":"object"},"vegaMarketState":{"default":"STATE_UNSPECIFIED","description":"- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"vegaMarketStateUpdateType":{"default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"title":"- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance","type":"string"},"vegaMarketTimestamps":{"properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"vegaMetadata":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object"},"vegaNetworkLimits":{"properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"title":"Network limits, defined in the genesis file","type":"object"},"vegaNetworkParameter":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"},"vegaNewAsset":{"properties":{"changes":{"$ref":"#/components/schemas/vegaAssetDetails","description":"Configuration of the new asset."}},"title":"New asset on Vega","type":"object"},"vegaNewFreeform":{"description":"Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed.","type":"object"},"vegaNewMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewMarketConfiguration","description":"Configuration of the new market."}},"title":"New market on Vega","type":"object"},"vegaNewMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","description":"Liquidation strategy for this market."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"successor":{"$ref":"#/components/schemas/vegaSuccessorConfiguration","description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set."}},"title":"Configuration for a new futures market on Vega","type":"object"},"vegaNewSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewSpotMarketConfiguration","description":"Configuration of the new spot market."}},"title":"New spot market on Vega","type":"object"},"vegaNewSpotMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New spot market instrument configuration."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration for a new spot market on Vega","type":"object"},"vegaNewTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewTransferConfiguration","description":"Configuration for a new transfer."}},"title":"New governance transfer","type":"object"},"vegaNewTransferConfiguration":{"properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"$ref":"#/components/schemas/vegaAccountType","title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"$ref":"#/components/schemas/vegaOneOffTransfer"},"recurring":{"$ref":"#/components/schemas/vegaRecurringTransfer"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"$ref":"#/components/schemas/vegaAccountType","title":"Source account type, such as network treasury, market insurance pool"},"transferType":{"$ref":"#/components/schemas/vegaGovernanceTransferType","title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount"}},"type":"object"},"vegaNormaliser":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object"},"vegaOneOffTransfer":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"vegaParty":{"properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"},"vegaPerpetual":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Optional configuration for the index price used in funding payment calculation."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"vegaPerpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"The method used for calculating the index price (perps only)."},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object"},"vegaPerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaPriceMonitoringBounds":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaPriceMonitoringTrigger","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"vegaPriceMonitoringParameters":{"properties":{"triggers":{"items":{"$ref":"#/components/schemas/vegaPriceMonitoringTrigger"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"vegaPriceMonitoringSettings":{"properties":{"parameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Specifies price monitoring parameters to be used for price monitoring purposes."}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"vegaPriceMonitoringTrigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"vegaProductData":{"description":"Represents market data specific to a particular product type.","properties":{"perpetualData":{"$ref":"#/components/schemas/vegaPerpetualData"}},"type":"object"},"vegaProposal":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"$ref":"#/components/schemas/vegaBatchProposalTerms","description":"Batch proposal terms."},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reason":{"$ref":"#/components/schemas/vegaProposalError","description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses."},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"$ref":"#/components/schemas/vegaProposalState","description":"Current state of the proposal, i.e. open, passed, failed etc."},"terms":{"$ref":"#/components/schemas/vegaProposalTerms","description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term."},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"vegaProposalError":{"default":"PROPOSAL_ERROR_UNSPECIFIED","description":"- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation < Closing < Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"vegaProposalParameters":{"properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object"},"vegaProposalRationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object"},"vegaProposalState":{"default":"STATE_UNSPECIFIED","description":"- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"vegaProposalTerms":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Cancel a governance transfer."},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"$ref":"#/components/schemas/vegaNewAsset","description":"Proposal change for creating new assets on Vega."},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market on Vega."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market on Vega."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market on Vega."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market on Vega."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"vegaRank":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object"},"vegaRecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy","description":"Optional parameter defining how a transfer is dispatched."},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"vegaReferralProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"$ref":"#/components/schemas/vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaScalingFactors":{"properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"},"vegaSimpleModelParams":{"properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"vegaSimpleRiskModel":{"properties":{"params":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Risk model params for simple modelling."}},"title":"Risk model for simple modelling","type":"object"},"vegaSpecBindingForCompositePrice":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object"},"vegaSpot":{"properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"},"vegaSpotProduct":{"properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"},"vegaStakingTier":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object"},"vegaSuccessorConfiguration":{"description":"Configuration required to turn a new market proposal in to a successor market proposal.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object"},"vegaTargetStakeParameters":{"properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"vegaTradableInstrument":{"properties":{"instrument":{"$ref":"#/components/schemas/vegaInstrument","description":"Details for the underlying instrument."},"logNormalRiskModel":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal."},"marginCalculator":{"$ref":"#/components/schemas/vegaMarginCalculator","description":"Margin calculator for the instrument."},"simpleRiskModel":{"$ref":"#/components/schemas/vegaSimpleRiskModel","description":"Simple."}},"title":"Tradable Instrument definition","type":"object"},"vegaUpdateAsset":{"properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"$ref":"#/components/schemas/vegaAssetDetailsUpdate","description":"Changes to apply on an existing asset."}},"title":"Update an existing asset on Vega","type":"object"},"vegaUpdateFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"The binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data of settlement data."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data source for trading termination."},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaUpdateInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaUpdateFutureProduct","description":"Future."},"name":{"title":"Instrument name","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaUpdatePerpetualProduct","description":"Perpetual."}},"title":"Instrument configuration","type":"object"},"vegaUpdateMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketConfiguration","description":"Updated configuration of the futures market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"vegaUpdateMarketConfiguration":{"properties":{"instrument":{"$ref":"#/components/schemas/vegaUpdateInstrumentConfiguration","description":"Updated futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","title":"Liquidation strategy parameters"},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."}},"title":"Configuration to update a futures market on Vega","type":"object"},"vegaUpdateMarketState":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketStateConfiguration","title":"Configuration for governance-initiated change of a market's state"}},"type":"object"},"vegaUpdateMarketStateConfiguration":{"properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"$ref":"#/components/schemas/vegaMarketStateUpdateType","title":"Type of the market update"}},"type":"object"},"vegaUpdateNetworkParameter":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNetworkParameter","description":"The network parameter to update."}},"title":"Update network configuration on Vega","type":"object"},"vegaUpdatePerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Configuration for the index price used in funding payment calculation."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaUpdateReferralProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaReferralProgramChanges","description":"Configuration for change to update a referral program."}},"type":"object"},"vegaUpdateSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateSpotMarketConfiguration","description":"Updated configuration of the spot market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"vegaUpdateSpotMarketConfiguration":{"properties":{"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration to update a spot market on Vega","type":"object"},"vegaUpdateVolumeDiscountProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaVolumeDiscountProgramChanges","title":"Configuration for a change to update a volume discount program"}},"type":"object"},"vegaVolumeBenefitTier":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object"},"vegaVolumeDiscountProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaVote":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"$ref":"#/components/schemas/vegaVoteValue","description":"Which way the party voted."}},"title":"Governance vote","type":"object"},"vegaVoteValue":{"default":"VALUE_UNSPECIFIED","description":"- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"}}},"tags":[{"name":"CoreStateService"}]} \ No newline at end of file diff --git a/specs/v0.74.0-preview.6/vega/swagger/vega/api/v1/corestate.swagger.json b/specs/v0.74.0/corestate.swagger.json similarity index 99% rename from specs/v0.74.0-preview.6/vega/swagger/vega/api/v1/corestate.swagger.json rename to specs/v0.74.0/corestate.swagger.json index 0d0623754..36ca13dc6 100644 --- a/specs/v0.74.0-preview.6/vega/swagger/vega/api/v1/corestate.swagger.json +++ b/specs/v0.74.0/corestate.swagger.json @@ -9,9 +9,9 @@ "name": "CoreStateService" } ], - "host": "lb.testnet.vega.xyz", + "host": "api.n10.testnet.vega.xyz", "schemes": [ - "http", + "https" ], "consumes": [ diff --git a/specs/v0.74.0-preview.6/wallet/api/openrpc.json b/specs/v0.74.0/openrpc.json similarity index 100% rename from specs/v0.74.0-preview.6/wallet/api/openrpc.json rename to specs/v0.74.0/openrpc.json diff --git a/specs/v0.74.0/proto.json b/specs/v0.74.0/proto.json new file mode 100644 index 000000000..8988bbb40 --- /dev/null +++ b/specs/v0.74.0/proto.json @@ -0,0 +1 @@ +{"files":[{"name":"vega/commands/v1/signature.proto","description":"","package":"vega.commands.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[],"extensions":[],"messages":[{"name":"Signature","longName":"Signature","fullName":"vega.commands.v1.Signature","description":"Signature definition that allows the network to authenticate external data.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"value","description":"Hex encoded bytes of the signature.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"algo","description":"Algorithm used to create the signature.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"version","description":"Version of the algorithm used to create the signature.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/chain_events.proto","description":"","package":"vega","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[],"extensions":[],"messages":[{"name":"BuiltinAssetDeposit","longName":"BuiltinAssetDeposit","fullName":"vega.BuiltinAssetDeposit","description":"Deposit for a Vega built-in asset","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_asset_id","description":"Vega network internal asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Vega party ID i.e. public key.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BuiltinAssetEvent","longName":"BuiltinAssetEvent","fullName":"vega.BuiltinAssetEvent","description":"Event related to a Vega built-in asset","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"deposit","description":"Built-in asset deposit.","label":"","type":"BuiltinAssetDeposit","longType":"BuiltinAssetDeposit","fullType":"vega.BuiltinAssetDeposit","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"withdrawal","description":"Built-in asset withdrawal.","label":"","type":"BuiltinAssetWithdrawal","longType":"BuiltinAssetWithdrawal","fullType":"vega.BuiltinAssetWithdrawal","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""}]},{"name":"BuiltinAssetWithdrawal","longName":"BuiltinAssetWithdrawal","fullName":"vega.BuiltinAssetWithdrawal","description":"Withdrawal for a Vega built-in asset","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_asset_id","description":"Vega network internal asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Vega network party ID i.e. public key.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"The amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20AssetDelist","longName":"ERC20AssetDelist","fullName":"vega.ERC20AssetDelist","description":"Asset deny-listing for an ERC20 token","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_asset_id","description":"Vega network internal asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20AssetLimitsUpdated","longName":"ERC20AssetLimitsUpdated","fullName":"vega.ERC20AssetLimitsUpdated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_asset_id","description":"Vega network internal asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"source_ethereum_address","description":"Ethereum wallet that initiated the deposit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"lifetime_limits","description":"Updated lifetime limits.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"withdraw_threshold","description":"Updated withdrawal threshold.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20AssetList","longName":"ERC20AssetList","fullName":"vega.ERC20AssetList","description":"Asset allow-listing for an ERC20 token","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_asset_id","description":"Vega network internal asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_source","description":"Ethereum address of the asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20Deposit","longName":"ERC20Deposit","fullName":"vega.ERC20Deposit","description":"Asset deposit for an ERC20 token","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_asset_id","description":"Vega network internal asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"source_ethereum_address","description":"Ethereum wallet that initiated the deposit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"target_party_id","description":"Vega party ID i.e. public key that is the target of the deposit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to be deposited.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20Event","longName":"ERC20Event","fullName":"vega.ERC20Event","description":"Event related to an ERC20 token","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"index","description":"Index of the log in the transaction.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block","description":"Block in which the transaction was added.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_list","description":"List an ERC20 asset.","label":"","type":"ERC20AssetList","longType":"ERC20AssetList","fullType":"vega.ERC20AssetList","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"asset_delist","description":"De-list an ERC20 asset.","label":"","type":"ERC20AssetDelist","longType":"ERC20AssetDelist","fullType":"vega.ERC20AssetDelist","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"deposit","description":"Deposit ERC20 asset.","label":"","type":"ERC20Deposit","longType":"ERC20Deposit","fullType":"vega.ERC20Deposit","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"withdrawal","description":"Withdraw ERC20 asset.","label":"","type":"ERC20Withdrawal","longType":"ERC20Withdrawal","fullType":"vega.ERC20Withdrawal","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"asset_limits_updated","description":"Update an ERC20 asset.","label":"","type":"ERC20AssetLimitsUpdated","longType":"ERC20AssetLimitsUpdated","fullType":"vega.ERC20AssetLimitsUpdated","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"bridge_stopped","description":"Bridge operations has been stopped.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"bridge_resumed","description":"Bridge operations has been resumed.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""}]},{"name":"ERC20MultiSigEvent","longName":"ERC20MultiSigEvent","fullName":"vega.ERC20MultiSigEvent","description":"Event related to the ERC20 MultiSig","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"index","description":"Index of the log in the transaction","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block","description":"Block in which the transaction was added","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signer_added","description":"Add a signer to the erc20 bridge","label":"","type":"ERC20SignerAdded","longType":"ERC20SignerAdded","fullType":"vega.ERC20SignerAdded","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"signer_removed","description":"Remove a signer from the erc20 bridge","label":"","type":"ERC20SignerRemoved","longType":"ERC20SignerRemoved","fullType":"vega.ERC20SignerRemoved","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"threshold_set","description":"Threshold set","label":"","type":"ERC20ThresholdSet","longType":"ERC20ThresholdSet","fullType":"vega.ERC20ThresholdSet","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""}]},{"name":"ERC20SignerAdded","longName":"ERC20SignerAdded","fullName":"vega.ERC20SignerAdded","description":"New signer added to the ERC20 bridge","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"new_signer","description":"Ethereum address of the new signer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce created by the Vega network used for this new signer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"Time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20SignerRemoved","longName":"ERC20SignerRemoved","fullName":"vega.ERC20SignerRemoved","description":"Signer removed from the ERC20 bridge","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"old_signer","description":"Ethereum address of the old signer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce created by the Vega network used for this old signer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20ThresholdSet","longName":"ERC20ThresholdSet","fullName":"vega.ERC20ThresholdSet","description":"Threshold has been updated on the multisig control","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"new_threshold","description":"New threshold value to set","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce created by the Vega network","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake was made unavailable.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20Withdrawal","longName":"ERC20Withdrawal","fullName":"vega.ERC20Withdrawal","description":"Asset withdrawal for an ERC20 token","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_asset_id","description":"Vega network internal asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"target_ethereum_address","description":"Target Ethereum wallet address.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference_nonce","description":"Reference nonce used for the transaction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthContractCallEvent","longName":"EthContractCallEvent","fullName":"vega.EthContractCallEvent","description":"Result of calling an arbitrary Ethereum contract method","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"spec_id","description":"ID of the data source spec that triggered this contract call.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_height","description":"Ethereum block height.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"Ethereum block time in Unix seconds.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"result","description":"Result of contract call, packed according to the ABI stored in the associated data source spec.","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"error","description":"Error message if the call failed.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_error","defaultValue":""},{"name":"source_chain_id","description":"Source chain for this chain event.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_source_chain_id","defaultValue":""}]},{"name":"StakeDeposited","longName":"StakeDeposited","fullName":"vega.StakeDeposited","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ethereum_address","description":"Ethereum Address of the user depositing stake (hex encode with 0x prefix)","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_public_key","description":"Hex encoded public key of the party receiving the stake deposit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount deposited as an unsigned base 10 integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"Time at which the block was produced.\nWill be used to inform the core at what time\nthe stake started to be available.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StakeRemoved","longName":"StakeRemoved","fullName":"vega.StakeRemoved","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ethereum_address","description":"Ethereum address of the user removing stake. This should be hex encoded with 0x prefix.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_public_key","description":"Hex encoded public key of the party from which to remove stake.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount removed as a base 10 unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"The time at which the block was produced\nwill be used to inform the core at what time\nthe stake was made unavailable.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StakeTotalSupply","longName":"StakeTotalSupply","fullName":"vega.StakeTotalSupply","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"token_address","description":"Address of the staking asset","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_supply","description":"Total supply observed for the token as an unsigned based 10 integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StakingEvent","longName":"StakingEvent","fullName":"vega.StakingEvent","description":"Event related to staking on the Vega network.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"index","description":"Index of the log in the transaction.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block","description":"Block in which the transaction was added.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stake_deposited","description":"","label":"","type":"StakeDeposited","longType":"StakeDeposited","fullType":"vega.StakeDeposited","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"stake_removed","description":"","label":"","type":"StakeRemoved","longType":"StakeRemoved","fullType":"vega.StakeRemoved","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""},{"name":"total_supply","description":"","label":"","type":"StakeTotalSupply","longType":"StakeTotalSupply","fullType":"vega.StakeTotalSupply","ismap":false,"isoneof":true,"oneofdecl":"action","defaultValue":""}]}],"services":[]},{"name":"vega/data/v1/data.proto","description":"","package":"vega.data.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[],"extensions":[],"messages":[{"name":"Data","longName":"Data","fullName":"vega.data.v1.Data","description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"signers","description":"","label":"repeated","type":"Signer","longType":"Signer","fullType":"vega.data.v1.Signer","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data","description":"Data holds all the properties of the data","label":"repeated","type":"Property","longType":"Property","fullType":"vega.data.v1.Property","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"matched_spec_ids","description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"broadcast_at","description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"meta_data","description":"Holds all metadata properties","label":"repeated","type":"Property","longType":"Property","fullType":"vega.data.v1.Property","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"error","description":"Error message if the data could not be sourced.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_error","defaultValue":""}]},{"name":"ETHAddress","longName":"ETHAddress","fullName":"vega.data.v1.ETHAddress","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"address","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ExternalData","longName":"ExternalData","fullName":"vega.data.v1.ExternalData","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"data","description":"","label":"","type":"Data","longType":"Data","fullType":"vega.data.v1.Data","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Property","longName":"Property","fullName":"vega.data.v1.Property","description":"Property describes one property of data spec with a key with its value.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"name","description":"Name of the property.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"Value of the property.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PubKey","longName":"PubKey","fullName":"vega.data.v1.PubKey","description":"PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Signer","longName":"Signer","fullName":"vega.data.v1.Signer","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pub_key","description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys.","label":"","type":"PubKey","longType":"PubKey","fullType":"vega.data.v1.PubKey","ismap":false,"isoneof":true,"oneofdecl":"signer","defaultValue":""},{"name":"eth_address","description":"In case of an open oracle - Ethereum address will be submitted.","label":"","type":"ETHAddress","longType":"ETHAddress","fullType":"vega.data.v1.ETHAddress","ismap":false,"isoneof":true,"oneofdecl":"signer","defaultValue":""}]}],"services":[]},{"name":"vega/data/v1/spec.proto","description":"","package":"vega.data.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"Operator","longName":"Condition.Operator","fullName":"vega.data.v1.Condition.Operator","description":"Operator describes the type of comparison.","values":[{"name":"OPERATOR_UNSPECIFIED","number":"0","description":"The default value"},{"name":"OPERATOR_EQUALS","number":"1","description":"Verify if the property values are strictly equal or not."},{"name":"OPERATOR_GREATER_THAN","number":"2","description":"Verify if the data source data value is greater than the Condition value."},{"name":"OPERATOR_GREATER_THAN_OR_EQUAL","number":"3","description":"Verify if the data source data value is greater than or equal to the Condition\nvalue."},{"name":"OPERATOR_LESS_THAN","number":"4","description":"Verify if the data source data value is less than the Condition value."},{"name":"OPERATOR_LESS_THAN_OR_EQUAL","number":"5","description":"Verify if the data source data value is less or equal to than the Condition\nvalue."}]},{"name":"Type","longName":"PropertyKey.Type","fullName":"vega.data.v1.PropertyKey.Type","description":"Type describes the data type of properties that are supported by the data source\nengine.","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":"The default value."},{"name":"TYPE_EMPTY","number":"1","description":"Any type."},{"name":"TYPE_INTEGER","number":"2","description":"Integer type."},{"name":"TYPE_STRING","number":"3","description":"String type."},{"name":"TYPE_BOOLEAN","number":"4","description":"Boolean type."},{"name":"TYPE_DECIMAL","number":"5","description":"Any floating point decimal type."},{"name":"TYPE_TIMESTAMP","number":"6","description":"Timestamp date type."}]}],"extensions":[],"messages":[{"name":"Condition","longName":"Condition","fullName":"vega.data.v1.Condition","description":"Condition describes the condition that must be validated by the network","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"operator","description":"Type of comparison to make on the value.","label":"","type":"Operator","longType":"Condition.Operator","fullType":"vega.data.v1.Condition.Operator","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"Value to be compared with by the operator.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Filter","longName":"Filter","fullName":"vega.data.v1.Filter","description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"Data source's data property key targeted by the filter.","label":"","type":"PropertyKey","longType":"PropertyKey","fullType":"vega.data.v1.PropertyKey","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"conditions","description":"Conditions that should be matched by the data to be\nconsidered of interest.","label":"repeated","type":"Condition","longType":"Condition","fullType":"vega.data.v1.Condition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"InternalTimeTrigger","longName":"InternalTimeTrigger","fullName":"vega.data.v1.InternalTimeTrigger","description":"Trigger for an internal time data source.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"initial","description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_initial","defaultValue":""},{"name":"every","description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PropertyKey","longName":"PropertyKey","fullName":"vega.data.v1.PropertyKey","description":"PropertyKey describes the property key contained in data source data.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"name","description":"Name of the property.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Data type of the property.","label":"","type":"Type","longType":"PropertyKey.Type","fullType":"vega.data.v1.PropertyKey.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"number_decimal_places","description":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_number_decimal_places","defaultValue":""}]}],"services":[]},{"name":"vega/data_source.proto","description":"","package":"vega","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"Status","longName":"DataSourceSpec.Status","fullName":"vega.DataSourceSpec.Status","description":"Status describe the status of the data source spec","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Default value."},{"name":"STATUS_ACTIVE","number":"1","description":"STATUS_ACTIVE describes an active data source spec."},{"name":"STATUS_DEACTIVATED","number":"2","description":"STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore."}]}],"extensions":[],"messages":[{"name":"DataSourceDefinition","longName":"DataSourceDefinition","fullName":"vega.DataSourceDefinition","description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"internal","description":"","label":"","type":"DataSourceDefinitionInternal","longType":"DataSourceDefinitionInternal","fullType":"vega.DataSourceDefinitionInternal","ismap":false,"isoneof":true,"oneofdecl":"source_type","defaultValue":""},{"name":"external","description":"","label":"","type":"DataSourceDefinitionExternal","longType":"DataSourceDefinitionExternal","fullType":"vega.DataSourceDefinitionExternal","ismap":false,"isoneof":true,"oneofdecl":"source_type","defaultValue":""}]},{"name":"DataSourceDefinitionExternal","longName":"DataSourceDefinitionExternal","fullName":"vega.DataSourceDefinitionExternal","description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"oracle","description":"","label":"","type":"DataSourceSpecConfiguration","longType":"DataSourceSpecConfiguration","fullType":"vega.DataSourceSpecConfiguration","ismap":false,"isoneof":true,"oneofdecl":"source_type","defaultValue":""},{"name":"eth_oracle","description":"Contains the data specification that is received from Ethereum sources.","label":"","type":"EthCallSpec","longType":"EthCallSpec","fullType":"vega.EthCallSpec","ismap":false,"isoneof":true,"oneofdecl":"source_type","defaultValue":""}]},{"name":"DataSourceDefinitionInternal","longName":"DataSourceDefinitionInternal","fullName":"vega.DataSourceDefinitionInternal","description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"time","description":"","label":"","type":"DataSourceSpecConfigurationTime","longType":"DataSourceSpecConfigurationTime","fullType":"vega.DataSourceSpecConfigurationTime","ismap":false,"isoneof":true,"oneofdecl":"source_type","defaultValue":""},{"name":"time_trigger","description":"","label":"","type":"DataSourceSpecConfigurationTimeTrigger","longType":"DataSourceSpecConfigurationTimeTrigger","fullType":"vega.DataSourceSpecConfigurationTimeTrigger","ismap":false,"isoneof":true,"oneofdecl":"source_type","defaultValue":""}]},{"name":"DataSourceSpec","longName":"DataSourceSpec","fullName":"vega.DataSourceSpec","description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Hash generated from the DataSpec data.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_at","description":"Creation date and time","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Last Updated timestamp","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data","description":"","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status describes the status of the data source spec","label":"","type":"Status","longType":"DataSourceSpec.Status","fullType":"vega.DataSourceSpec.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DataSourceSpecConfiguration","longName":"DataSourceSpecConfiguration","fullName":"vega.DataSourceSpecConfiguration","description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"signers","description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","label":"repeated","type":"Signer","longType":"data.v1.Signer","fullType":"vega.data.v1.Signer","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"filters","description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","label":"repeated","type":"Filter","longType":"data.v1.Filter","fullType":"vega.data.v1.Filter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DataSourceSpecConfigurationTime","longName":"DataSourceSpecConfigurationTime","fullName":"vega.DataSourceSpecConfigurationTime","description":"Internal data source used for emitting timestamps.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"conditions","description":"Conditions that the timestamps should meet in order to be considered.","label":"repeated","type":"Condition","longType":"data.v1.Condition","fullType":"vega.data.v1.Condition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DataSourceSpecConfigurationTimeTrigger","longName":"DataSourceSpecConfigurationTimeTrigger","fullName":"vega.DataSourceSpecConfigurationTimeTrigger","description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"conditions","description":"Conditions that the timestamps need to meet in order to be considered.","label":"repeated","type":"Condition","longType":"data.v1.Condition","fullType":"vega.data.v1.Condition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"triggers","description":"An internal time trigger","label":"repeated","type":"InternalTimeTrigger","longType":"data.v1.InternalTimeTrigger","fullType":"vega.data.v1.InternalTimeTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthCallSpec","longName":"EthCallSpec","fullName":"vega.EthCallSpec","description":"Specifies a data source that derives its content from calling a read method\non an Ethereum contract.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"address","description":"Ethereum address of the contract to call.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"abi","description":"The ABI of that contract.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"method","description":"Name of the method on the contract to call.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"args","description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","label":"repeated","type":"Value","longType":"google.protobuf.Value","fullType":"google.protobuf.Value","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trigger","description":"Conditions for determining when to call the contract method.","label":"","type":"EthCallTrigger","longType":"EthCallTrigger","fullType":"vega.EthCallTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_confirmations","description":"Number of confirmations required before the query is considered verified","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"filters","description":"Filters the data returned from the contract method","label":"repeated","type":"Filter","longType":"data.v1.Filter","fullType":"vega.data.v1.Filter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"normalisers","description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","label":"repeated","type":"Normaliser","longType":"Normaliser","fullType":"vega.Normaliser","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"source_chain_id","description":"The ID of the EVM based chain which is to be used to source the oracle data.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthCallTrigger","longName":"EthCallTrigger","fullName":"vega.EthCallTrigger","description":"Determines when the contract method should be called.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"time_trigger","description":"","label":"","type":"EthTimeTrigger","longType":"EthTimeTrigger","fullType":"vega.EthTimeTrigger","ismap":false,"isoneof":true,"oneofdecl":"trigger","defaultValue":""}]},{"name":"EthTimeTrigger","longName":"EthTimeTrigger","fullName":"vega.EthTimeTrigger","description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"initial","description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_initial","defaultValue":""},{"name":"every","description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_every","defaultValue":""},{"name":"until","description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_until","defaultValue":""}]},{"name":"ExternalDataSourceSpec","longName":"ExternalDataSourceSpec","fullName":"vega.ExternalDataSourceSpec","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"spec","description":"","label":"","type":"DataSourceSpec","longType":"DataSourceSpec","fullType":"vega.DataSourceSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Normaliser","longName":"Normaliser","fullName":"vega.Normaliser","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"name","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expression","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SpecBindingForCompositePrice","longName":"SpecBindingForCompositePrice","fullName":"vega.SpecBindingForCompositePrice","description":"Describes which property of the data source data is to be\nused for price source.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"price_source_property","description":"The property name of price.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/markets.proto","description":"","package":"vega","hasEnums":true,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"CompositePriceType","longName":"CompositePriceType","fullName":"vega.CompositePriceType","description":"","values":[{"name":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","number":"0","description":""},{"name":"COMPOSITE_PRICE_TYPE_WEIGHTED","number":"1","description":"Composite price is calculated as a weighted average of the underlying mark prices."},{"name":"COMPOSITE_PRICE_TYPE_MEDIAN","number":"2","description":"Composite price is calculated as a median of the underlying mark prices."},{"name":"COMPOSITE_PRICE_TYPE_LAST_TRADE","number":"3","description":"Composite price is calculated as the last trade price."}]},{"name":"Method","longName":"LiquidityFeeSettings.Method","fullName":"vega.LiquidityFeeSettings.Method","description":"","values":[{"name":"METHOD_UNSPECIFIED","number":"0","description":""},{"name":"METHOD_MARGINAL_COST","number":"1","description":"Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake."},{"name":"METHOD_WEIGHTED_AVERAGE","number":"2","description":"Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment."},{"name":"METHOD_CONSTANT","number":"3","description":"Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee."}]},{"name":"State","longName":"Market.State","fullName":"vega.Market.State","description":"Current state of the market","values":[{"name":"STATE_UNSPECIFIED","number":"0","description":"Default value, invalid"},{"name":"STATE_PROPOSED","number":"1","description":"Governance proposal valid and accepted"},{"name":"STATE_REJECTED","number":"2","description":"Outcome of governance votes is to reject the market"},{"name":"STATE_PENDING","number":"3","description":"Governance vote passes/wins"},{"name":"STATE_CANCELLED","number":"4","description":"Market triggers cancellation condition or governance\nvotes to close before market becomes Active"},{"name":"STATE_ACTIVE","number":"5","description":"Enactment date reached and usual auction exit checks pass"},{"name":"STATE_SUSPENDED","number":"6","description":"Price monitoring or liquidity monitoring trigger"},{"name":"STATE_CLOSED","number":"7","description":"Governance vote to close (Not currently implemented)"},{"name":"STATE_TRADING_TERMINATED","number":"8","description":"Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)"},{"name":"STATE_SETTLED","number":"9","description":"Settlement triggered and completed as defined by product"},{"name":"STATE_SUSPENDED_VIA_GOVERNANCE","number":"10","description":"Market has been suspended via governance"}]},{"name":"TradingMode","longName":"Market.TradingMode","fullName":"vega.Market.TradingMode","description":"Trading mode the market is currently running, also referred to as 'market state'","values":[{"name":"TRADING_MODE_UNSPECIFIED","number":"0","description":"Default value, this is invalid"},{"name":"TRADING_MODE_CONTINUOUS","number":"1","description":"Normal trading"},{"name":"TRADING_MODE_BATCH_AUCTION","number":"2","description":"Auction trading (FBA)"},{"name":"TRADING_MODE_OPENING_AUCTION","number":"3","description":"Opening auction"},{"name":"TRADING_MODE_MONITORING_AUCTION","number":"4","description":"Auction triggered by monitoring"},{"name":"TRADING_MODE_NO_TRADING","number":"5","description":"No trading is allowed"},{"name":"TRADING_MODE_SUSPENDED_VIA_GOVERNANCE","number":"6","description":"Special auction mode triggered via governance"}]}],"extensions":[],"messages":[{"name":"AuctionDuration","longName":"AuctionDuration","fullName":"vega.AuctionDuration","description":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"duration","description":"Duration of the auction in seconds.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume","description":"Target uncrossing trading volume.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CompositePriceConfiguration","longName":"CompositePriceConfiguration","fullName":"vega.CompositePriceConfiguration","description":"Mark price configuration parameters.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"decay_weight","description":"Decay weight used for calculation of mark price.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"decay_power","description":"Decay power used for the calculation of mark price.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cash_amount","description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"source_weights","description":"Weights for each composite price data source.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"source_staleness_tolerance","description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"composite_price_type","description":"Which method is used for the calculation of the composite price for the market.","label":"","type":"CompositePriceType","longType":"CompositePriceType","fullType":"vega.CompositePriceType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_sources_spec","description":"Additional price sources to be used for index price calculation.","label":"repeated","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_sources_spec_binding","description":"List of each price source and its corresponding binding","label":"repeated","type":"SpecBindingForCompositePrice","longType":"SpecBindingForCompositePrice","fullType":"vega.SpecBindingForCompositePrice","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DataSourceSpecToFutureBinding","longName":"DataSourceSpecToFutureBinding","fullName":"vega.DataSourceSpecToFutureBinding","description":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"settlement_data_property","description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trading_termination_property","description":"Name of the property in the data source data that signals termination of trading.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DataSourceSpecToPerpetualBinding","longName":"DataSourceSpecToPerpetualBinding","fullName":"vega.DataSourceSpecToPerpetualBinding","description":"Describes which properties of the data source data is to be\nused for settlement.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"settlement_data_property","description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"settlement_schedule_property","description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FeeFactors","longName":"FeeFactors","fullName":"vega.FeeFactors","description":"Fee factors definition","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"maker_fee","description":"Market maker fee charged network wide.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"infrastructure_fee","description":"Infrastructure fee charged network wide for staking and governance.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee","description":"Liquidity fee applied per market for market making.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Fees","longName":"Fees","fullName":"vega.Fees","description":"Fees definition","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"factors","description":"Fee factors.","label":"","type":"FeeFactors","longType":"FeeFactors","fullType":"vega.FeeFactors","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee_settings","description":"Liquidity fee settings for the market describing how the fee was calculated.","label":"","type":"LiquidityFeeSettings","longType":"LiquidityFeeSettings","fullType":"vega.LiquidityFeeSettings","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Future","longName":"Future","fullName":"vega.Future","description":"Future product definition","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"settlement_asset","description":"Underlying asset for the future.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quote_name","description":"Quote name of the instrument.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_data","description":"Data source specification that describes the settlement data source filter.","label":"","type":"DataSourceSpec","longType":"DataSourceSpec","fullType":"vega.DataSourceSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_trading_termination","description":"Data source specification that describes the trading termination data source filter.","label":"","type":"DataSourceSpec","longType":"DataSourceSpec","fullType":"vega.DataSourceSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_binding","description":"Binding between the data spec and the data source.","label":"","type":"DataSourceSpecToFutureBinding","longType":"DataSourceSpecToFutureBinding","fullType":"vega.DataSourceSpecToFutureBinding","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Instrument","longName":"Instrument","fullName":"vega.Instrument","description":"Instrument definition","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Unique instrument ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"code","description":"Code for the instrument.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Name of the instrument.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metadata","description":"Collection of instrument meta-data.","label":"","type":"InstrumentMetadata","longType":"InstrumentMetadata","fullType":"vega.InstrumentMetadata","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"future","description":"Future.","label":"","type":"Future","longType":"Future","fullType":"vega.Future","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""},{"name":"spot","description":"Spot.","label":"","type":"Spot","longType":"Spot","fullType":"vega.Spot","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""},{"name":"perpetual","description":"Perpetual.","label":"","type":"Perpetual","longType":"Perpetual","fullType":"vega.Perpetual","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""}]},{"name":"InstrumentMetadata","longName":"InstrumentMetadata","fullName":"vega.InstrumentMetadata","description":"Instrument metadata definition","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tags","description":"List of 0 or more tags.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidationStrategy","longName":"LiquidationStrategy","fullName":"vega.LiquidationStrategy","description":"Liquidation strategy used when the network holds a position resulting from position resolution.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"disposal_time_step","description":"Interval, in seconds, at which the network will attempt to close its position.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"disposal_fraction","description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"full_disposal_size","description":"Size of the position that the network will try to close in a single attempt.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_fraction_consumed","description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityFeeSettings","longName":"LiquidityFeeSettings","fullName":"vega.LiquidityFeeSettings","description":"Market settings that describe how the liquidity fee is calculated.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"method","description":"Method used to calculate the market's liquidity fee.","label":"","type":"Method","longType":"LiquidityFeeSettings.Method","fullType":"vega.LiquidityFeeSettings.Method","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fee_constant","description":"Constant liquidity fee used when using the constant fee method.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_fee_constant","defaultValue":""}]},{"name":"LiquidityMonitoringParameters","longName":"LiquidityMonitoringParameters","fullName":"vega.LiquidityMonitoringParameters","description":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"target_stake_parameters","description":"Specifies parameters related to target stake calculation.","label":"","type":"TargetStakeParameters","longType":"TargetStakeParameters","fullType":"vega.TargetStakeParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"triggering_ratio","description":"Specifies the triggering ratio for entering liquidity auction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"auction_extension","description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquiditySLAParameters","longName":"LiquiditySLAParameters","fullName":"vega.LiquiditySLAParameters","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"price_range","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"commitment_min_time_fraction","description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"performance_hysteresis_epochs","description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sla_competition_factor","description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LogNormalModelParams","longName":"LogNormalModelParams","fullName":"vega.LogNormalModelParams","description":"Risk model parameters for log normal","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"mu","description":"Mu parameter, annualised growth rate of the underlying asset.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"r","description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sigma","description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LogNormalRiskModel","longName":"LogNormalRiskModel","fullName":"vega.LogNormalRiskModel","description":"Risk model for log normal","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"risk_aversion_parameter","description":"Risk Aversion Parameter.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tau","description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"params","description":"Risk model parameters for log normal.","label":"","type":"LogNormalModelParams","longType":"LogNormalModelParams","fullType":"vega.LogNormalModelParams","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarginCalculator","longName":"MarginCalculator","fullName":"vega.MarginCalculator","description":"Margin Calculator definition","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"scaling_factors","description":"Scaling factors for margin calculation.","label":"","type":"ScalingFactors","longType":"ScalingFactors","fullType":"vega.ScalingFactors","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Market","longName":"Market","fullName":"vega.Market","description":"Market definition","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Unique ID for the market.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tradable_instrument","description":"Tradable instrument configuration.","label":"","type":"TradableInstrument","longType":"TradableInstrument","fullType":"vega.TradableInstrument","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"decimal_places","description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fees","description":"Fees configuration that apply to the market.","label":"","type":"Fees","longType":"Fees","fullType":"vega.Fees","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"opening_auction","description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume).","label":"","type":"AuctionDuration","longType":"AuctionDuration","fullType":"vega.AuctionDuration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price_monitoring_settings","description":"PriceMonitoringSettings for the market.","label":"","type":"PriceMonitoringSettings","longType":"PriceMonitoringSettings","fullType":"vega.PriceMonitoringSettings","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_monitoring_parameters","description":"LiquidityMonitoringParameters for the market.","label":"","type":"LiquidityMonitoringParameters","longType":"LiquidityMonitoringParameters","fullType":"vega.LiquidityMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trading_mode","description":"Current mode of execution of the market.","label":"","type":"TradingMode","longType":"Market.TradingMode","fullType":"vega.Market.TradingMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"state","description":"Current state of the market.","label":"","type":"State","longType":"Market.State","fullType":"vega.Market.State","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_timestamps","description":"Timestamps for when the market state changes.","label":"","type":"MarketTimestamps","longType":"MarketTimestamps","fullType":"vega.MarketTimestamps","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"position_decimal_places","description":"The number of decimal places for a position.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"lp_price_range","description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"linear_slippage_factor","description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quadratic_slippage_factor","description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"parent_market_id","description":"ID of the market this market succeeds","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_parent_market_id","defaultValue":""},{"name":"insurance_pool_fraction","description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_insurance_pool_fraction","defaultValue":""},{"name":"successor_market_id","description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_successor_market_id","defaultValue":""},{"name":"liquidity_sla_params","description":"Liquidity SLA parameters for the market.","label":"optional","type":"LiquiditySLAParameters","longType":"LiquiditySLAParameters","fullType":"vega.LiquiditySLAParameters","ismap":false,"isoneof":true,"oneofdecl":"_liquidity_sla_params","defaultValue":""},{"name":"liquidation_strategy","description":"Liquidation strategy used by this market.","label":"","type":"LiquidationStrategy","longType":"LiquidationStrategy","fullType":"vega.LiquidationStrategy","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"mark_price_configuration","description":"Mark price calculation configuration.","label":"","type":"CompositePriceConfiguration","longType":"CompositePriceConfiguration","fullType":"vega.CompositePriceConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketTimestamps","longName":"MarketTimestamps","fullName":"vega.MarketTimestamps","description":"Time stamps for important times about creating, enacting etc the market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposed","description":"Time when the market is first proposed.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pending","description":"Time when the market has been voted in and began its opening auction.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"open","description":"Time when the market has left the opening auction and is ready to accept trades.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"close","description":"Time when the market closed.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Perpetual","longName":"Perpetual","fullName":"vega.Perpetual","description":"Perpetual product definition","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"settlement_asset","description":"Underlying asset for the perpetual.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quote_name","description":"Quote name of the instrument.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_funding_factor","description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"interest_rate","description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"clamp_lower_bound","description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"clamp_upper_bound","description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_schedule","description":"Data source spec describing the data source for settlement schedule.","label":"","type":"DataSourceSpec","longType":"DataSourceSpec","fullType":"vega.DataSourceSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_data","description":"Data source spec describing the data source for settlement.","label":"","type":"DataSourceSpec","longType":"DataSourceSpec","fullType":"vega.DataSourceSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_binding","description":"Binding between the data source spec and the settlement data.","label":"","type":"DataSourceSpecToPerpetualBinding","longType":"DataSourceSpecToPerpetualBinding","fullType":"vega.DataSourceSpecToPerpetualBinding","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"funding_rate_scaling_factor","description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_scaling_factor","defaultValue":""},{"name":"funding_rate_lower_bound","description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_lower_bound","defaultValue":""},{"name":"funding_rate_upper_bound","description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_upper_bound","defaultValue":""},{"name":"index_price_config","description":"Optional configuration for the index price used in funding payment calculation.","label":"optional","type":"CompositePriceConfiguration","longType":"CompositePriceConfiguration","fullType":"vega.CompositePriceConfiguration","ismap":false,"isoneof":true,"oneofdecl":"_index_price_config","defaultValue":""}]},{"name":"PriceMonitoringParameters","longName":"PriceMonitoringParameters","fullName":"vega.PriceMonitoringParameters","description":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"triggers","description":"","label":"repeated","type":"PriceMonitoringTrigger","longType":"PriceMonitoringTrigger","fullType":"vega.PriceMonitoringTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PriceMonitoringSettings","longName":"PriceMonitoringSettings","fullName":"vega.PriceMonitoringSettings","description":"PriceMonitoringSettings contains the settings for price monitoring","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"parameters","description":"Specifies price monitoring parameters to be used for price monitoring purposes.","label":"","type":"PriceMonitoringParameters","longType":"PriceMonitoringParameters","fullType":"vega.PriceMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PriceMonitoringTrigger","longName":"PriceMonitoringTrigger","fullName":"vega.PriceMonitoringTrigger","description":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"horizon","description":"Price monitoring projection horizon τ in seconds.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"probability","description":"Price monitoring probability level p.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"auction_extension","description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ScalingFactors","longName":"ScalingFactors","fullName":"vega.ScalingFactors","description":"Scaling Factors (for use in margin calculation)","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"search_level","description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"initial_margin","description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"collateral_release","description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SimpleModelParams","longName":"SimpleModelParams","fullName":"vega.SimpleModelParams","description":"Risk model parameters for simple modelling","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"factor_long","description":"Pre-defined risk factor value for long.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"factor_short","description":"Pre-defined risk factor value for short.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_move_up","description":"Pre-defined maximum price move up that the model considers as valid.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_move_down","description":"Pre-defined minimum price move down that the model considers as valid.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"probability_of_trading","description":"Pre-defined constant probability of trading.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SimpleRiskModel","longName":"SimpleRiskModel","fullName":"vega.SimpleRiskModel","description":"Risk model for simple modelling","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"params","description":"Risk model params for simple modelling.","label":"","type":"SimpleModelParams","longType":"SimpleModelParams","fullType":"vega.SimpleModelParams","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Spot","longName":"Spot","fullName":"vega.Spot","description":"Spot product definition","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"base_asset","description":"Asset ID of the underlying base asset for the spot product.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quote_asset","description":"Asset ID of the underlying quote asset for the spot product.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Name of the instrument.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TargetStakeParameters","longName":"TargetStakeParameters","fullName":"vega.TargetStakeParameters","description":"TargetStakeParameters contains parameters used in target stake calculation","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"time_window","description":"Specifies length of time window expressed in seconds for target stake calculation.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"scaling_factor","description":"Specifies scaling factors used in target stake calculation.","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TradableInstrument","longName":"TradableInstrument","fullName":"vega.TradableInstrument","description":"Tradable Instrument definition","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"instrument","description":"Details for the underlying instrument.","label":"","type":"Instrument","longType":"Instrument","fullType":"vega.Instrument","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_calculator","description":"Margin calculator for the instrument.","label":"","type":"MarginCalculator","longType":"MarginCalculator","fullType":"vega.MarginCalculator","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log_normal_risk_model","description":"Log normal.","label":"","type":"LogNormalRiskModel","longType":"LogNormalRiskModel","fullType":"vega.LogNormalRiskModel","ismap":false,"isoneof":true,"oneofdecl":"risk_model","defaultValue":""},{"name":"simple_risk_model","description":"Simple.","label":"","type":"SimpleRiskModel","longType":"SimpleRiskModel","fullType":"vega.SimpleRiskModel","ismap":false,"isoneof":true,"oneofdecl":"risk_model","defaultValue":""}]}],"services":[]},{"name":"vega/vega.proto","description":"","package":"vega","hasEnums":true,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"AccountType","longName":"AccountType","fullName":"vega.AccountType","description":"Various collateral/account types as used by Vega","values":[{"name":"ACCOUNT_TYPE_UNSPECIFIED","number":"0","description":"Default value"},{"name":"ACCOUNT_TYPE_INSURANCE","number":"1","description":"Insurance pool accounts contain insurance pool funds for a market"},{"name":"ACCOUNT_TYPE_SETTLEMENT","number":"2","description":"Settlement accounts exist only during settlement or mark-to-market"},{"name":"ACCOUNT_TYPE_MARGIN","number":"3","description":"Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change"},{"name":"ACCOUNT_TYPE_GENERAL","number":"4","description":"General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements"},{"name":"ACCOUNT_TYPE_FEES_INFRASTRUCTURE","number":"5","description":"Infrastructure accounts contain fees earned by providing infrastructure on Vega"},{"name":"ACCOUNT_TYPE_FEES_LIQUIDITY","number":"6","description":"Liquidity accounts contain fees earned by providing liquidity on Vega markets"},{"name":"ACCOUNT_TYPE_FEES_MAKER","number":"7","description":"This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place"},{"name":"ACCOUNT_TYPE_BOND","number":"9","description":"This account is created to maintain liquidity providers funds commitments"},{"name":"ACCOUNT_TYPE_EXTERNAL","number":"10","description":"External account represents an external source (deposit/withdrawal)"},{"name":"ACCOUNT_TYPE_GLOBAL_INSURANCE","number":"11","description":"Global insurance account for the asset"},{"name":"ACCOUNT_TYPE_GLOBAL_REWARD","number":"12","description":"Global reward account for the asset"},{"name":"ACCOUNT_TYPE_PENDING_TRANSFERS","number":"13","description":"Per asset account used to store pending transfers (if any)"},{"name":"ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","number":"14","description":"Per asset reward account for fees paid to makers"},{"name":"ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","number":"15","description":"Per asset reward account for fees received by makers"},{"name":"ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","number":"16","description":"Per asset reward account for fees received by liquidity providers"},{"name":"ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","number":"17","description":"Per asset reward account for market proposers when the market goes above some trading threshold"},{"name":"ACCOUNT_TYPE_HOLDING","number":"18","description":"Per asset account for holding in-flight unfilled orders' funds"},{"name":"ACCOUNT_TYPE_LP_LIQUIDITY_FEES","number":"19","description":"Network controlled liquidity provider's account, per market, to hold accrued liquidity fees."},{"name":"ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","number":"20","description":"Network controlled liquidity fees bonus distribution account, per market."},{"name":"ACCOUNT_TYPE_NETWORK_TREASURY","number":"21","description":"Network controlled treasury"},{"name":"ACCOUNT_TYPE_VESTING_REWARDS","number":"22","description":"Account holding user's rewards for the vesting period"},{"name":"ACCOUNT_TYPE_VESTED_REWARDS","number":"23","description":"Account holding user's rewards after the vesting period"},{"name":"ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","number":"24","description":"Per asset market reward account given for average position"},{"name":"ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","number":"25","description":"Per asset market reward account given for relative return"},{"name":"ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","number":"26","description":"Per asset market reward account given for return volatility"},{"name":"ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","number":"27","description":"Per asset market reward account given to validators by their ranking"},{"name":"ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","number":"28","description":"Per asset account for pending fee referral reward payouts"},{"name":"ACCOUNT_TYPE_ORDER_MARGIN","number":"29","description":"Per asset market account for party in isolated margin mode"}]},{"name":"AuctionTrigger","longName":"AuctionTrigger","fullName":"vega.AuctionTrigger","description":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","values":[{"name":"AUCTION_TRIGGER_UNSPECIFIED","number":"0","description":"Default value for AuctionTrigger, no auction triggered"},{"name":"AUCTION_TRIGGER_BATCH","number":"1","description":"Batch auction"},{"name":"AUCTION_TRIGGER_OPENING","number":"2","description":"Opening auction"},{"name":"AUCTION_TRIGGER_PRICE","number":"3","description":"Price monitoring trigger"},{"name":"AUCTION_TRIGGER_LIQUIDITY","number":"4","description":"Deprecated"},{"name":"AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","number":"5","description":"Liquidity auction due to not enough committed liquidity"},{"name":"AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","number":"6","description":"Deprecated","options":{"deprecated":true}},{"name":"AUCTION_TRIGGER_GOVERNANCE_SUSPENSION","number":"7","description":"Market is suspended and put into auction via governance"}]},{"name":"ChainStatus","longName":"ChainStatus","fullName":"vega.ChainStatus","description":"Vega blockchain status as reported by the node the caller is connected to","values":[{"name":"CHAIN_STATUS_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"CHAIN_STATUS_DISCONNECTED","number":"1","description":"Blockchain is disconnected"},{"name":"CHAIN_STATUS_REPLAYING","number":"2","description":"Blockchain is replaying historic transactions"},{"name":"CHAIN_STATUS_CONNECTED","number":"3","description":"Blockchain is connected and receiving transactions"}]},{"name":"Status","longName":"Deposit.Status","fullName":"vega.Deposit.Status","description":"Status of the deposit","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"STATUS_OPEN","number":"1","description":"Deposit is being processed by the network"},{"name":"STATUS_CANCELLED","number":"2","description":"Deposit has been cancelled by the network"},{"name":"STATUS_FINALIZED","number":"3","description":"Deposit has been finalised and accounts have been updated"}]},{"name":"DispatchMetric","longName":"DispatchMetric","fullName":"vega.DispatchMetric","description":"","values":[{"name":"DISPATCH_METRIC_UNSPECIFIED","number":"0","description":""},{"name":"DISPATCH_METRIC_MAKER_FEES_PAID","number":"1","description":"Dispatch metric that uses the total maker fees paid in the market"},{"name":"DISPATCH_METRIC_MAKER_FEES_RECEIVED","number":"2","description":"Dispatch metric that uses the total maker fees received in the market"},{"name":"DISPATCH_METRIC_LP_FEES_RECEIVED","number":"3","description":"Dispatch metric that uses the total LP fees received in the market"},{"name":"DISPATCH_METRIC_MARKET_VALUE","number":"4","description":"Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet"},{"name":"DISPATCH_METRIC_AVERAGE_POSITION","number":"5","description":"Dispatch metric that uses the time weighted average position"},{"name":"DISPATCH_METRIC_RELATIVE_RETURN","number":"6","description":"Dispatch metric that uses the relative PNL of the party in the market"},{"name":"DISPATCH_METRIC_RETURN_VOLATILITY","number":"7","description":"Dispatch metric that uses return volatility of the party in the market"},{"name":"DISPATCH_METRIC_VALIDATOR_RANKING","number":"8","description":"Dispatch metric that uses the validator ranking of the validator as metric"}]},{"name":"DistributionStrategy","longName":"DistributionStrategy","fullName":"vega.DistributionStrategy","description":"","values":[{"name":"DISTRIBUTION_STRATEGY_UNSPECIFIED","number":"0","description":""},{"name":"DISTRIBUTION_STRATEGY_PRO_RATA","number":"1","description":"Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has."},{"name":"DISTRIBUTION_STRATEGY_RANK","number":"2","description":"Rewards funded using the party rank."}]},{"name":"EntityScope","longName":"EntityScope","fullName":"vega.EntityScope","description":"","values":[{"name":"ENTITY_SCOPE_UNSPECIFIED","number":"0","description":""},{"name":"ENTITY_SCOPE_INDIVIDUALS","number":"1","description":"Rewards must be distributed directly to eligible parties."},{"name":"ENTITY_SCOPE_TEAMS","number":"2","description":"Rewards must be distributed to directly eligible teams, and then amongst team members"}]},{"name":"EpochAction","longName":"EpochAction","fullName":"vega.EpochAction","description":"What epoch action has occurred","values":[{"name":"EPOCH_ACTION_UNSPECIFIED","number":"0","description":""},{"name":"EPOCH_ACTION_START","number":"1","description":"Epoch update is for a new epoch."},{"name":"EPOCH_ACTION_END","number":"2","description":"Epoch update is for the end of an epoch."}]},{"name":"IndividualScope","longName":"IndividualScope","fullName":"vega.IndividualScope","description":"","values":[{"name":"INDIVIDUAL_SCOPE_UNSPECIFIED","number":"0","description":""},{"name":"INDIVIDUAL_SCOPE_ALL","number":"1","description":"All parties on the network are within the scope of this reward."},{"name":"INDIVIDUAL_SCOPE_IN_TEAM","number":"2","description":"All parties that are part of a team are within the scope of this reward."},{"name":"INDIVIDUAL_SCOPE_NOT_IN_TEAM","number":"3","description":"All parties that are not part of a team are within the scope of this reward."}]},{"name":"Interval","longName":"Interval","fullName":"vega.Interval","description":"Represents a set of time intervals that are used when querying for candle-stick data","values":[{"name":"INTERVAL_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"INTERVAL_BLOCK","number":"-1","description":"Block interval is not a fixed amount of time, rather it is used to indicate grouping of events that occur in a single block. It is usually about a second."},{"name":"INTERVAL_I1M","number":"60","description":"1 minute."},{"name":"INTERVAL_I5M","number":"300","description":"5 minutes."},{"name":"INTERVAL_I15M","number":"900","description":"15 minutes."},{"name":"INTERVAL_I30M","number":"1800","description":"30 minutes."},{"name":"INTERVAL_I1H","number":"3600","description":"1 hour."},{"name":"INTERVAL_I4H","number":"14400","description":"4 hours."},{"name":"INTERVAL_I6H","number":"21600","description":"6 hours."},{"name":"INTERVAL_I8H","number":"28800","description":"8 hours."},{"name":"INTERVAL_I12H","number":"43200","description":"12 hours."},{"name":"INTERVAL_I1D","number":"86400","description":"1 day."},{"name":"INTERVAL_I7D","number":"604800","description":"7 days."}]},{"name":"Status","longName":"LiquidityProvision.Status","fullName":"vega.LiquidityProvision.Status","description":"Status of a liquidity provision.","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Always invalid"},{"name":"STATUS_ACTIVE","number":"1","description":"Liquidity provision is active"},{"name":"STATUS_STOPPED","number":"2","description":"Liquidity provision was stopped by the network"},{"name":"STATUS_CANCELLED","number":"3","description":"Liquidity provision was cancelled by the liquidity provider"},{"name":"STATUS_REJECTED","number":"4","description":"Liquidity provision was invalid and got rejected"},{"name":"STATUS_UNDEPLOYED","number":"5","description":"Liquidity provision is valid and accepted by network, but orders aren't deployed"},{"name":"STATUS_PENDING","number":"6","description":"Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties."}]},{"name":"MarginMode","longName":"MarginMode","fullName":"vega.MarginMode","description":"","values":[{"name":"MARGIN_MODE_UNSPECIFIED","number":"0","description":"Never valid."},{"name":"MARGIN_MODE_CROSS_MARGIN","number":"1","description":"Cross margin mode - margin is dynamically acquired and released as a position is marked to market"},{"name":"MARGIN_MODE_ISOLATED_MARGIN","number":"2","description":"Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed"}]},{"name":"NodeStatus","longName":"NodeStatus","fullName":"vega.NodeStatus","description":"Node status type","values":[{"name":"NODE_STATUS_UNSPECIFIED","number":"0","description":""},{"name":"NODE_STATUS_VALIDATOR","number":"1","description":"Node is a validating node"},{"name":"NODE_STATUS_NON_VALIDATOR","number":"2","description":"Node is a non-validating node"}]},{"name":"Status","longName":"Order.Status","fullName":"vega.Order.Status","description":"Status values for an order","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"STATUS_ACTIVE","number":"1","description":"Used for active unfilled or partially filled orders"},{"name":"STATUS_EXPIRED","number":"2","description":"Used for expired GTT orders"},{"name":"STATUS_CANCELLED","number":"3","description":"Used for orders cancelled by the party that created the order"},{"name":"STATUS_STOPPED","number":"4","description":"Used for unfilled FOK or IOC orders, and for orders that were stopped by the network"},{"name":"STATUS_FILLED","number":"5","description":"Used for closed fully filled orders"},{"name":"STATUS_REJECTED","number":"6","description":"Used for orders when not enough collateral was available to fill the margin requirements"},{"name":"STATUS_PARTIALLY_FILLED","number":"7","description":"Used for closed partially filled IOC orders"},{"name":"STATUS_PARKED","number":"8","description":"Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)"}]},{"name":"TimeInForce","longName":"Order.TimeInForce","fullName":"vega.Order.TimeInForce","description":"Time In Force for an order","values":[{"name":"TIME_IN_FORCE_UNSPECIFIED","number":"0","description":"Default value for TimeInForce, can be valid for an amend"},{"name":"TIME_IN_FORCE_GTC","number":"1","description":"Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled"},{"name":"TIME_IN_FORCE_GTT","number":"2","description":"Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry"},{"name":"TIME_IN_FORCE_IOC","number":"3","description":"Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)"},{"name":"TIME_IN_FORCE_FOK","number":"4","description":"Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade"},{"name":"TIME_IN_FORCE_GFA","number":"5","description":"Good for auction, this order is only accepted during an auction period"},{"name":"TIME_IN_FORCE_GFN","number":"6","description":"Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)"}]},{"name":"Type","longName":"Order.Type","fullName":"vega.Order.Type","description":"Type values for an order","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"TYPE_LIMIT","number":"1","description":"Used for Limit orders"},{"name":"TYPE_MARKET","number":"2","description":"Used for Market orders"},{"name":"TYPE_NETWORK","number":"3","description":"Used for orders where the initiating party is the network (with distressed parties)"}]},{"name":"OrderError","longName":"OrderError","fullName":"vega.OrderError","description":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","values":[{"name":"ORDER_ERROR_UNSPECIFIED","number":"0","description":"Default value, no error reported"},{"name":"ORDER_ERROR_INVALID_MARKET_ID","number":"1","description":"Order was submitted for a market that does not exist"},{"name":"ORDER_ERROR_INVALID_ORDER_ID","number":"2","description":"Order was submitted with an invalid ID"},{"name":"ORDER_ERROR_OUT_OF_SEQUENCE","number":"3","description":"Order was amended with a sequence number that was not previous version + 1"},{"name":"ORDER_ERROR_INVALID_REMAINING_SIZE","number":"4","description":"Order was amended with an invalid remaining size (e.g. remaining greater than total size)"},{"name":"ORDER_ERROR_TIME_FAILURE","number":"5","description":"Node was unable to get Vega (blockchain) time"},{"name":"ORDER_ERROR_REMOVAL_FAILURE","number":"6","description":"Failed to remove an order from the book"},{"name":"ORDER_ERROR_INVALID_EXPIRATION_DATETIME","number":"7","description":"Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid"},{"name":"ORDER_ERROR_INVALID_ORDER_REFERENCE","number":"8","description":"Order was submitted or amended with an invalid reference field"},{"name":"ORDER_ERROR_EDIT_NOT_ALLOWED","number":"9","description":"Order amend was submitted for an order field that cannot not be amended (e.g. order ID)"},{"name":"ORDER_ERROR_AMEND_FAILURE","number":"10","description":"Amend failure because amend details do not match original order"},{"name":"ORDER_ERROR_NOT_FOUND","number":"11","description":"Order not found in an order book or store"},{"name":"ORDER_ERROR_INVALID_PARTY_ID","number":"12","description":"Order was submitted with an invalid or missing party ID"},{"name":"ORDER_ERROR_MARKET_CLOSED","number":"13","description":"Order was submitted for a market that has closed"},{"name":"ORDER_ERROR_MARGIN_CHECK_FAILED","number":"14","description":"Order was submitted, but the party did not have enough collateral to cover the order"},{"name":"ORDER_ERROR_MISSING_GENERAL_ACCOUNT","number":"15","description":"Order was submitted, but the party did not have an account for this asset"},{"name":"ORDER_ERROR_INTERNAL_ERROR","number":"16","description":"Unspecified internal error"},{"name":"ORDER_ERROR_INVALID_SIZE","number":"17","description":"Order was submitted with an invalid or missing size (e.g. 0)"},{"name":"ORDER_ERROR_INVALID_PERSISTENCE","number":"18","description":"Order was submitted with an invalid persistence for its type"},{"name":"ORDER_ERROR_INVALID_TYPE","number":"19","description":"Order was submitted with an invalid type field"},{"name":"ORDER_ERROR_SELF_TRADING","number":"20","description":"Order was stopped as it would have traded with another order submitted from the same party"},{"name":"ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","number":"21","description":"Order was submitted, but the party did not have enough collateral to cover the fees for the order"},{"name":"ORDER_ERROR_INCORRECT_MARKET_TYPE","number":"22","description":"Order was submitted with an incorrect or invalid market type"},{"name":"ORDER_ERROR_INVALID_TIME_IN_FORCE","number":"23","description":"Order was submitted with invalid time in force"},{"name":"ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","number":"24","description":"Good For Normal order has reached the market when it is in auction mode"},{"name":"ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","number":"25","description":"Good For Auction order has reached the market when it is in continuous trading mode"},{"name":"ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","number":"26","description":"Attempt to amend order to GTT without ExpiryAt"},{"name":"ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","number":"27","description":"Attempt to amend ExpiryAt to a value before CreatedAt"},{"name":"ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","number":"28","description":"Attempt to amend to GTC without an ExpiryAt value"},{"name":"ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","number":"29","description":"Amending to FOK or IOC is invalid"},{"name":"ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","number":"30","description":"Amending to GFA or GFN is invalid"},{"name":"ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","number":"31","description":"Amending from GFA or GFN is invalid"},{"name":"ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","number":"32","description":"IOC orders are not allowed during auction"},{"name":"ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","number":"33","description":"FOK orders are not allowed during auction"},{"name":"ORDER_ERROR_MUST_BE_LIMIT_ORDER","number":"34","description":"Pegged orders must be LIMIT orders"},{"name":"ORDER_ERROR_MUST_BE_GTT_OR_GTC","number":"35","description":"Pegged orders can only have TIF GTC or GTT"},{"name":"ORDER_ERROR_WITHOUT_REFERENCE_PRICE","number":"36","description":"Pegged order must have a reference price"},{"name":"ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","number":"37","description":"Buy pegged order cannot reference best ask price"},{"name":"ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","number":"40","description":"Pegged order offset must be >= 0"},{"name":"ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","number":"41","description":"Sell pegged order cannot reference best bid price"},{"name":"ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","number":"42","description":"Pegged order offset must be > zero"},{"name":"ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","number":"43","description":"Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)"},{"name":"ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","number":"44","description":"Cannot amend details of a non pegged details"},{"name":"ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","number":"45","description":"Could not re-price a pegged order because a market price is unavailable"},{"name":"ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","number":"46","description":"It is not possible to amend the price of an existing pegged order"},{"name":"ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","number":"47","description":"FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds"},{"name":"ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","number":"48","description":"Unable to submit pegged order, temporarily too many pegged orders across all markets"},{"name":"ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","number":"49","description":"Post order would trade"},{"name":"ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","number":"50","description":"Post order would trade"},{"name":"ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","number":"51","description":"Isolated margin check failed"},{"name":"ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE","number":"52","description":"In isolated margin pegged orders are rejected"}]},{"name":"PeggedReference","longName":"PeggedReference","fullName":"vega.PeggedReference","description":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","values":[{"name":"PEGGED_REFERENCE_UNSPECIFIED","number":"0","description":"Default value for PeggedReference, no reference given"},{"name":"PEGGED_REFERENCE_MID","number":"1","description":"Mid price reference"},{"name":"PEGGED_REFERENCE_BEST_BID","number":"2","description":"Best bid price reference"},{"name":"PEGGED_REFERENCE_BEST_ASK","number":"3","description":"Best ask price reference"}]},{"name":"PositionStatus","longName":"PositionStatus","fullName":"vega.PositionStatus","description":"Represents the status of a position","values":[{"name":"POSITION_STATUS_UNSPECIFIED","number":"0","description":""},{"name":"POSITION_STATUS_ORDERS_CLOSED","number":"1","description":""},{"name":"POSITION_STATUS_CLOSED_OUT","number":"2","description":""},{"name":"POSITION_STATUS_DISTRESSED","number":"4","description":""}]},{"name":"Side","longName":"Side","fullName":"vega.Side","description":"Side relates to the direction of an order, to Buy, or Sell","values":[{"name":"SIDE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"SIDE_BUY","number":"1","description":"Buy order"},{"name":"SIDE_SELL","number":"2","description":"Sell order"}]},{"name":"ExpiryStrategy","longName":"StopOrder.ExpiryStrategy","fullName":"vega.StopOrder.ExpiryStrategy","description":"","values":[{"name":"EXPIRY_STRATEGY_UNSPECIFIED","number":"0","description":"Never valid"},{"name":"EXPIRY_STRATEGY_CANCELS","number":"1","description":"Stop order should be cancelled if the expiry time is reached."},{"name":"EXPIRY_STRATEGY_SUBMIT","number":"2","description":"Order should be submitted if the expiry time is reached."}]},{"name":"RejectionReason","longName":"StopOrder.RejectionReason","fullName":"vega.StopOrder.RejectionReason","description":"","values":[{"name":"REJECTION_REASON_UNSPECIFIED","number":"0","description":"Never valid"},{"name":"REJECTION_REASON_TRADING_NOT_ALLOWED","number":"1","description":"Trading is not allowed yet"},{"name":"REJECTION_REASON_EXPIRY_IN_THE_PAST","number":"2","description":"Expiry of the stop order is in the past"},{"name":"REJECTION_REASON_MUST_BE_REDUCE_ONLY","number":"3","description":"Stop orders submission must be reduce only"},{"name":"REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","number":"4","description":"Party has reached the maximum stop orders allowed for this market"},{"name":"REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","number":"5","description":"Stop orders are not allowed if there is no open position"},{"name":"REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION","number":"6","description":"This stop order does not close the position"},{"name":"REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID","number":"7","description":"The percentage value for the linked stop order is invalid"},{"name":"REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION","number":"8","description":"Stop orders are not allowed during the opening auction"},{"name":"REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES","number":"9","description":"Stop OCO orders cannot have the same expiry timestamp"}]},{"name":"SizeOverrideSetting","longName":"StopOrder.SizeOverrideSetting","fullName":"vega.StopOrder.SizeOverrideSetting","description":"","values":[{"name":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","number":"0","description":"Never valid"},{"name":"SIZE_OVERRIDE_SETTING_NONE","number":"1","description":"No override, the size within the contained normal order submission will be used"},{"name":"SIZE_OVERRIDE_SETTING_POSITION","number":"2","description":"Use the total position of the trader"}]},{"name":"Status","longName":"StopOrder.Status","fullName":"vega.StopOrder.Status","description":"","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Never valid"},{"name":"STATUS_PENDING","number":"1","description":"Pending to be executed once the trigger is breached"},{"name":"STATUS_CANCELLED","number":"2","description":"Cancelled by the user"},{"name":"STATUS_STOPPED","number":"3","description":"Stopped by the network, e.g: OCO on the other side has been triggered"},{"name":"STATUS_TRIGGERED","number":"4","description":"Stop order has been triggered and generated an order"},{"name":"STATUS_EXPIRED","number":"5","description":"Stop order has expired"},{"name":"STATUS_REJECTED","number":"6","description":"Stop order was rejected at submission"}]},{"name":"TriggerDirection","longName":"StopOrder.TriggerDirection","fullName":"vega.StopOrder.TriggerDirection","description":"","values":[{"name":"TRIGGER_DIRECTION_UNSPECIFIED","number":"0","description":"Never valid"},{"name":"TRIGGER_DIRECTION_RISES_ABOVE","number":"1","description":"Stop order is triggered once the price rises above a certain level"},{"name":"TRIGGER_DIRECTION_FALLS_BELOW","number":"2","description":"Stop order is triggered once the price falls below a certain level"}]},{"name":"Type","longName":"Trade.Type","fullName":"vega.Trade.Type","description":"Type values for a trade","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"TYPE_DEFAULT","number":"1","description":"Normal trading between two parties"},{"name":"TYPE_NETWORK_CLOSE_OUT_GOOD","number":"2","description":"Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties"},{"name":"TYPE_NETWORK_CLOSE_OUT_BAD","number":"3","description":"Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party"}]},{"name":"TransferType","longName":"TransferType","fullName":"vega.TransferType","description":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","values":[{"name":"TRANSFER_TYPE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"TRANSFER_TYPE_LOSS","number":"1","description":"Funds deducted after final settlement loss"},{"name":"TRANSFER_TYPE_WIN","number":"2","description":"Funds added to general account after final settlement gain"},{"name":"TRANSFER_TYPE_MTM_LOSS","number":"4","description":"Funds deducted from margin account after mark to market loss"},{"name":"TRANSFER_TYPE_MTM_WIN","number":"5","description":"Funds added to margin account after mark to market gain"},{"name":"TRANSFER_TYPE_MARGIN_LOW","number":"6","description":"Funds transferred from general account to meet margin requirement"},{"name":"TRANSFER_TYPE_MARGIN_HIGH","number":"7","description":"Excess margin amount returned to general account"},{"name":"TRANSFER_TYPE_MARGIN_CONFISCATED","number":"8","description":"Margin confiscated from margin account to fulfil closeout"},{"name":"TRANSFER_TYPE_MAKER_FEE_PAY","number":"9","description":"Maker fee paid from general account"},{"name":"TRANSFER_TYPE_MAKER_FEE_RECEIVE","number":"10","description":"Maker fee received into general account"},{"name":"TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","number":"11","description":"Infrastructure fee paid from general account"},{"name":"TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","number":"12","description":"Infrastructure fee received into general account"},{"name":"TRANSFER_TYPE_LIQUIDITY_FEE_PAY","number":"13","description":"Liquidity fee paid from general account"},{"name":"TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","number":"14","description":"Liquidity fee received into general account"},{"name":"TRANSFER_TYPE_BOND_LOW","number":"15","description":"Bond account funded from general account to meet required bond amount"},{"name":"TRANSFER_TYPE_BOND_HIGH","number":"16","description":"Bond returned to general account after liquidity commitment was reduced"},{"name":"TRANSFER_TYPE_WITHDRAW","number":"18","description":"Funds withdrawn from general account"},{"name":"TRANSFER_TYPE_DEPOSIT","number":"19","description":"Funds deposited to general account"},{"name":"TRANSFER_TYPE_BOND_SLASHING","number":"20","description":"Bond account penalised when liquidity commitment not met"},{"name":"TRANSFER_TYPE_REWARD_PAYOUT","number":"21","description":"Reward payout received"},{"name":"TRANSFER_TYPE_TRANSFER_FUNDS_SEND","number":"22","description":"Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool"},{"name":"TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","number":"23","description":"Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account"},{"name":"TRANSFER_TYPE_CLEAR_ACCOUNT","number":"24","description":"Market-related accounts emptied because market has closed"},{"name":"TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","number":"25","description":"Balances restored after network restart"},{"name":"TRANSFER_TYPE_SPOT","number":"26","description":"Spot trade delivery"},{"name":"TRANSFER_TYPE_HOLDING_LOCK","number":"27","description":"An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account."},{"name":"TRANSFER_TYPE_HOLDING_RELEASE","number":"28","description":"An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account."},{"name":"TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","number":"29","description":"Insurance pool fraction transfer from parent to successor market."},{"name":"TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","number":"30","description":"Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account."},{"name":"TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","number":"31","description":"Distributes net fee earnings from liquidity provider's fee account to their general account."},{"name":"TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","number":"32","description":"Applies SLA penalty by moving funds from party's bond account to market's insurance pool."},{"name":"TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","number":"33","description":"Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool."},{"name":"TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","number":"34","description":"Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account."},{"name":"TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","number":"35","description":"Distributes performance bonus from market bonus to liquidity provider's general account."},{"name":"TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","number":"36","description":"Funds deducted from margin account after a perpetuals funding loss."},{"name":"TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","number":"37","description":"Funds added to margin account after a perpetuals funding gain."},{"name":"TRANSFER_TYPE_REWARDS_VESTED","number":"38","description":"Funds moved from the vesting account to the vested account once the vesting period is reached."},{"name":"TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","number":"39","description":"Fee referrer reward paid from general account."},{"name":"TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","number":"44","description":"Fee referrer reward received into general account of the referrer."},{"name":"TRANSFER_TYPE_ORDER_MARGIN_LOW","number":"45","description":"Funds transferred from general account to meet order margin requirement in isolated margin mode."},{"name":"TRANSFER_TYPE_ORDER_MARGIN_HIGH","number":"46","description":"Excess order margin amount returned to general account."},{"name":"TRANSFER_TYPE_ISOLATED_MARGIN_LOW","number":"47","description":"Transfer from order margin account to margin account due to increase of position."},{"name":"TRANSFER_TYPE_ISOLATED_MARGIN_HIGH","number":"48","description":"Transfer from excess order margin account to general account."}]},{"name":"ValidatorNodeStatus","longName":"ValidatorNodeStatus","fullName":"vega.ValidatorNodeStatus","description":"Validation status of the node","values":[{"name":"VALIDATOR_NODE_STATUS_UNSPECIFIED","number":"0","description":""},{"name":"VALIDATOR_NODE_STATUS_TENDERMINT","number":"1","description":"Node is a tendermint validator"},{"name":"VALIDATOR_NODE_STATUS_ERSATZ","number":"2","description":"Node is an ersatz validator"},{"name":"VALIDATOR_NODE_STATUS_PENDING","number":"3","description":"Node is a pending validator"}]},{"name":"Status","longName":"Withdrawal.Status","fullName":"vega.Withdrawal.Status","description":"Status of the withdrawal","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"STATUS_OPEN","number":"1","description":"Withdrawal is open and being processed by the network"},{"name":"STATUS_REJECTED","number":"2","description":"Withdrawal have been cancelled"},{"name":"STATUS_FINALIZED","number":"3","description":"Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network"}]}],"extensions":[],"messages":[{"name":"Account","longName":"Account","fullName":"vega.Account","description":"Represents an account for an asset on Vega for a particular owner or party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique account ID, used internally by Vega.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"owner","description":"Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance","description":"Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset ID for the account.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Account type related to this account.","label":"","type":"AccountType","longType":"AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AccountDetails","longName":"AccountDetails","fullName":"vega.AccountDetails","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"asset_id","description":"Asset ID of the asset for this account.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of the account.","label":"","type":"AccountType","longType":"AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"owner","description":"Not specified if network account.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_owner","defaultValue":""},{"name":"market_id","description":"Not specified if account is not related to a market.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""}]},{"name":"ActivityStreakBenefitTier","longName":"ActivityStreakBenefitTier","fullName":"vega.ActivityStreakBenefitTier","description":"An activity streak benefit tier","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"minimum_activity_streak","description":"Number of epochs a party must be active to receive the multiplier.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_multiplier","description":"Reward multiplier applicable to this tier.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vesting_multiplier","description":"Vesting bonus applicable to this tier.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ActivityStreakBenefitTiers","longName":"ActivityStreakBenefitTiers","fullName":"vega.ActivityStreakBenefitTiers","description":"A list of activity streak benefit tiers","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tiers","description":"Defined benefit tiers ordered by increasing reward multipliers.","label":"repeated","type":"ActivityStreakBenefitTier","longType":"ActivityStreakBenefitTier","fullType":"vega.ActivityStreakBenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AuctionIndicativeState","longName":"AuctionIndicativeState","fullName":"vega.AuctionIndicativeState","description":"AuctionIndicativeState is used to emit an event with the indicative price/volume per market during an auction","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for which this state relates to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"indicative_price","description":"Indicative uncrossing price is the price at which all trades would occur if the auction uncrossed now.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"indicative_volume","description":"Indicative uncrossing volume is the volume available at the indicative crossing price if the auction uncrossed now.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"auction_start","description":"Timestamp at which the auction started.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"auction_end","description":"Timestamp at which the auction is meant to stop.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BenefitTier","longName":"BenefitTier","fullName":"vega.BenefitTier","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"minimum_running_notional_taker_volume","description":"Required running notional taker volume in quantum units for parties\nto access this tier.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"minimum_epochs","description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referral_reward_factor","description":"Proportion of the referee's taker fees to be rewarded to the referrer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referral_discount_factor","description":"Proportion of the referee's taker fees to be discounted.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Candle","longName":"Candle","fullName":"vega.Candle","description":"Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"timestamp","description":"Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"datetime","description":"ISO-8601 datetime with nanosecond precision for when the candle was last updated.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"high","description":"Highest price for trading during the candle interval. This field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"low","description":"Lowest price for trading during the candle interval. This field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"open","description":"Open trade price. This field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"close","description":"Closing trade price. This field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume","description":"Total trading volume during the candle interval.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"interval","description":"Time interval for the candle.","label":"","type":"Interval","longType":"Interval","fullType":"vega.Interval","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"notional","description":"Total notional value traded during the candle interval.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Delegation","longName":"Delegation","fullName":"vega.Delegation","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"Party which is delegating.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"node_id","description":"Node ID to delegate to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch of delegation.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Deposit","longName":"Deposit","fullName":"vega.Deposit","description":"Deposit on to the Vega network","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique ID for the deposit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the deposit.","label":"","type":"Status","longType":"Deposit.Status","fullType":"vega.Deposit.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID of the user initiating the deposit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Vega asset targeted by this deposit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"Hash of the transaction from the foreign chain.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"credited_timestamp","description":"Timestamp for when the Vega account was updated with the deposit.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_timestamp","description":"Timestamp for when the deposit was created on the Vega network.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DispatchStrategy","longName":"DispatchStrategy","fullName":"vega.DispatchStrategy","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_for_metric","description":"Asset to use for metric.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metric","description":"Metric to apply.","label":"","type":"DispatchMetric","longType":"DispatchMetric","fullType":"vega.DispatchMetric","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"markets","description":"Optional markets in scope.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"entity_scope","description":"Mandatory enum that defines the entities within scope.","label":"","type":"EntityScope","longType":"EntityScope","fullType":"vega.EntityScope","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"individual_scope","description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded.","label":"","type":"IndividualScope","longType":"IndividualScope","fullType":"vega.IndividualScope","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team_scope","description":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"n_top_performers","description":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staking_requirement","description":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"notional_time_weighted_average_position_requirement","description":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"window_length","description":"Number of epochs to evaluate the metric on","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"lock_period","description":"Number of epochs after distribution to delay vesting of rewards by","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"distribution_strategy","description":"Controls how the reward is distributed between qualifying parties","label":"","type":"DistributionStrategy","longType":"DistributionStrategy","fullType":"vega.DistributionStrategy","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rank_table","description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","label":"repeated","type":"Rank","longType":"Rank","fullType":"vega.Rank","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Epoch","longName":"Epoch","fullName":"vega.Epoch","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"seq","description":"Sequence is used as epoch ID.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamps","description":"Timestamps for start/end etc.","label":"","type":"EpochTimestamps","longType":"EpochTimestamps","fullType":"vega.EpochTimestamps","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validators","description":"Validators that participated in this epoch.","label":"repeated","type":"Node","longType":"Node","fullType":"vega.Node","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"delegations","description":"List of all delegations in epoch.","label":"repeated","type":"Delegation","longType":"Delegation","fullType":"vega.Delegation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EpochData","longName":"EpochData","fullName":"vega.EpochData","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"total","description":"Total number of epochs since node was created.","label":"","type":"int32","longType":"int32","fullType":"int32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"offline","description":"Total number of offline epochs since node was created.","label":"","type":"int32","longType":"int32","fullType":"int32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"online","description":"Total number of online epochs since node was created.","label":"","type":"int32","longType":"int32","fullType":"int32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EpochParticipation","longName":"EpochParticipation","fullName":"vega.EpochParticipation","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"epoch","description":"","label":"","type":"Epoch","longType":"Epoch","fullType":"vega.Epoch","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"offline","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"online","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_rewards","description":"","label":"","type":"double","longType":"double","fullType":"double","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EpochRewardSummary","longName":"EpochRewardSummary","fullName":"vega.EpochRewardSummary","description":"Details for rewards for a combination of asset, market, and reward type in a given epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"epoch","description":"Epoch in which the reward is being paid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"Asset ID in which the reward is being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID in which the reward is being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_type","description":"Type of reward being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount distributed. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EpochTimestamps","longName":"EpochTimestamps","fullName":"vega.EpochTimestamps","description":"Describes in both human readable and block time when an epoch spans","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"start_time","description":"Timestamp in Unix nanoseconds for when epoch started.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expiry_time","description":"Timestamp in Unix nanoseconds for the epoch's expiry.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_time","description":"Timestamp in Unix nanoseconds for when the epoch ended, empty if not ended.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"first_block","description":"Height of first block in the epoch.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_block","description":"Height of last block in the epoch, empty if not ended.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Erc20WithdrawExt","longName":"Erc20WithdrawExt","fullName":"vega.Erc20WithdrawExt","description":"Extension of data required for the withdraw submissions","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"receiver_address","description":"Address into which the bridge will release the funds.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ErrorDetail","longName":"ErrorDetail","fullName":"vega.ErrorDetail","description":"Represents Vega domain specific error information over gRPC/Protobuf","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"code","description":"Vega API domain specific unique error code, useful for client side mappings, e.g. 10004.","label":"","type":"int32","longType":"int32","fullType":"int32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"message","description":"Message that describes the error in more detail, should describe the problem encountered.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"inner","description":"Any inner error information that could add more context, or be helpful for error reporting.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthereumConfig","longName":"EthereumConfig","fullName":"vega.EthereumConfig","description":"Ethereum configuration details.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"network_id","description":"Network ID of this Ethereum network.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_id","description":"Chain ID of this Ethereum network.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"collateral_bridge_contract","description":"Contract configuration of the collateral bridge contract for this Ethereum network.","label":"","type":"EthereumContractConfig","longType":"EthereumContractConfig","fullType":"vega.EthereumContractConfig","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"confirmations","description":"Number of block confirmations to wait to consider an Ethereum transaction trusted.\nAn Ethereum block is trusted when there are at least \"n\" blocks confirmed by the\nnetwork, \"n\" being the number of `confirmations` required. If `confirmations` was set to `3`,\nand the current block to be forged (or mined) on Ethereum is block 14, block\n10 would be considered as trusted, but not block 11.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staking_bridge_contract","description":"Contract configuration of the stacking bridge contract for this Ethereum network.","label":"","type":"EthereumContractConfig","longType":"EthereumContractConfig","fullType":"vega.EthereumContractConfig","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"token_vesting_contract","description":"Contract configuration of the token vesting contract for this Ethereum network.","label":"","type":"EthereumContractConfig","longType":"EthereumContractConfig","fullType":"vega.EthereumContractConfig","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"multisig_control_contract","description":"Contract configuration of the multisig control contract for this Ethereum network.","label":"","type":"EthereumContractConfig","longType":"EthereumContractConfig","fullType":"vega.EthereumContractConfig","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthereumContractConfig","longName":"EthereumContractConfig","fullName":"vega.EthereumContractConfig","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"address","description":"Address of the contract for this Ethereum network. The address should start with \"0x\".","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"deployment_block_height","description":"Block height at which the stacking contract has been deployed for this Ethereum network.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthereumL2Config","longName":"EthereumL2Config","fullName":"vega.EthereumL2Config","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"network_id","description":"Network ID of this Ethereum layer 2 network.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_id","description":"Chain ID of this Ethereum layer 2 network.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"confirmations","description":"Number of block confirmations to wait to consider an Ethereum transaction trusted.\nAn Ethereum block is trusted when there are at least \"n\" blocks confirmed by the\nnetwork, \"n\" being the number of `confirmations` required. If `confirmations` was set to `3`,\nand the current block to be forged, or mined, on the L2 is block 14, block\n10 would be considered as trusted, but not block 11.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Display name of this network","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthereumL2Configs","longName":"EthereumL2Configs","fullName":"vega.EthereumL2Configs","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"configs","description":"","label":"repeated","type":"EthereumL2Config","longType":"EthereumL2Config","fullType":"vega.EthereumL2Config","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Fee","longName":"Fee","fullName":"vega.Fee","description":"Represents any fees paid by a party, resulting from a trade","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"maker_fee","description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"infrastructure_fee","description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee","description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"maker_fee_volume_discount","description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"infrastructure_fee_volume_discount","description":"Discount on infrastructure fee based on the taker volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee_volume_discount","description":"Discount on liquidity fee basedo on taker volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"maker_fee_referrer_discount","description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"infrastructure_fee_referrer_discount","description":"Discount on infrastructure fee for eligible referrer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee_referrer_discount","description":"Discount on liquidity fee for eligible referrer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FinancialAmount","longName":"FinancialAmount","fullName":"vega.FinancialAmount","description":"Asset value information used within a transfer","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"amount","description":"Unsigned integer amount of asset scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset ID the amount applies to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"IcebergOrder","longName":"IcebergOrder","fullName":"vega.IcebergOrder","description":"Details of an iceberg order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"peak_size","description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"minimum_visible_size","description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reserved_remaining","description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"KeyValueBundle","longName":"KeyValueBundle","fullName":"vega.KeyValueBundle","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tolerance","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"","label":"","type":"StateVarValue","longType":"StateVarValue","fullType":"vega.StateVarValue","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LedgerEntry","longName":"LedgerEntry","fullName":"vega.LedgerEntry","description":"Represents a ledger entry on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"from_account","description":"One or more accounts to transfer from.","label":"","type":"AccountDetails","longType":"AccountDetails","fullType":"vega.AccountDetails","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account","description":"One or more accounts to transfer to.","label":"","type":"AccountDetails","longType":"AccountDetails","fullType":"vega.AccountDetails","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Transfer type for this entry.","label":"","type":"TransferType","longType":"TransferType","fullType":"vega.TransferType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Timestamp in nanoseconds of when the ledger entry was created.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_account_balance","description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account_balance","description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transfer_id","description":"Transfer ID the ledger entry relates to.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_transfer_id","defaultValue":""}]},{"name":"LedgerMovement","longName":"LedgerMovement","fullName":"vega.LedgerMovement","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"entries","description":"All the entries for these ledger movements.","label":"repeated","type":"LedgerEntry","longType":"LedgerEntry","fullType":"vega.LedgerEntry","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balances","description":"Resulting balances once the ledger movement are applied.","label":"repeated","type":"PostTransferBalance","longType":"PostTransferBalance","fullType":"vega.PostTransferBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityOrder","longName":"LiquidityOrder","fullName":"vega.LiquidityOrder","description":"Represents a liquidity order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"reference","description":"Pegged reference point for the order.","label":"","type":"PeggedReference","longType":"PeggedReference","fullType":"vega.PeggedReference","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proportion","description":"Relative proportion of the commitment to be allocated at a price level.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"offset","description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityOrderReference","longName":"LiquidityOrderReference","fullName":"vega.LiquidityOrderReference","description":"Pair of a liquidity order and the ID of the generated order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"order_id","description":"Unique ID of the pegged order generated to fulfil this liquidity order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_order","description":"Liquidity order from the original submission.","label":"","type":"LiquidityOrder","longType":"LiquidityOrder","fullType":"vega.LiquidityOrder","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProviderFeeShare","longName":"LiquidityProviderFeeShare","fullName":"vega.LiquidityProviderFeeShare","description":"Equity like share of liquidity fee for each liquidity provider","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"Liquidity provider party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"equity_like_share","description":"Share own by this liquidity provider.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"average_entry_valuation","description":"Average entry valuation of the liquidity provider for the market.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"average_score","description":"Average liquidity score.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"virtual_stake","description":"The virtual stake of this liquidity provider.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProviderSLA","longName":"LiquidityProviderSLA","fullName":"vega.LiquidityProviderSLA","description":"SLA performance for each liquidity provider","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"Liquidity provider party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"current_epoch_fraction_of_time_on_book","description":"Indicates how often LP meets the commitment during the current epoch.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_epoch_fraction_of_time_on_book","description":"Indicates how often LP met the commitment in the previous epoch.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_epoch_fee_penalty","description":"Indicates the fee penalty amount applied in the previous epoch.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_epoch_bond_penalty","description":"Shows the bond penalties from past epochs.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"hysteresis_period_fee_penalties","description":"Determines how the fee penalties from past epochs affect future fee revenue.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_liquidity","description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"notional_volume_buys","description":"Notional volume of orders within the range provided on the buy side of the book.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"notional_volume_sells","description":"Notional volume of orders within the range provided on the sell side of the book.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvision","longName":"LiquidityProvision","fullName":"vega.LiquidityProvision","description":"Liquidity provider commitment","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique ID for the liquidity provision.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Unique party ID for the creator of the provision.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_at","description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID for the liquidity provision.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"commitment_amount","description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fee","description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sells","description":"Set of liquidity sell orders to meet the liquidity provision obligation.","label":"repeated","type":"LiquidityOrderReference","longType":"LiquidityOrderReference","fullType":"vega.LiquidityOrderReference","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buys","description":"Set of liquidity buy orders to meet the liquidity provision obligation.","label":"repeated","type":"LiquidityOrderReference","longType":"LiquidityOrderReference","fullType":"vega.LiquidityOrderReference","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"version","description":"Version of this liquidity provision.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of this liquidity provision.","label":"","type":"Status","longType":"LiquidityProvision.Status","fullType":"vega.LiquidityProvision.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"Reference shared between this liquidity provision and all its orders.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarginLevels","longName":"MarginLevels","fullName":"vega.MarginLevels","description":"Represents the margin levels for a party on a market at a given time","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"maintenance_margin","description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"search_level","description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"initial_margin","description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"collateral_release_level","description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID for whom the margin levels apply.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID for which the margin levels apply.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset ID for which the margin levels apply.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_margin","description":"Margin required to cover orders in isolated margin mode.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_mode","description":"Margin mode for the party, cross margin or isolated margin.","label":"","type":"MarginMode","longType":"MarginMode","fullType":"vega.MarginMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_factor","description":"Margin factor, relevant only for isolated margin, 0 otherwise.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketData","longName":"MarketData","fullName":"vega.MarketData","description":"Represents data generated by a market when open","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"mark_price","description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_bid_price","description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_bid_volume","description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_offer_price","description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_offer_volume","description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_static_bid_price","description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_static_bid_volume","description":"Total volume at the best static bid price excluding pegged orders.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_static_offer_price","description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_static_offer_volume","description":"Total volume at the best static offer price, excluding pegged orders.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"mid_price","description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"static_mid_price","description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market","description":"Market ID for the data","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"open_interest","description":"Sum of the size of all positions greater than zero on the market.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"auction_end","description":"Time in seconds until the end of the auction (zero if currently not in auction period).","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"auction_start","description":"Time until next auction, or start time of the current auction if market is in auction period.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"indicative_price","description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"indicative_volume","description":"Indicative volume (zero if not in auction).","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_trading_mode","description":"Current trading mode for the market.","label":"","type":"TradingMode","longType":"Market.TradingMode","fullType":"vega.Market.TradingMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trigger","description":"When a market is in an auction trading mode, this field indicates what triggered the auction.","label":"","type":"AuctionTrigger","longType":"AuctionTrigger","fullType":"vega.AuctionTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"extension_trigger","description":"When a market auction is extended, this field indicates what caused the extension.","label":"","type":"AuctionTrigger","longType":"AuctionTrigger","fullType":"vega.AuctionTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"target_stake","description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"supplied_stake","description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price_monitoring_bounds","description":"One or more price monitoring bounds for the current timestamp.","label":"repeated","type":"PriceMonitoringBounds","longType":"PriceMonitoringBounds","fullType":"vega.PriceMonitoringBounds","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_value_proxy","description":"Market value proxy.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_provider_fee_share","description":"Equity like share of liquidity fee for each liquidity provider.","label":"repeated","type":"LiquidityProviderFeeShare","longType":"LiquidityProviderFeeShare","fullType":"vega.LiquidityProviderFeeShare","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_state","description":"Current state of the market.","label":"","type":"State","longType":"Market.State","fullType":"vega.Market.State","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"next_mark_to_market","description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_traded_price","description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_growth","description":"Market growth at the last market time window.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"product_data","description":"Data related to the particular product type of the market.","label":"optional","type":"ProductData","longType":"ProductData","fullType":"vega.ProductData","ismap":false,"isoneof":true,"oneofdecl":"_product_data","defaultValue":""},{"name":"liquidity_provider_sla","description":"SLA performance for each liquidity provider.","label":"repeated","type":"LiquidityProviderSLA","longType":"LiquidityProviderSLA","fullType":"vega.LiquidityProviderSLA","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"next_network_closeout","description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"mark_price_type","description":"The method used for calculating the mark price.","label":"","type":"CompositePriceType","longType":"CompositePriceType","fullType":"vega.CompositePriceType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketDepth","longName":"MarketDepth","fullName":"vega.MarketDepth","description":"Represents market depth or order book data for the specified market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for which the depth levels apply.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buy","description":"Collection of price levels for the buy side of the book.","label":"repeated","type":"PriceLevel","longType":"PriceLevel","fullType":"vega.PriceLevel","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sell","description":"Collection of price levels for the sell side of the book.","label":"repeated","type":"PriceLevel","longType":"PriceLevel","fullType":"vega.PriceLevel","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sequence_number","description":"Sequence number for the market depth data returned.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketDepthUpdate","longName":"MarketDepthUpdate","fullName":"vega.MarketDepthUpdate","description":"Represents the changed market depth since the last update","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for which the market depth updates are for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buy","description":"Collection of updated price levels for the buy side of the book.","label":"repeated","type":"PriceLevel","longType":"PriceLevel","fullType":"vega.PriceLevel","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sell","description":"Collection of updated price levels for the sell side of the book.","label":"repeated","type":"PriceLevel","longType":"PriceLevel","fullType":"vega.PriceLevel","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sequence_number","description":"Sequence number for the market depth update data returned. It is increasing but not monotonic.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"previous_sequence_number","description":"Sequence number of the previous market depth update, for checking there are no gaps.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MatrixValue","longName":"MatrixValue","fullName":"vega.MatrixValue","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"value","description":"","label":"repeated","type":"VectorValue","longType":"VectorValue","fullType":"vega.VectorValue","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Metadata","longName":"Metadata","fullName":"vega.Metadata","description":"Generic structure holding a key/value pair.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"Key of the metadata.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"Value of the metadata.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NetworkLimits","longName":"NetworkLimits","fullName":"vega.NetworkLimits","description":"Network limits, defined in the genesis file","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"can_propose_market","description":"Are market proposals allowed at this point in time.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"can_propose_asset","description":"Are asset proposals allowed at this point in time.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"propose_market_enabled","description":"Are market proposals enabled on this chain.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"propose_asset_enabled","description":"Are asset proposals enabled on this chain.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"genesis_loaded","description":"True once the genesis file is loaded.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"propose_market_enabled_from","description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"propose_asset_enabled_from","description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"can_propose_spot_market","description":"Are spot market proposals allowed at this point in time.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"can_propose_perpetual_market","description":"Are perpetual market proposals allowed at this point in time.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NetworkParameter","longName":"NetworkParameter","fullName":"vega.NetworkParameter","description":"Represents a network parameter on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"Unique key of the network parameter.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"Value for the network parameter.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Node","longName":"Node","fullName":"vega.Node","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Node ID i.e. the node's wallet ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pub_key","description":"Public key of the node operator.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tm_pub_key","description":"Public key of Tendermint.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_address","description":"Ethereum public key of the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"info_url","description":"URL where users can find out more information on the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"location","description":"Country code for the location of the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staked_by_operator","description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staked_by_delegates","description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staked_total","description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_intended_stake","description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pending_stake","description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_data","description":"Information about epoch.","label":"","type":"EpochData","longType":"EpochData","fullType":"vega.EpochData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Node status.","label":"","type":"NodeStatus","longType":"NodeStatus","fullType":"vega.NodeStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"delegations","description":"Node's delegations.","label":"repeated","type":"Delegation","longType":"Delegation","fullType":"vega.Delegation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_score","description":"Node reward score.","label":"","type":"RewardScore","longType":"RewardScore","fullType":"vega.RewardScore","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ranking_score","description":"Node ranking information.","label":"","type":"RankingScore","longType":"RankingScore","fullType":"vega.RankingScore","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Node name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"avatar_url","description":"Avatar url.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeData","longName":"NodeData","fullName":"vega.NodeData","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"staked_total","description":"Total staked amount across all nodes. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_nodes","description":"Total number of nodes across all node sets.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"inactive_nodes","description":"Total number of nodes that had a performance score of 0 at the end of the last epoch.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tendermint_nodes","description":"Details on the set of consensus nodes in the network.","label":"","type":"NodeSet","longType":"NodeSet","fullType":"vega.NodeSet","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ersatz_nodes","description":"Details on the set of ersatz (standby) nodes in the network.","label":"","type":"NodeSet","longType":"NodeSet","fullType":"vega.NodeSet","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pending_nodes","description":"Details on the set of pending nodes in the network.","label":"","type":"NodeSet","longType":"NodeSet","fullType":"vega.NodeSet","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"uptime","description":"Total uptime for all epochs across all nodes.","label":"","type":"float","longType":"float","fullType":"float","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeSet","longName":"NodeSet","fullName":"vega.NodeSet","description":"Details on the collection of nodes for a particular validator status","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"total","description":"Total number of nodes in the node set.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"inactive","description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"promoted","description":"IDs of nodes that were promoted into this node set at the start of the epoch.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"demoted","description":"IDs of nodes that were demoted into this node set at the start of the epoch.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"maximum","description":"Total number of nodes allowed in the node set.","label":"optional","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":true,"oneofdecl":"_maximum","defaultValue":""}]},{"name":"Order","longName":"Order","fullName":"vega.Order","description":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Unique ID generated for the order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID for the order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID for the order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"side","description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL.","label":"","type":"Side","longType":"Side","fullType":"vega.Side","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size","description":"Size for the order, for example, in a futures market the size equals the number of contracts.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"remaining","description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"time_in_force","description":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce","label":"","type":"TimeInForce","longType":"Order.TimeInForce","fullType":"vega.Order.TimeInForce","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type for the order.","label":"","type":"Type","longType":"Order.Type","fullType":"vega.Order.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_at","description":"Timestamp for when the order was created at, in nanoseconds.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Current status of the order.","label":"","type":"Status","longType":"Order.Status","fullType":"vega.Order.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expires_at","description":"Timestamp in Unix nanoseconds for when the order will expire.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"Reference given for the order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reason","description":"Futher details for why an order with status `STATUS_REJECTED` was rejected.","label":"optional","type":"OrderError","longType":"OrderError","fullType":"vega.OrderError","ismap":false,"isoneof":true,"oneofdecl":"_reason","defaultValue":""},{"name":"updated_at","description":"Timestamp in Unix nanoseconds for when the order was last updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"version","description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"batch_id","description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pegged_order","description":"Pegged order details, used only if the order represents a pegged order.","label":"","type":"PeggedOrder","longType":"PeggedOrder","fullType":"vega.PeggedOrder","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_provision_id","description":"Set if the order was created as part of a liquidity provision, will be empty if not.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"post_only","description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reduce_only","description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"iceberg_order","description":"Details of an iceberg order","label":"optional","type":"IcebergOrder","longType":"IcebergOrder","fullType":"vega.IcebergOrder","ismap":false,"isoneof":true,"oneofdecl":"_iceberg_order","defaultValue":""}]},{"name":"OrderCancellationConfirmation","longName":"OrderCancellationConfirmation","fullName":"vega.OrderCancellationConfirmation","description":"Used when cancelling an order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"order","description":"Order that was cancelled.","label":"","type":"Order","longType":"Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderConfirmation","longName":"OrderConfirmation","fullName":"vega.OrderConfirmation","description":"Used when confirming an order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"order","description":"Order that was confirmed.","label":"","type":"Order","longType":"Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trades","description":"0 or more trades that were emitted.","label":"repeated","type":"Trade","longType":"Trade","fullType":"vega.Trade","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"passive_orders_affected","description":"0 or more passive orders that were affected.","label":"repeated","type":"Order","longType":"Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Party","longName":"Party","fullName":"vega.Party","description":"Party represents an entity who wishes to trade on or query a Vega network","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique ID for the party, typically represented by a public key.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"alias","description":"Alias given to the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metadata","description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","label":"repeated","type":"Metadata","longType":"Metadata","fullType":"vega.Metadata","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyProfile","longName":"PartyProfile","fullName":"vega.PartyProfile","description":"Holds metadata associated to a party.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID associated to the profile.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"alias","description":"Alias given to the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metadata","description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","label":"repeated","type":"Metadata","longType":"Metadata","fullType":"vega.Metadata","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PeggedOrder","longName":"PeggedOrder","fullName":"vega.PeggedOrder","description":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"reference","description":"Price point the order is linked to.","label":"","type":"PeggedReference","longType":"PeggedReference","fullType":"vega.PeggedReference","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"offset","description":"Offset from the price reference.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PerpetualData","longName":"PerpetualData","fullName":"vega.PerpetualData","description":"Represents market data specific to a perpetual market.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"funding_payment","description":"Current funding payment for the in-progress funding period.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"funding_rate","description":"Current funding rate for the in-progress funding period.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"internal_twap","description":"Time-weighted-average the internal data-points for the in-progress funding period.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"external_twap","description":"Time-weighted-average the external data points for the in-progress funding period.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"seq_num","description":"Funding period sequence number","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"start_time","description":"Funding period start time","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"index_price","description":"The index price used for perps.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"next_index_price_calc","description":"The next time the index price is calculated for perps.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"index_price_type","description":"The method used for calculating the index price (perps only).","label":"","type":"CompositePriceType","longType":"CompositePriceType","fullType":"vega.CompositePriceType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Position","longName":"Position","fullName":"vega.Position","description":"Represents position data for a party on the specified market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID in which the position is held.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID holding the position.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"open_volume","description":"Open volume for the position, value is signed +ve for long and -ve for short.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"realised_pnl","description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"unrealised_pnl","description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"average_entry_price","description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Timestamp for the latest time the position was updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"loss_socialisation_amount","description":"Sum of profit that could not be paid due to loss socialisation.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"position_status","description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out.","label":"","type":"PositionStatus","longType":"PositionStatus","fullType":"vega.PositionStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PositionTrade","longName":"PositionTrade","fullName":"vega.PositionTrade","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"volume","description":"Volume for the position trade, value is signed +ve for long and -ve for short.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price for the position trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PostTransferBalance","longName":"PostTransferBalance","fullName":"vega.PostTransferBalance","description":"Represents the balance for an account during a transfer","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"account","description":"Account relating to the transfer.","label":"","type":"AccountDetails","longType":"AccountDetails","fullType":"vega.AccountDetails","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance","description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PriceLevel","longName":"PriceLevel","fullName":"vega.PriceLevel","description":"Represents a price level from market depth or order book data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"price","description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"number_of_orders","description":"Number of orders at the price level.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume","description":"Volume at the price level.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PriceMonitoringBounds","longName":"PriceMonitoringBounds","fullName":"vega.PriceMonitoringBounds","description":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"min_valid_price","description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_valid_price","description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trigger","description":"Price monitoring trigger associated with the bounds.","label":"","type":"PriceMonitoringTrigger","longType":"PriceMonitoringTrigger","fullType":"vega.PriceMonitoringTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference_price","description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProductData","longName":"ProductData","fullName":"vega.ProductData","description":"Represents market data specific to a particular product type.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"perpetual_data","description":"","label":"","type":"PerpetualData","longType":"PerpetualData","fullType":"vega.PerpetualData","ismap":false,"isoneof":true,"oneofdecl":"data","defaultValue":""}]},{"name":"Rank","longName":"Rank","fullName":"vega.Rank","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"start_rank","description":"","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"share_ratio","description":"","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RankingScore","longName":"RankingScore","fullName":"vega.RankingScore","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"stake_score","description":"Stake based score - no anti-whaling.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"performance_score","description":"Performance based score.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"previous_status","description":"Status of the validator in the previous epoch.","label":"","type":"ValidatorNodeStatus","longType":"ValidatorNodeStatus","fullType":"vega.ValidatorNodeStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the validator in the current epoch.","label":"","type":"ValidatorNodeStatus","longType":"ValidatorNodeStatus","fullType":"vega.ValidatorNodeStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"voting_power","description":"Tendermint voting power of the validator.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ranking_score","description":"Final score.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralProgram","longName":"ReferralProgram","fullName":"vega.ReferralProgram","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"version","description":"Incremental version of the program. It is incremented after each program\nupdate.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"id","description":"Unique ID generated from the proposal that created this program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"benefit_tiers","description":"Defined benefit tiers ordered by increasing discounts.","label":"repeated","type":"BenefitTier","longType":"BenefitTier","fullType":"vega.BenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_of_program_timestamp","description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"window_length","description":"Number of epochs over which the referral set's running volume is evaluated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staking_tiers","description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","label":"repeated","type":"StakingTier","longType":"StakingTier","fullType":"vega.StakingTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Reward","longName":"Reward","fullName":"vega.Reward","description":"Details for a single reward payment","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"asset_id","description":"Asset ID in which the reward is being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID to whom the reward is being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch","description":"Epoch in which the reward is being paid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount paid as a reward. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"percentage_of_total","description":"Percentage of total rewards paid in the epoch.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"received_at","description":"Timestamp at which the reward was paid as Unix nano time.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID in which the reward is being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_type","description":"Type of reward being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"locked_until_epoch","description":"The epoch when the reward is being released.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum_amount","description":"Amount paid as a reward, expressed in asset's quantum unit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"game_id","description":"ID of the game the reward payment was made for if the payment was made for participation in a game.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_game_id","defaultValue":""},{"name":"team_id","description":"ID of the team the party is a member of, if the party is a member of a participating team,\nand the reward payment was made for participation in a game.\nThis field is currently only populated by the rewards API.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_id","defaultValue":""}]},{"name":"RewardScore","longName":"RewardScore","fullName":"vega.RewardScore","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"raw_validator_score","description":"Stake based score - with anti-whaling.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"performance_score","description":"Performance based score.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"multisig_score","description":"Multisig score.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_score","description":"Un-normalised score.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"normalised_score","description":"Normalised validator score for rewards.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_status","description":"Status of the validator for reward.","label":"","type":"ValidatorNodeStatus","longType":"ValidatorNodeStatus","fullType":"vega.ValidatorNodeStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RewardSummary","longName":"RewardSummary","fullName":"vega.RewardSummary","description":"Details for rewards for a single asset","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_id","description":"Asset ID in which the reward is being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID to whom the reward is being paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Total amount of rewards paid in the asset. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RiskFactor","longName":"RiskFactor","fullName":"vega.RiskFactor","description":"Risk factors are used to calculate the current risk associated with orders trading on a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market","description":"Market ID that relates to this risk factor.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"short","description":"Short Risk factor value.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"long","description":"Long Risk factor value.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ScalarValue","longName":"ScalarValue","fullName":"vega.ScalarValue","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"value","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StakingTier","longName":"StakingTier","fullName":"vega.StakingTier","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"minimum_staked_tokens","description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referral_reward_multiplier","description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StateValueProposal","longName":"StateValueProposal","fullName":"vega.StateValueProposal","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"state_var_id","description":"State variable ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"event_id","description":"Event ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"kvb","description":"Key value tolerance triplets.","label":"repeated","type":"KeyValueBundle","longType":"KeyValueBundle","fullType":"vega.KeyValueBundle","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StateVarValue","longName":"StateVarValue","fullName":"vega.StateVarValue","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"scalar_val","description":"","label":"","type":"ScalarValue","longType":"ScalarValue","fullType":"vega.ScalarValue","ismap":false,"isoneof":true,"oneofdecl":"value","defaultValue":""},{"name":"vector_val","description":"","label":"","type":"VectorValue","longType":"VectorValue","fullType":"vega.VectorValue","ismap":false,"isoneof":true,"oneofdecl":"value","defaultValue":""},{"name":"matrix_val","description":"","label":"","type":"MatrixValue","longType":"MatrixValue","fullType":"vega.MatrixValue","ismap":false,"isoneof":true,"oneofdecl":"value","defaultValue":""}]},{"name":"StopOrder","longName":"StopOrder","fullName":"vega.StopOrder","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"oco_link_id","description":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_oco_link_id","defaultValue":""},{"name":"expires_at","description":"Optional expiry timestamp.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_expires_at","defaultValue":""},{"name":"expiry_strategy","description":"Strategy to adopt if the expiry time is reached.","label":"optional","type":"ExpiryStrategy","longType":"StopOrder.ExpiryStrategy","fullType":"vega.StopOrder.ExpiryStrategy","ismap":false,"isoneof":true,"oneofdecl":"_expiry_strategy","defaultValue":""},{"name":"trigger_direction","description":"Trigger direction for this stop order.","label":"","type":"TriggerDirection","longType":"StopOrder.TriggerDirection","fullType":"vega.StopOrder.TriggerDirection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the stop order.","label":"","type":"Status","longType":"StopOrder.Status","fullType":"vega.StopOrder.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_at","description":"Creation time of the stop order.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Last update of this stop order.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_updated_at","defaultValue":""},{"name":"order_id","description":"ID of the order created once the trigger is hit.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"ID of the party that submitted this stop order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"ID of the market the stop order is submitted to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rejection_reason","description":"An optional reason for why a stop order was rejected","label":"optional","type":"RejectionReason","longType":"StopOrder.RejectionReason","fullType":"vega.StopOrder.RejectionReason","ismap":false,"isoneof":true,"oneofdecl":"_rejection_reason","defaultValue":""},{"name":"size_override_setting","description":"Size override setting","label":"","type":"SizeOverrideSetting","longType":"StopOrder.SizeOverrideSetting","fullType":"vega.StopOrder.SizeOverrideSetting","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size_override_value","description":"Size override value","label":"optional","type":"SizeOverrideValue","longType":"StopOrder.SizeOverrideValue","fullType":"vega.StopOrder.SizeOverrideValue","ismap":false,"isoneof":true,"oneofdecl":"_size_override_value","defaultValue":""},{"name":"price","description":"Fixed price at which the order will be submitted.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"trigger","defaultValue":""},{"name":"trailing_percent_offset","description":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"trigger","defaultValue":""}]},{"name":"SizeOverrideValue","longName":"StopOrder.SizeOverrideValue","fullName":"vega.StopOrder.SizeOverrideValue","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"percentage","description":"Scaling percentage of the current position’s size","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Trade","longName":"Trade","fullName":"vega.Trade","description":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique ID for the trade.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID on which the trade occurred.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size","description":"Size filled for the trade.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buyer","description":"Unique party ID for the buyer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"seller","description":"Unique party ID for the seller.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"aggressor","description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL.","label":"","type":"Side","longType":"Side","fullType":"vega.Side","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buy_order","description":"Identifier of the order from the buy side.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sell_order","description":"Identifier of the order from the sell side.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Timestamp in Unix nanoseconds for when the trade occurred.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type for the trade.","label":"","type":"Type","longType":"Trade.Type","fullType":"vega.Trade.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buyer_fee","description":"Fee amount charged to the buyer party for the trade.","label":"","type":"Fee","longType":"Fee","fullType":"vega.Fee","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"seller_fee","description":"Fee amount charged to the seller party for the trade.","label":"","type":"Fee","longType":"Fee","fullType":"vega.Fee","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buyer_auction_batch","description":"Auction batch number that the buy side order was placed in.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"seller_auction_batch","description":"Auction batch number that the sell side order was placed in.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_price","description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TradeSet","longName":"TradeSet","fullName":"vega.TradeSet","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"trades","description":"Set of one or more trades.","label":"repeated","type":"Trade","longType":"Trade","fullType":"vega.Trade","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Transfer","longName":"Transfer","fullName":"vega.Transfer","description":"Represents a financial transfer within Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"owner","description":"Party ID for the owner of the transfer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Financial amount of an asset to transfer.","label":"","type":"FinancialAmount","longType":"FinancialAmount","fullType":"vega.FinancialAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of transfer, gives the reason for the transfer.","label":"","type":"TransferType","longType":"TransferType","fullType":"vega.TransferType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_amount","description":"Minimum amount. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID the transfer is for","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TransferRequest","longName":"TransferRequest","fullName":"vega.TransferRequest","description":"Represents a request to transfer from one set of accounts to another","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"from_account","description":"One or more accounts to transfer from.","label":"repeated","type":"Account","longType":"Account","fullType":"vega.Account","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account","description":"One or more accounts to transfer to.","label":"repeated","type":"Account","longType":"Account","fullType":"vega.Account","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to transfer for the asset. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_amount","description":"Minimum amount that needs to be transferred for the transfer request. If this minimum isn't reached, it will error.\nThis field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset ID of the asset being transferred.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of the request for transfer.","label":"","type":"TransferType","longType":"TransferType","fullType":"vega.TransferType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VectorValue","longName":"VectorValue","fullName":"vega.VectorValue","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"value","description":"","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VestingBenefitTier","longName":"VestingBenefitTier","fullName":"vega.VestingBenefitTier","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"minimum_quantum_balance","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_multiplier","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VestingBenefitTiers","longName":"VestingBenefitTiers","fullName":"vega.VestingBenefitTiers","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tiers","description":"","label":"repeated","type":"VestingBenefitTier","longType":"VestingBenefitTier","fullType":"vega.VestingBenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeBenefitTier","longName":"VolumeBenefitTier","fullName":"vega.VolumeBenefitTier","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"minimum_running_notional_taker_volume","description":"Required running notional taker volume in quantum units for parties\nto access this tier.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume_discount_factor","description":"Proportion of the taker fees to be discounted.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountProgram","longName":"VolumeDiscountProgram","fullName":"vega.VolumeDiscountProgram","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"version","description":"Incremental version of the program. It is incremented after each program\nupdate.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"id","description":"Unique ID generated from the proposal that created this program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"benefit_tiers","description":"Defined benefit tiers ordered by increasing discounts.","label":"repeated","type":"VolumeBenefitTier","longType":"VolumeBenefitTier","fullType":"vega.VolumeBenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_of_program_timestamp","description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"window_length","description":"Number of epochs over which a referral set's running volume is evaluated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"WithdrawExt","longName":"WithdrawExt","fullName":"vega.WithdrawExt","description":"Withdrawal external details","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"erc20","description":"ERC20 withdrawal details.","label":"","type":"Erc20WithdrawExt","longType":"Erc20WithdrawExt","fullType":"vega.Erc20WithdrawExt","ismap":false,"isoneof":true,"oneofdecl":"ext","defaultValue":""}]},{"name":"Withdrawal","longName":"Withdrawal","fullName":"vega.Withdrawal","description":"Withdrawal from the Vega network","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique ID for the withdrawal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Unique party ID of the user initiating the withdrawal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset to withdraw funds from.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the withdrawal.","label":"","type":"Status","longType":"Withdrawal.Status","fullType":"vega.Withdrawal.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ref","description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"Hash of the foreign chain for this transaction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_timestamp","description":"Timestamp for when the network started to process this withdrawal.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"withdrawn_timestamp","description":"Timestamp for when the withdrawal was finalised by the network.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ext","description":"Foreign chain specifics.","label":"","type":"WithdrawExt","longType":"WithdrawExt","fullType":"vega.WithdrawExt","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/commands/v1/validator_commands.proto","description":"","package":"vega.commands.v1","hasEnums":true,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"NodeSignatureKind","longName":"NodeSignatureKind","fullName":"vega.commands.v1.NodeSignatureKind","description":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","values":[{"name":"NODE_SIGNATURE_KIND_UNSPECIFIED","number":"0","description":"Represents an unspecified or missing value from the input."},{"name":"NODE_SIGNATURE_KIND_ASSET_NEW","number":"1","description":"Represents a signature for a new asset allow-listing."},{"name":"NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","number":"2","description":"Represents a signature for an asset withdrawal."},{"name":"NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","number":"3","description":"Represents a signature for a new signer added to the erc20 multisig contract."},{"name":"NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","number":"4","description":"Represents a signature for a signer removed from the erc20 multisig contract."},{"name":"NODE_SIGNATURE_KIND_ASSET_UPDATE","number":"5","description":"Represents a signature for an asset update allow-listing."}]},{"name":"Type","longName":"NodeVote.Type","fullName":"vega.commands.v1.NodeVote.Type","description":"","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":"Represents an unspecified or missing value from the input"},{"name":"TYPE_STAKE_DEPOSITED","number":"1","description":"Node vote for a new stake deposit"},{"name":"TYPE_STAKE_REMOVED","number":"2","description":"Node vote for a new stake removed event"},{"name":"TYPE_FUNDS_DEPOSITED","number":"3","description":"Node vote for a new collateral deposit"},{"name":"TYPE_SIGNER_ADDED","number":"4","description":"Node vote for a new signer added to the erc20 bridge"},{"name":"TYPE_SIGNER_REMOVED","number":"5","description":"Node vote for a signer removed from the erc20 bridge"},{"name":"TYPE_BRIDGE_STOPPED","number":"6","description":"Node vote for a bridge stopped event"},{"name":"TYPE_BRIDGE_RESUMED","number":"7","description":"Node vote for a bridge resumed event"},{"name":"TYPE_ASSET_LISTED","number":"8","description":"Node vote for a newly listed asset"},{"name":"TYPE_LIMITS_UPDATED","number":"9","description":"Node vote for an asset limits update"},{"name":"TYPE_STAKE_TOTAL_SUPPLY","number":"10","description":"Node vote to share the total supply of the staking token"},{"name":"TYPE_SIGNER_THRESHOLD_SET","number":"11","description":"Node vote to update the threshold of the signer set for the multisig contract"},{"name":"TYPE_GOVERNANCE_VALIDATE_ASSET","number":"12","description":"Node vote to validate a new assert governance proposal"},{"name":"TYPE_ETHEREUM_CONTRACT_CALL_RESULT","number":"13","description":"Node vote for an Ethereum contract call result"}]}],"extensions":[],"messages":[{"name":"AnnounceNode","longName":"AnnounceNode","fullName":"vega.commands.v1.AnnounceNode","description":"A command that allows a new node operator to announce themselves to the network as a new validator.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vega_pub_key","description":"Vega public key of the node being announced.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_address","description":"Ethereum public key of the node being announced.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_pub_key","description":"Public key for the blockchain, currently the node's CometBFT key.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"info_url","description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"country","description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"id","description":"Node ID of the validator, which is the node's public master key.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Human-readable name of the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"avatar_url","description":"URL to the node operator's avatar.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_pub_key_index","description":"Vega public key derivation index.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_epoch","description":"Epoch from which the node is expected to be ready to validate blocks.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_signature","description":"Signature from the node made using the ethereum wallet.","label":"","type":"Signature","longType":"Signature","fullType":"vega.commands.v1.Signature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_signature","description":"Signature from the node made using the Vega wallet.","label":"","type":"Signature","longType":"Signature","fullType":"vega.commands.v1.Signature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter_address","description":"Ethereum public key to use as a submitter to allow automatic signature generation.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ChainEvent","longName":"ChainEvent","fullName":"vega.commands.v1.ChainEvent","description":"A validator command sent automatically that provides information of events that have happened on foreign chains.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"tx_id","description":"ID of the transaction on the foreign chain that caused the event.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Arbitrary one-time integer used to prevent replay attacks.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"builtin","description":"Built-in asset event.","label":"","type":"BuiltinAssetEvent","longType":"vega.BuiltinAssetEvent","fullType":"vega.BuiltinAssetEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"erc20","description":"Ethereum ERC20 event.","label":"","type":"ERC20Event","longType":"vega.ERC20Event","fullType":"vega.ERC20Event","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"staking_event","description":"Ethereum Staking event.","label":"","type":"StakingEvent","longType":"vega.StakingEvent","fullType":"vega.StakingEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"erc20_multisig","description":"Ethereum ERC20 multisig event.","label":"","type":"ERC20MultiSigEvent","longType":"vega.ERC20MultiSigEvent","fullType":"vega.ERC20MultiSigEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"contract_call","description":"Ethereum contract call event.","label":"","type":"EthContractCallEvent","longType":"vega.EthContractCallEvent","fullType":"vega.EthContractCallEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""}]},{"name":"EthereumKeyRotateSubmission","longName":"EthereumKeyRotateSubmission","fullName":"vega.commands.v1.EthereumKeyRotateSubmission","description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"target_block","description":"Block height at which the key rotation will take effect.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"new_address","description":"Ethereum address that is being rotated to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"current_address","description":"Ethereum address of the node's current Ethereum keys.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter_address","description":"Ethereum public key to use as a submitter to allow automatic signature generation.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_signature","description":"Signature signed by the new Ethereum key that can be verified to prove ownership.","label":"","type":"Signature","longType":"Signature","fullType":"vega.commands.v1.Signature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"KeyRotateSubmission","longName":"KeyRotateSubmission","fullName":"vega.commands.v1.KeyRotateSubmission","description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"new_pub_key_index","description":"New Vega public key derivation index.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"target_block","description":"Block height at which the key rotation will take effect.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"new_pub_key","description":"Vega public key that would be rotated to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"current_pub_key_hash","description":"Hash of the node's current Vega public key.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeSignature","longName":"NodeSignature","fullName":"vega.commands.v1.NodeSignature","description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"ID of the resource that the signature relates to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sig","description":"Signature generated by the node.","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"kind","description":"Kind of resource being signed.","label":"","type":"NodeSignatureKind","longType":"NodeSignatureKind","fullType":"vega.commands.v1.NodeSignatureKind","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeVote","longName":"NodeVote","fullName":"vega.commands.v1.NodeVote","description":"A validator command which is sent automatically by a node when it has verified a resource external to the network.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"reference","description":"Reference identifying the resource that has been verified.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of external event that has been verified.","label":"","type":"Type","longType":"NodeVote.Type","fullType":"vega.commands.v1.NodeVote.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProtocolUpgradeProposal","longName":"ProtocolUpgradeProposal","fullName":"vega.commands.v1.ProtocolUpgradeProposal","description":"A validator command sent manually by a node operator to propose a protocol upgrade.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"upgrade_block_height","description":"Block height at which to perform the upgrade.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_release_tag","description":"Release tag for the Vega binary.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StateVariableProposal","longName":"StateVariableProposal","fullName":"vega.commands.v1.StateVariableProposal","description":"A validator command sent automatically to reach consensus on floating point values.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposal","description":"Details of the state variable being proposed.","label":"","type":"StateValueProposal","longType":"vega.StateValueProposal","fullType":"vega.StateValueProposal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ValidatorHeartbeat","longName":"ValidatorHeartbeat","fullName":"vega.commands.v1.ValidatorHeartbeat","description":"A validator command which is sent automatically at regular intervals by any validator participating in the network.\nIt is used to allow the network to know whether a validator is active, or if they have shut down.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID of the validator emitting the heartbeat.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_signature","description":"Signature from the validator made using their Ethereum wallet.","label":"","type":"Signature","longType":"Signature","fullType":"vega.commands.v1.Signature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_signature","description":"Signature from the validator made using their Vega wallet.","label":"","type":"Signature","longType":"Signature","fullType":"vega.commands.v1.Signature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"message","description":"Message which has been signed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/assets.proto","description":"","package":"vega","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"Status","longName":"Asset.Status","fullName":"vega.Asset.Status","description":"","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"STATUS_PROPOSED","number":"1","description":"Asset is proposed and under vote"},{"name":"STATUS_REJECTED","number":"2","description":"Asset has been rejected from governance"},{"name":"STATUS_PENDING_LISTING","number":"3","description":"Asset is pending listing from the bridge"},{"name":"STATUS_ENABLED","number":"4","description":"Asset is fully usable in the network"}]}],"extensions":[],"messages":[{"name":"Asset","longName":"Asset","fullName":"vega.Asset","description":"Vega representation of an external asset","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Internal identifier of the asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"details","description":"Definition of the external source for this asset.","label":"","type":"AssetDetails","longType":"AssetDetails","fullType":"vega.AssetDetails","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the asset.","label":"","type":"Status","longType":"Asset.Status","fullType":"vega.Asset.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AssetDetails","longName":"AssetDetails","fullName":"vega.AssetDetails","description":"Vega representation of an external asset","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"name","description":"Name of the asset (e.g: Great British Pound).","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"symbol","description":"Symbol of the asset (e.g: GBP).","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"decimals","description":"Number of decimal / precision handled by this asset.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum","description":"Minimum economically meaningful amount in the asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"builtin_asset","description":"Vega built-in asset.","label":"","type":"BuiltinAsset","longType":"BuiltinAsset","fullType":"vega.BuiltinAsset","ismap":false,"isoneof":true,"oneofdecl":"source","defaultValue":""},{"name":"erc20","description":"Ethereum ERC20 asset.","label":"","type":"ERC20","longType":"ERC20","fullType":"vega.ERC20","ismap":false,"isoneof":true,"oneofdecl":"source","defaultValue":""}]},{"name":"AssetDetailsUpdate","longName":"AssetDetailsUpdate","fullName":"vega.AssetDetailsUpdate","description":"Changes to apply on an existing asset.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"quantum","description":"Minimum economically meaningful amount in the asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"erc20","description":"Ethereum ERC20 asset update.","label":"","type":"ERC20Update","longType":"ERC20Update","fullType":"vega.ERC20Update","ismap":false,"isoneof":true,"oneofdecl":"source","defaultValue":""}]},{"name":"BuiltinAsset","longName":"BuiltinAsset","fullName":"vega.BuiltinAsset","description":"Vega internal asset","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"max_faucet_amount_mint","description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20","longName":"ERC20","fullName":"vega.ERC20","description":"ERC20 token based asset, living on the ethereum network","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"contract_address","description":"Address of the contract for the token, on the ethereum network.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"lifetime_limit","description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"withdraw_threshold","description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20Update","longName":"ERC20Update","fullName":"vega.ERC20Update","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"lifetime_limit","description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"withdraw_threshold","description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/governance.proto","description":"","package":"vega","hasEnums":true,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"Type","longName":"GovernanceData.Type","fullName":"vega.GovernanceData.Type","description":"Proposal type","values":[{"name":"TYPE_SINGLE_OR_UNSPECIFIED","number":"0","description":"Single proposal only. In case it has not been specified, for example in older proposals, then this is the default."},{"name":"TYPE_BATCH","number":"1","description":"Proposal contains a batch of proposals or a proposal that should be treated as part of a batch."}]},{"name":"GovernanceTransferType","longName":"GovernanceTransferType","fullName":"vega.GovernanceTransferType","description":"","values":[{"name":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","number":"0","description":""},{"name":"GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","number":"1","description":""},{"name":"GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT","number":"2","description":""}]},{"name":"MarketStateUpdateType","longName":"MarketStateUpdateType","fullName":"vega.MarketStateUpdateType","description":"","values":[{"name":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"MARKET_STATE_UPDATE_TYPE_TERMINATE","number":"1","description":"Request to terminate a market via governance"},{"name":"MARKET_STATE_UPDATE_TYPE_SUSPEND","number":"2","description":"Request to suspend a market via governance"},{"name":"MARKET_STATE_UPDATE_TYPE_RESUME","number":"3","description":"Request to resume a market via governance"}]},{"name":"State","longName":"Proposal.State","fullName":"vega.Proposal.State","description":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","values":[{"name":"STATE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"STATE_FAILED","number":"1","description":"Proposal enactment has failed - even though proposal has passed, its execution could not be performed"},{"name":"STATE_OPEN","number":"2","description":"Proposal is open for voting"},{"name":"STATE_PASSED","number":"3","description":"Proposal has gained enough support to be executed"},{"name":"STATE_REJECTED","number":"4","description":"Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements."},{"name":"STATE_DECLINED","number":"5","description":"Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level."},{"name":"STATE_ENACTED","number":"6","description":"Proposal enacted."},{"name":"STATE_WAITING_FOR_NODE_VOTE","number":"7","description":"Waiting for node validation of the proposal"}]},{"name":"ProposalError","longName":"ProposalError","fullName":"vega.ProposalError","description":"List of possible errors that can cause a proposal to be in state rejected or failed","values":[{"name":"PROPOSAL_ERROR_UNSPECIFIED","number":"0","description":"Default value"},{"name":"PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","number":"1","description":"Specified close time is too early based on network parameters"},{"name":"PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","number":"2","description":"Specified close time is too late based on network parameters"},{"name":"PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","number":"3","description":"Specified enactment time is too early based on network parameters"},{"name":"PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","number":"4","description":"Specified enactment time is too late based on network parameters"},{"name":"PROPOSAL_ERROR_INSUFFICIENT_TOKENS","number":"5","description":"Proposer for this proposal has insufficient tokens"},{"name":"PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","number":"6","description":"Instrument quote name and base name were the same"},{"name":"PROPOSAL_ERROR_NO_PRODUCT","number":"7","description":"Proposal has no product"},{"name":"PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","number":"8","description":"Specified product is not supported"},{"name":"PROPOSAL_ERROR_NO_TRADING_MODE","number":"11","description":"Proposal has no trading mode"},{"name":"PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","number":"12","description":"Proposal has an unsupported trading mode"},{"name":"PROPOSAL_ERROR_NODE_VALIDATION_FAILED","number":"13","description":"Proposal failed node validation"},{"name":"PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","number":"14","description":"Field is missing in a builtin asset source"},{"name":"PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","number":"15","description":"Contract address is missing in the ERC20 asset source"},{"name":"PROPOSAL_ERROR_INVALID_ASSET","number":"16","description":"Asset ID is invalid or does not exist on the Vega network"},{"name":"PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","number":"17","description":"Proposal terms timestamps are not compatible (Validation < Closing < Enactment)"},{"name":"PROPOSAL_ERROR_NO_RISK_PARAMETERS","number":"18","description":"No risk parameters were specified"},{"name":"PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","number":"19","description":"Invalid key in update network parameter proposal"},{"name":"PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","number":"20","description":"Invalid value in update network parameter proposal"},{"name":"PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","number":"21","description":"Validation failed for network parameter proposal"},{"name":"PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","number":"22","description":"Opening auction duration is less than the network minimum opening auction time"},{"name":"PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","number":"23","description":"Opening auction duration is more than the network minimum opening auction time"},{"name":"PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","number":"25","description":"Market proposal market could not be instantiated in execution"},{"name":"PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","number":"26","description":"Market proposal market contained invalid product definition"},{"name":"PROPOSAL_ERROR_INVALID_RISK_PARAMETER","number":"30","description":"Market proposal has invalid risk parameter"},{"name":"PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","number":"31","description":"Proposal was declined because vote didn't reach the majority threshold required"},{"name":"PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","number":"32","description":"Proposal declined because the participation threshold was not reached"},{"name":"PROPOSAL_ERROR_INVALID_ASSET_DETAILS","number":"33","description":"Asset proposal has invalid asset details"},{"name":"PROPOSAL_ERROR_UNKNOWN_TYPE","number":"34","description":"Proposal is an unknown type"},{"name":"PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","number":"35","description":"Proposal has an unknown risk parameter type"},{"name":"PROPOSAL_ERROR_INVALID_FREEFORM","number":"36","description":"Validation failed for freeform proposal"},{"name":"PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","number":"37","description":"Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal"},{"name":"PROPOSAL_ERROR_INVALID_MARKET","number":"38","description":"Market targeted by the proposal does not exist or is not eligible for modification"},{"name":"PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","number":"39","description":"Market proposal decimal place is higher than the market settlement asset decimal places"},{"name":"PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","number":"40","description":"Market proposal contains too many price monitoring triggers"},{"name":"PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","number":"41","description":"Market proposal contains too many price monitoring triggers"},{"name":"PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","number":"42","description":"LP price range must be larger than 0"},{"name":"PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","number":"43","description":"LP price range must not be larger than 100"},{"name":"PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","number":"44","description":"Linear slippage factor is out of range, either negative or too large"},{"name":"PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","number":"45","description":"Quadratic slippage factor is out of range, either negative or too large"},{"name":"PROPOSAL_ERROR_INVALID_SPOT","number":"46","description":"Validation failed for spot proposal"},{"name":"PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","number":"47","description":"Spot trading not enabled"},{"name":"PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","number":"48","description":"Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed."},{"name":"PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","number":"49","description":"Governance transfer proposal is invalid"},{"name":"PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","number":"50","description":"Governance transfer proposal failed"},{"name":"PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","number":"51","description":"Proposal for cancelling transfer is invalid, check proposal ID"},{"name":"PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","number":"52","description":"Proposal for updating market state is invalid"},{"name":"PROPOSAL_ERROR_INVALID_SLA_PARAMS","number":"53","description":"Liquidity provision SLA parameters are invalid"},{"name":"PROPOSAL_ERROR_MISSING_SLA_PARAMS","number":"54","description":"Mandatory liquidity provision SLA parameters are missing"},{"name":"PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","number":"55","description":"Perpetual market proposal contained invalid product definition"},{"name":"PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","number":"56","description":"Referral program proposal is invalid"},{"name":"PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","number":"57","description":"Volume discount program proposal is invalid"},{"name":"PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","number":"58","description":"One or more proposals in a batch has been rejected"},{"name":"PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED","number":"59","description":"One or more proposals in a batch has been declined"}]},{"name":"Value","longName":"Vote.Value","fullName":"vega.Vote.Value","description":"Vote value","values":[{"name":"VALUE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"VALUE_NO","number":"1","description":"Vote against the proposal"},{"name":"VALUE_YES","number":"2","description":"Vote in favour of the proposal"}]}],"extensions":[],"messages":[{"name":"BatchProposalTerms","longName":"BatchProposalTerms","fullName":"vega.BatchProposalTerms","description":"Terms for a batch governance proposal on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"closing_timestamp","description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proposal_params","description":"Specific parameters defining the proposal's characteristics used for validation.","label":"","type":"ProposalParameters","longType":"ProposalParameters","fullType":"vega.ProposalParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"changes","description":"List of individual changes included in the batch proposal.","label":"repeated","type":"BatchProposalTermsChange","longType":"BatchProposalTermsChange","fullType":"vega.BatchProposalTermsChange","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BatchProposalTermsChange","longName":"BatchProposalTermsChange","fullName":"vega.BatchProposalTermsChange","description":"Terms change for a batch governance proposal","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"enactment_timestamp","description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"update_market","description":"Proposal change for modifying an existing futures market.","label":"","type":"UpdateMarket","longType":"UpdateMarket","fullType":"vega.UpdateMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_market","description":"Proposal change for creating new futures market.","label":"","type":"NewMarket","longType":"NewMarket","fullType":"vega.NewMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_network_parameter","description":"Proposal change for updating Vega network parameters.","label":"","type":"UpdateNetworkParameter","longType":"UpdateNetworkParameter","fullType":"vega.UpdateNetworkParameter","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_freeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","label":"","type":"NewFreeform","longType":"NewFreeform","fullType":"vega.NewFreeform","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_asset","description":"Proposal change for updating an asset.","label":"","type":"UpdateAsset","longType":"UpdateAsset","fullType":"vega.UpdateAsset","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_spot_market","description":"Proposal change for creating new spot market.","label":"","type":"NewSpotMarket","longType":"NewSpotMarket","fullType":"vega.NewSpotMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_spot_market","description":"Proposal change for modifying an existing spot market.","label":"","type":"UpdateSpotMarket","longType":"UpdateSpotMarket","fullType":"vega.UpdateSpotMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_transfer","description":"Proposal change for a governance initiated transfer.","label":"","type":"NewTransfer","longType":"NewTransfer","fullType":"vega.NewTransfer","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"cancel_transfer","description":"Proposal change to cancel a governance initiated transfe.","label":"","type":"CancelTransfer","longType":"CancelTransfer","fullType":"vega.CancelTransfer","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_market_state","description":"Proposal change for updating the state of a market.","label":"","type":"UpdateMarketState","longType":"UpdateMarketState","fullType":"vega.UpdateMarketState","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_referral_program","description":"Proposal change for updating the referral program.","label":"","type":"UpdateReferralProgram","longType":"UpdateReferralProgram","fullType":"vega.UpdateReferralProgram","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_volume_discount_program","description":"Proposal change for updating the volume discount program.","label":"","type":"UpdateVolumeDiscountProgram","longType":"UpdateVolumeDiscountProgram","fullType":"vega.UpdateVolumeDiscountProgram","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""}]},{"name":"CancelTransfer","longName":"CancelTransfer","fullName":"vega.CancelTransfer","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration for cancellation of a governance-initiated transfer","label":"","type":"CancelTransferConfiguration","longType":"CancelTransferConfiguration","fullType":"vega.CancelTransferConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CancelTransferConfiguration","longName":"CancelTransferConfiguration","fullName":"vega.CancelTransferConfiguration","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transfer_id","description":"ID of the governance transfer proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FutureProduct","longName":"FutureProduct","fullName":"vega.FutureProduct","description":"Future product configuration","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"settlement_asset","description":"Asset ID for the product's settlement asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quote_name","description":"Product quote name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_data","description":"Data source spec describing the data source for settlement.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_trading_termination","description":"The external data source spec describing the data source of trading termination.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_binding","description":"Binding between the data source spec and the settlement data.","label":"","type":"DataSourceSpecToFutureBinding","longType":"DataSourceSpecToFutureBinding","fullType":"vega.DataSourceSpecToFutureBinding","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GovernanceData","longName":"GovernanceData","fullName":"vega.GovernanceData","description":"Governance data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposal","description":"Governance proposal that is being voted on.","label":"","type":"Proposal","longType":"Proposal","fullType":"vega.Proposal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"yes","description":"All YES votes in favour of the proposal above.","label":"repeated","type":"Vote","longType":"Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"no","description":"All NO votes against the proposal above.","label":"repeated","type":"Vote","longType":"Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"yes_party","description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","label":"repeated","type":"YesPartyEntry","longType":"GovernanceData.YesPartyEntry","fullType":"vega.GovernanceData.YesPartyEntry","ismap":true,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"no_party","description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","label":"repeated","type":"NoPartyEntry","longType":"GovernanceData.NoPartyEntry","fullType":"vega.GovernanceData.NoPartyEntry","ismap":true,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proposal_type","description":"Type of proposal this data is for.","label":"","type":"Type","longType":"GovernanceData.Type","fullType":"vega.GovernanceData.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proposals","description":"If proposal type is batch, proposals will contain all the proposals that are make up the batch.","label":"repeated","type":"Proposal","longType":"Proposal","fullType":"vega.Proposal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NoPartyEntry","longName":"GovernanceData.NoPartyEntry","fullName":"vega.GovernanceData.NoPartyEntry","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"","label":"","type":"Vote","longType":"Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"YesPartyEntry","longName":"GovernanceData.YesPartyEntry","fullName":"vega.GovernanceData.YesPartyEntry","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"","label":"","type":"Vote","longType":"Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"InstrumentConfiguration","longName":"InstrumentConfiguration","fullName":"vega.InstrumentConfiguration","description":"Instrument configuration","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"name","description":"Instrument name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"code","description":"Instrument code, human-readable shortcode used to describe the instrument.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"future","description":"Future.","label":"","type":"FutureProduct","longType":"FutureProduct","fullType":"vega.FutureProduct","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""},{"name":"spot","description":"Spot.","label":"","type":"SpotProduct","longType":"SpotProduct","fullType":"vega.SpotProduct","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""},{"name":"perpetual","description":"Perpetual.","label":"","type":"PerpetualProduct","longType":"PerpetualProduct","fullType":"vega.PerpetualProduct","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""}]},{"name":"NewAsset","longName":"NewAsset","fullName":"vega.NewAsset","description":"New asset on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration of the new asset.","label":"","type":"AssetDetails","longType":"AssetDetails","fullType":"vega.AssetDetails","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NewFreeform","longName":"NewFreeform","fullName":"vega.NewFreeform","description":"Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed.","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"NewMarket","longName":"NewMarket","fullName":"vega.NewMarket","description":"New market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration of the new market.","label":"","type":"NewMarketConfiguration","longType":"NewMarketConfiguration","fullType":"vega.NewMarketConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NewMarketConfiguration","longName":"NewMarketConfiguration","fullName":"vega.NewMarketConfiguration","description":"Configuration for a new futures market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"instrument","description":"New futures market instrument configuration.","label":"","type":"InstrumentConfiguration","longType":"InstrumentConfiguration","fullType":"vega.InstrumentConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"decimal_places","description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metadata","description":"Optional new futures market metadata, tags.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price_monitoring_parameters","description":"Price monitoring parameters.","label":"","type":"PriceMonitoringParameters","longType":"PriceMonitoringParameters","fullType":"vega.PriceMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_monitoring_parameters","description":"Liquidity monitoring parameters.","label":"","type":"LiquidityMonitoringParameters","longType":"LiquidityMonitoringParameters","fullType":"vega.LiquidityMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"simple","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","label":"","type":"SimpleModelParams","longType":"SimpleModelParams","fullType":"vega.SimpleModelParams","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"log_normal","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","label":"","type":"LogNormalRiskModel","longType":"LogNormalRiskModel","fullType":"vega.LogNormalRiskModel","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"position_decimal_places","description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"lp_price_range","description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_lp_price_range","defaultValue":""},{"name":"linear_slippage_factor","description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quadratic_slippage_factor","description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":"","options":{"deprecated":true}},{"name":"successor","description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set.","label":"optional","type":"SuccessorConfiguration","longType":"SuccessorConfiguration","fullType":"vega.SuccessorConfiguration","ismap":false,"isoneof":true,"oneofdecl":"_successor","defaultValue":""},{"name":"liquidity_sla_parameters","description":"Liquidity SLA parameters","label":"","type":"LiquiditySLAParameters","longType":"LiquiditySLAParameters","fullType":"vega.LiquiditySLAParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee_settings","description":"Specifies how the liquidity fee for the market will be calculated.","label":"","type":"LiquidityFeeSettings","longType":"LiquidityFeeSettings","fullType":"vega.LiquidityFeeSettings","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidation_strategy","description":"Liquidation strategy for this market.","label":"","type":"LiquidationStrategy","longType":"LiquidationStrategy","fullType":"vega.LiquidationStrategy","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"mark_price_configuration","description":"Mark price configuration.","label":"","type":"CompositePriceConfiguration","longType":"CompositePriceConfiguration","fullType":"vega.CompositePriceConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NewSpotMarket","longName":"NewSpotMarket","fullName":"vega.NewSpotMarket","description":"New spot market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration of the new spot market.","label":"","type":"NewSpotMarketConfiguration","longType":"NewSpotMarketConfiguration","fullType":"vega.NewSpotMarketConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NewSpotMarketConfiguration","longName":"NewSpotMarketConfiguration","fullName":"vega.NewSpotMarketConfiguration","description":"Configuration for a new spot market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"instrument","description":"New spot market instrument configuration.","label":"","type":"InstrumentConfiguration","longType":"InstrumentConfiguration","fullType":"vega.InstrumentConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"decimal_places","description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metadata","description":"Optional new spot market metadata, tags.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price_monitoring_parameters","description":"Price monitoring parameters.","label":"","type":"PriceMonitoringParameters","longType":"PriceMonitoringParameters","fullType":"vega.PriceMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"target_stake_parameters","description":"Specifies parameters related to target stake calculation.","label":"","type":"TargetStakeParameters","longType":"TargetStakeParameters","fullType":"vega.TargetStakeParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"simple","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","label":"","type":"SimpleModelParams","longType":"SimpleModelParams","fullType":"vega.SimpleModelParams","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"log_normal","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","label":"","type":"LogNormalRiskModel","longType":"LogNormalRiskModel","fullType":"vega.LogNormalRiskModel","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"position_decimal_places","description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sla_params","description":"Specifies the liquidity provision SLA parameters.","label":"","type":"LiquiditySLAParameters","longType":"LiquiditySLAParameters","fullType":"vega.LiquiditySLAParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee_settings","description":"Specifies how the liquidity fee for the market will be calculated.","label":"","type":"LiquidityFeeSettings","longType":"LiquidityFeeSettings","fullType":"vega.LiquidityFeeSettings","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NewTransfer","longName":"NewTransfer","fullName":"vega.NewTransfer","description":"New governance transfer","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration for a new transfer.","label":"","type":"NewTransferConfiguration","longType":"NewTransferConfiguration","fullType":"vega.NewTransferConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NewTransferConfiguration","longName":"NewTransferConfiguration","fullName":"vega.NewTransferConfiguration","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"source_type","description":"Source account type, such as network treasury, market insurance pool","label":"","type":"AccountType","longType":"AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"source","description":"If network treasury, field is empty, otherwise uses the market ID","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transfer_type","description":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount","label":"","type":"GovernanceTransferType","longType":"GovernanceTransferType","fullType":"vega.GovernanceTransferType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Maximum amount to transfer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"ID of asset to transfer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fraction_of_balance","description":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"destination_type","description":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool","label":"","type":"AccountType","longType":"AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"destination","description":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"one_off","description":"","label":"","type":"OneOffTransfer","longType":"OneOffTransfer","fullType":"vega.OneOffTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""},{"name":"recurring","description":"","label":"","type":"RecurringTransfer","longType":"RecurringTransfer","fullType":"vega.RecurringTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""}]},{"name":"OneOffTransfer","longName":"OneOffTransfer","fullName":"vega.OneOffTransfer","description":"Specific details for a one off transfer","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"deliver_on","description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PerpetualProduct","longName":"PerpetualProduct","fullName":"vega.PerpetualProduct","description":"Perpetual product configuration","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"settlement_asset","description":"Asset ID for the product's settlement asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quote_name","description":"Product quote name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_funding_factor","description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"interest_rate","description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"clamp_lower_bound","description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"clamp_upper_bound","description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_schedule","description":"Data source spec describing the data source for settlement schedule.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_data","description":"Data source spec describing the data source for settlement.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_binding","description":"Binding between the data source spec and the settlement data.","label":"","type":"DataSourceSpecToPerpetualBinding","longType":"DataSourceSpecToPerpetualBinding","fullType":"vega.DataSourceSpecToPerpetualBinding","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"funding_rate_scaling_factor","description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_scaling_factor","defaultValue":""},{"name":"funding_rate_lower_bound","description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_lower_bound","defaultValue":""},{"name":"funding_rate_upper_bound","description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_upper_bound","defaultValue":""},{"name":"index_price_configuration","description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used.","label":"optional","type":"CompositePriceConfiguration","longType":"CompositePriceConfiguration","fullType":"vega.CompositePriceConfiguration","ismap":false,"isoneof":true,"oneofdecl":"_index_price_configuration","defaultValue":""}]},{"name":"Proposal","longName":"Proposal","fullName":"vega.Proposal","description":"Governance proposal","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Unique proposal ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"Proposal reference.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID i.e. public key of the party submitting the proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"state","description":"Current state of the proposal, i.e. open, passed, failed etc.","label":"","type":"State","longType":"Proposal.State","fullType":"vega.Proposal.State","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"terms","description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term.","label":"optional","type":"ProposalTerms","longType":"ProposalTerms","fullType":"vega.ProposalTerms","ismap":false,"isoneof":true,"oneofdecl":"_terms","defaultValue":""},{"name":"reason","description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses.","label":"optional","type":"ProposalError","longType":"ProposalError","fullType":"vega.ProposalError","ismap":false,"isoneof":true,"oneofdecl":"_reason","defaultValue":""},{"name":"error_details","description":"Detailed error associated to the reason.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_error_details","defaultValue":""},{"name":"rationale","description":"Rationale behind a proposal.","label":"","type":"ProposalRationale","longType":"ProposalRationale","fullType":"vega.ProposalRationale","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_participation","description":"Required vote participation for this proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_majority","description":"Required majority for this proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_liquidity_provider_participation","description":"Required participation from liquidity providers, optional but is required for market update proposal.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_required_liquidity_provider_participation","defaultValue":""},{"name":"required_liquidity_provider_majority","description":"Required majority from liquidity providers, optional but is required for market update proposal.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_required_liquidity_provider_majority","defaultValue":""},{"name":"batch_terms","description":"Batch proposal terms.","label":"optional","type":"BatchProposalTerms","longType":"BatchProposalTerms","fullType":"vega.BatchProposalTerms","ismap":false,"isoneof":true,"oneofdecl":"_batch_terms","defaultValue":""},{"name":"batch_id","description":"ID of a batch proposal that this proposal is part of.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_batch_id","defaultValue":""}]},{"name":"ProposalParameters","longName":"ProposalParameters","fullName":"vega.ProposalParameters","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"min_close","description":"Represents the minimum time before a proposal can be closed for voting.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_close","description":"Represents the maximum time that a proposal can be open for voting.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_enact","description":"Represents the minimum time before an enacted proposal takes effect.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_enact","description":"Represents the maximum time before an enacted proposal must take effect.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_participation","description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_majority","description":"Specifies the required percentage of votes a proposal needs to be approved.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_proposer_balance","description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_voter_balance","description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_participation_lp","description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"required_majority_lp","description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_equity_like_share","description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProposalRationale","longName":"ProposalRationale","fullName":"vega.ProposalRationale","description":"Rationale behind a proposal.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"description","description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"title","description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProposalTerms","longName":"ProposalTerms","fullName":"vega.ProposalTerms","description":"Terms for a governance proposal on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"closing_timestamp","description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"enactment_timestamp","description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validation_timestamp","description":"Validation timestamp as Unix time in seconds.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"update_market","description":"Proposal change for modifying an existing futures market on Vega.","label":"","type":"UpdateMarket","longType":"UpdateMarket","fullType":"vega.UpdateMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_market","description":"Proposal change for creating new futures market on Vega.","label":"","type":"NewMarket","longType":"NewMarket","fullType":"vega.NewMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_network_parameter","description":"Proposal change for updating Vega network parameters.","label":"","type":"UpdateNetworkParameter","longType":"UpdateNetworkParameter","fullType":"vega.UpdateNetworkParameter","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_asset","description":"Proposal change for creating new assets on Vega.","label":"","type":"NewAsset","longType":"NewAsset","fullType":"vega.NewAsset","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_freeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment.","label":"","type":"NewFreeform","longType":"NewFreeform","fullType":"vega.NewFreeform","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_asset","description":"Proposal change for updating an asset.","label":"","type":"UpdateAsset","longType":"UpdateAsset","fullType":"vega.UpdateAsset","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_spot_market","description":"Proposal change for creating new spot market on Vega.","label":"","type":"NewSpotMarket","longType":"NewSpotMarket","fullType":"vega.NewSpotMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_spot_market","description":"Proposal change for modifying an existing spot market on Vega.","label":"","type":"UpdateSpotMarket","longType":"UpdateSpotMarket","fullType":"vega.UpdateSpotMarket","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"new_transfer","description":"Proposal change for a governance transfer.","label":"","type":"NewTransfer","longType":"NewTransfer","fullType":"vega.NewTransfer","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"cancel_transfer","description":"Cancel a governance transfer.","label":"","type":"CancelTransfer","longType":"CancelTransfer","fullType":"vega.CancelTransfer","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_market_state","description":"Proposal change for updating the state of a market.","label":"","type":"UpdateMarketState","longType":"UpdateMarketState","fullType":"vega.UpdateMarketState","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_referral_program","description":"Proposal change for updating the referral program.","label":"","type":"UpdateReferralProgram","longType":"UpdateReferralProgram","fullType":"vega.UpdateReferralProgram","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""},{"name":"update_volume_discount_program","description":"Proposal change for updating the volume discount program.","label":"","type":"UpdateVolumeDiscountProgram","longType":"UpdateVolumeDiscountProgram","fullType":"vega.UpdateVolumeDiscountProgram","ismap":false,"isoneof":true,"oneofdecl":"change","defaultValue":""}]},{"name":"RecurringTransfer","longName":"RecurringTransfer","fullName":"vega.RecurringTransfer","description":"Specific details for a recurring transfer\n\nFirst epoch from which this transfer shall be paid.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"start_epoch","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_epoch","description":"Last epoch at which this transfer shall be paid.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_end_epoch","defaultValue":""},{"name":"dispatch_strategy","description":"Optional parameter defining how a transfer is dispatched.","label":"optional","type":"DispatchStrategy","longType":"DispatchStrategy","fullType":"vega.DispatchStrategy","ismap":false,"isoneof":true,"oneofdecl":"_dispatch_strategy","defaultValue":""}]},{"name":"ReferralProgramChanges","longName":"ReferralProgramChanges","fullName":"vega.ReferralProgramChanges","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"benefit_tiers","description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","label":"repeated","type":"BenefitTier","longType":"BenefitTier","fullType":"vega.BenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_of_program_timestamp","description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"window_length","description":"Number of epochs over which to evaluate a referral set's running volume.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staking_tiers","description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","label":"repeated","type":"StakingTier","longType":"StakingTier","fullType":"vega.StakingTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SpotProduct","longName":"SpotProduct","fullName":"vega.SpotProduct","description":"Spot product configuration","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"base_asset","description":"Base asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quote_asset","description":"Quote asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Product name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SuccessorConfiguration","longName":"SuccessorConfiguration","fullName":"vega.SuccessorConfiguration","description":"Configuration required to turn a new market proposal in to a successor market proposal.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"parent_market_id","description":"ID of the market that the successor should take over from.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"insurance_pool_fraction","description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateAsset","longName":"UpdateAsset","fullName":"vega.UpdateAsset","description":"Update an existing asset on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_id","description":"Asset ID the update is for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"changes","description":"Changes to apply on an existing asset.","label":"","type":"AssetDetailsUpdate","longType":"AssetDetailsUpdate","fullType":"vega.AssetDetailsUpdate","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateFutureProduct","longName":"UpdateFutureProduct","fullName":"vega.UpdateFutureProduct","description":"Future product configuration","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"quote_name","description":"Human-readable name/abbreviation of the quote name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_data","description":"The data source spec describing the data of settlement data.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_trading_termination","description":"The data source spec describing the data source for trading termination.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_binding","description":"The binding between the data source spec and the settlement data.","label":"","type":"DataSourceSpecToFutureBinding","longType":"DataSourceSpecToFutureBinding","fullType":"vega.DataSourceSpecToFutureBinding","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateInstrumentConfiguration","longName":"UpdateInstrumentConfiguration","fullName":"vega.UpdateInstrumentConfiguration","description":"Instrument configuration","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"code","description":"Instrument code, human-readable shortcode used to describe the instrument.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Instrument name","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"future","description":"Future.","label":"","type":"UpdateFutureProduct","longType":"UpdateFutureProduct","fullType":"vega.UpdateFutureProduct","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""},{"name":"perpetual","description":"Perpetual.","label":"","type":"UpdatePerpetualProduct","longType":"UpdatePerpetualProduct","fullType":"vega.UpdatePerpetualProduct","ismap":false,"isoneof":true,"oneofdecl":"product","defaultValue":""}]},{"name":"UpdateMarket","longName":"UpdateMarket","fullName":"vega.UpdateMarket","description":"Update an existing market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID the update is for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"changes","description":"Updated configuration of the futures market.","label":"","type":"UpdateMarketConfiguration","longType":"UpdateMarketConfiguration","fullType":"vega.UpdateMarketConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateMarketConfiguration","longName":"UpdateMarketConfiguration","fullName":"vega.UpdateMarketConfiguration","description":"Configuration to update a futures market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"instrument","description":"Updated futures market instrument configuration.","label":"","type":"UpdateInstrumentConfiguration","longType":"UpdateInstrumentConfiguration","fullType":"vega.UpdateInstrumentConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metadata","description":"Optional futures market metadata, tags.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price_monitoring_parameters","description":"Price monitoring parameters.","label":"","type":"PriceMonitoringParameters","longType":"PriceMonitoringParameters","fullType":"vega.PriceMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_monitoring_parameters","description":"Liquidity monitoring parameters.","label":"","type":"LiquidityMonitoringParameters","longType":"LiquidityMonitoringParameters","fullType":"vega.LiquidityMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"simple","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","label":"","type":"SimpleModelParams","longType":"SimpleModelParams","fullType":"vega.SimpleModelParams","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"log_normal","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","label":"","type":"LogNormalRiskModel","longType":"LogNormalRiskModel","fullType":"vega.LogNormalRiskModel","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"lp_price_range","description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_lp_price_range","defaultValue":""},{"name":"linear_slippage_factor","description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quadratic_slippage_factor","description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":"","options":{"deprecated":true}},{"name":"liquidity_sla_parameters","description":"Liquidity SLA parameters","label":"","type":"LiquiditySLAParameters","longType":"LiquiditySLAParameters","fullType":"vega.LiquiditySLAParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee_settings","description":"Specifies how the liquidity fee for the market will be calculated.","label":"","type":"LiquidityFeeSettings","longType":"LiquidityFeeSettings","fullType":"vega.LiquidityFeeSettings","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidation_strategy","description":"Liquidation strategy parameters","label":"","type":"LiquidationStrategy","longType":"LiquidationStrategy","fullType":"vega.LiquidationStrategy","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"mark_price_configuration","description":"Mark price configuration.","label":"","type":"CompositePriceConfiguration","longType":"CompositePriceConfiguration","fullType":"vega.CompositePriceConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateMarketState","longName":"UpdateMarketState","fullName":"vega.UpdateMarketState","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration for governance-initiated change of a market's state","label":"","type":"UpdateMarketStateConfiguration","longType":"UpdateMarketStateConfiguration","fullType":"vega.UpdateMarketStateConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateMarketStateConfiguration","longName":"UpdateMarketStateConfiguration","fullName":"vega.UpdateMarketStateConfiguration","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"ID of the market","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"update_type","description":"Type of the market update","label":"","type":"MarketStateUpdateType","longType":"MarketStateUpdateType","fullType":"vega.MarketStateUpdateType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Settlement price, relevant only for market termination for futures markets","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_price","defaultValue":""}]},{"name":"UpdateNetworkParameter","longName":"UpdateNetworkParameter","fullName":"vega.UpdateNetworkParameter","description":"Update network configuration on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"The network parameter to update.","label":"","type":"NetworkParameter","longType":"NetworkParameter","fullType":"vega.NetworkParameter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdatePerpetualProduct","longName":"UpdatePerpetualProduct","fullName":"vega.UpdatePerpetualProduct","description":"Perpetual product configuration","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"quote_name","description":"Human-readable name/abbreviation of the quote name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_funding_factor","description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"interest_rate","description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"clamp_lower_bound","description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"clamp_upper_bound","description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_schedule","description":"Data source spec describing the data source for settlement schedule.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_for_settlement_data","description":"Data source spec describing the data source for settlement.","label":"","type":"DataSourceDefinition","longType":"DataSourceDefinition","fullType":"vega.DataSourceDefinition","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_source_spec_binding","description":"Binding between the data source spec and the settlement data.","label":"","type":"DataSourceSpecToPerpetualBinding","longType":"DataSourceSpecToPerpetualBinding","fullType":"vega.DataSourceSpecToPerpetualBinding","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"funding_rate_scaling_factor","description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_scaling_factor","defaultValue":""},{"name":"funding_rate_lower_bound","description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_lower_bound","defaultValue":""},{"name":"funding_rate_upper_bound","description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate_upper_bound","defaultValue":""},{"name":"index_price_configuration","description":"Configuration for the index price used in funding payment calculation.","label":"optional","type":"CompositePriceConfiguration","longType":"CompositePriceConfiguration","fullType":"vega.CompositePriceConfiguration","ismap":false,"isoneof":true,"oneofdecl":"_index_price_configuration","defaultValue":""}]},{"name":"UpdateReferralProgram","longName":"UpdateReferralProgram","fullName":"vega.UpdateReferralProgram","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration for change to update a referral program.","label":"","type":"ReferralProgramChanges","longType":"ReferralProgramChanges","fullType":"vega.ReferralProgramChanges","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateSpotMarket","longName":"UpdateSpotMarket","fullName":"vega.UpdateSpotMarket","description":"Update an existing spot market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID the update is for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"changes","description":"Updated configuration of the spot market.","label":"","type":"UpdateSpotMarketConfiguration","longType":"UpdateSpotMarketConfiguration","fullType":"vega.UpdateSpotMarketConfiguration","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateSpotMarketConfiguration","longName":"UpdateSpotMarketConfiguration","fullName":"vega.UpdateSpotMarketConfiguration","description":"Configuration to update a spot market on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"metadata","description":"Optional spot market metadata, tags.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price_monitoring_parameters","description":"Price monitoring parameters.","label":"","type":"PriceMonitoringParameters","longType":"PriceMonitoringParameters","fullType":"vega.PriceMonitoringParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"target_stake_parameters","description":"Specifies parameters related to target stake calculation.","label":"","type":"TargetStakeParameters","longType":"TargetStakeParameters","fullType":"vega.TargetStakeParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"simple","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected.","label":"","type":"SimpleModelParams","longType":"SimpleModelParams","fullType":"vega.SimpleModelParams","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"log_normal","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.","label":"","type":"LogNormalRiskModel","longType":"LogNormalRiskModel","fullType":"vega.LogNormalRiskModel","ismap":false,"isoneof":true,"oneofdecl":"risk_parameters","defaultValue":""},{"name":"sla_params","description":"Specifies the liquidity provision SLA parameters.","label":"","type":"LiquiditySLAParameters","longType":"LiquiditySLAParameters","fullType":"vega.LiquiditySLAParameters","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_fee_settings","description":"Specifies how the liquidity fee for the market will be calculated.","label":"","type":"LiquidityFeeSettings","longType":"LiquidityFeeSettings","fullType":"vega.LiquidityFeeSettings","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateVolumeDiscountProgram","longName":"UpdateVolumeDiscountProgram","fullName":"vega.UpdateVolumeDiscountProgram","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"changes","description":"Configuration for a change to update a volume discount program","label":"","type":"VolumeDiscountProgramChanges","longType":"VolumeDiscountProgramChanges","fullType":"vega.VolumeDiscountProgramChanges","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountProgramChanges","longName":"VolumeDiscountProgramChanges","fullName":"vega.VolumeDiscountProgramChanges","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"benefit_tiers","description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","label":"repeated","type":"VolumeBenefitTier","longType":"VolumeBenefitTier","fullType":"vega.VolumeBenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_of_program_timestamp","description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"window_length","description":"Number of epochs over which to evaluate a referral set's running volume.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Vote","longName":"Vote","fullName":"vega.Vote","description":"Governance vote","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Voter's party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"Which way the party voted.","label":"","type":"Value","longType":"Vote.Value","fullType":"vega.Vote.Value","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proposal_id","description":"Proposal ID being voted on.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_governance_token_balance","description":"Total number of governance token for the party that cast the vote.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_governance_token_weight","description":"The weight of this vote based on the total number of governance tokens.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_equity_like_share_weight","description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"per_market_equity_like_share_weight","description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","label":"repeated","type":"PerMarketEquityLikeShareWeightEntry","longType":"Vote.PerMarketEquityLikeShareWeightEntry","fullType":"vega.Vote.PerMarketEquityLikeShareWeightEntry","ismap":true,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PerMarketEquityLikeShareWeightEntry","longName":"Vote.PerMarketEquityLikeShareWeightEntry","fullName":"vega.Vote.PerMarketEquityLikeShareWeightEntry","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/commands/v1/commands.proto","description":"","package":"vega.commands.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"Method","longName":"UndelegateSubmission.Method","fullName":"vega.commands.v1.UndelegateSubmission.Method","description":"","values":[{"name":"METHOD_UNSPECIFIED","number":"0","description":""},{"name":"METHOD_NOW","number":"1","description":"Undelegate straight away, losing all rewards for the current epoch."},{"name":"METHOD_AT_END_OF_EPOCH","number":"2","description":"Undelegate at the end of an epoch, retaining all rewards for the current epoch."}]},{"name":"Mode","longName":"UpdateMarginMode.Mode","fullName":"vega.commands.v1.UpdateMarginMode.Mode","description":"","values":[{"name":"MODE_UNSPECIFIED","number":"0","description":"Never valid."},{"name":"MODE_CROSS_MARGIN","number":"1","description":"Cross margin mode - margin is dynamically acquired and released as a position is marked to market"},{"name":"MODE_ISOLATED_MARGIN","number":"2","description":"Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed"}]}],"extensions":[],"messages":[{"name":"ApplyReferralCode","longName":"ApplyReferralCode","fullName":"vega.commands.v1.ApplyReferralCode","description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Referral code, normally the referral set ID, for the party to join.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BatchMarketInstructions","longName":"BatchMarketInstructions","fullName":"vega.commands.v1.BatchMarketInstructions","description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"cancellations","description":"List of order cancellations to be processed sequentially.","label":"repeated","type":"OrderCancellation","longType":"OrderCancellation","fullType":"vega.commands.v1.OrderCancellation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amendments","description":"List of order amendments to be processed sequentially.","label":"repeated","type":"OrderAmendment","longType":"OrderAmendment","fullType":"vega.commands.v1.OrderAmendment","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submissions","description":"List of order submissions to be processed sequentially.","label":"repeated","type":"OrderSubmission","longType":"OrderSubmission","fullType":"vega.commands.v1.OrderSubmission","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stop_orders_cancellation","description":"List of stop order cancellations to be processed sequentially.","label":"repeated","type":"StopOrdersCancellation","longType":"StopOrdersCancellation","fullType":"vega.commands.v1.StopOrdersCancellation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stop_orders_submission","description":"List of stop order submissions to be processed sequentially.","label":"repeated","type":"StopOrdersSubmission","longType":"StopOrdersSubmission","fullType":"vega.commands.v1.StopOrdersSubmission","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"update_margin_mode","description":"Update margin mode instruction","label":"repeated","type":"UpdateMarginMode","longType":"UpdateMarginMode","fullType":"vega.commands.v1.UpdateMarginMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BatchProposalSubmission","longName":"BatchProposalSubmission","fullName":"vega.commands.v1.BatchProposalSubmission","description":"Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"reference","description":"Arbitrary human-readable reference identifying the proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"terms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","label":"","type":"BatchProposalSubmissionTerms","longType":"BatchProposalSubmissionTerms","fullType":"vega.commands.v1.BatchProposalSubmissionTerms","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rationale","description":"Rationale behind a proposal.","label":"","type":"ProposalRationale","longType":"vega.ProposalRationale","fullType":"vega.ProposalRationale","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BatchProposalSubmissionTerms","longName":"BatchProposalSubmissionTerms","fullName":"vega.commands.v1.BatchProposalSubmissionTerms","description":"Terms for a batch governance proposal submission","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"closing_timestamp","description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"changes","description":"List of individual changes included in the batch proposal.","label":"repeated","type":"BatchProposalTermsChange","longType":"vega.BatchProposalTermsChange","fullType":"vega.BatchProposalTermsChange","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CancelTransfer","longName":"CancelTransfer","fullName":"vega.commands.v1.CancelTransfer","description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transfer_id","description":"Transfer ID of the transfer to cancel.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CreateReferralSet","longName":"CreateReferralSet","fullName":"vega.commands.v1.CreateReferralSet","description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"is_team","description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team","description":"Team details, if the referral set is to be considered a team.","label":"optional","type":"Team","longType":"CreateReferralSet.Team","fullType":"vega.commands.v1.CreateReferralSet.Team","ismap":false,"isoneof":true,"oneofdecl":"_team","defaultValue":""}]},{"name":"Team","longName":"CreateReferralSet.Team","fullName":"vega.commands.v1.CreateReferralSet.Team","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"name","description":"Name of the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team_url","description":"External link to the team's homepage.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_url","defaultValue":""},{"name":"avatar_url","description":"External link to an avatar for the team.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_avatar_url","defaultValue":""},{"name":"closed","description":"Whether or not the team is closed to new party members.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"allow_list","description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DelegateSubmission","longName":"DelegateSubmission","fullName":"vega.commands.v1.DelegateSubmission","description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID to delegate stake to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"IcebergOpts","longName":"IcebergOpts","fullName":"vega.commands.v1.IcebergOpts","description":"Iceberg order options","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"peak_size","description":"Size of the order that is made visible and can be traded with during the execution of a single order.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"minimum_visible_size","description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"IssueSignatures","longName":"IssueSignatures","fullName":"vega.commands.v1.IssueSignatures","description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"submitter","description":"Ethereum address which will submit the signatures to the smart contract.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"kind","description":"What kind of signatures to generate, namely for whether a signer is being added or removed.","label":"","type":"NodeSignatureKind","longType":"NodeSignatureKind","fullType":"vega.commands.v1.NodeSignatureKind","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_node_id","description":"Node ID of the validator node that will be signed in or out of the smart contract.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"JoinTeam","longName":"JoinTeam","fullName":"vega.commands.v1.JoinTeam","description":"Command that allows the submitter to join a team or change teams if they are already a member of a team.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"ID of the team to join, this is the same as the referral code used to generate the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvisionAmendment","longName":"LiquidityProvisionAmendment","fullName":"vega.commands.v1.LiquidityProvisionAmendment","description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market that the submitter wants to amend the liquidity commitment for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"commitment_amount","description":"New commitment amount.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fee","description":"New nominated liquidity fee factor.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvisionCancellation","longName":"LiquidityProvisionCancellation","fullName":"vega.commands.v1.LiquidityProvisionCancellation","description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market that the submitter will stop providing liquidity for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvisionSubmission","longName":"LiquidityProvisionSubmission","fullName":"vega.commands.v1.LiquidityProvisionSubmission","description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market that the submitter wishes to provide liquidity for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"commitment_amount","description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fee","description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OneOffTransfer","longName":"OneOffTransfer","fullName":"vega.commands.v1.OneOffTransfer","description":"Details for a one-off transfer.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"deliver_on","description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderAmendment","longName":"OrderAmendment","fullName":"vega.commands.v1.OrderAmendment","description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"order_id","description":"ID of the order to amend.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID that the order was originally submitted to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_price","defaultValue":""},{"name":"size_delta","description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expires_at","description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_expires_at","defaultValue":""},{"name":"time_in_force","description":"New time in force for the order.","label":"","type":"TimeInForce","longType":"vega.Order.TimeInForce","fullType":"vega.Order.TimeInForce","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pegged_offset","description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pegged_reference","description":"New pegged reference for the order.","label":"","type":"PeggedReference","longType":"vega.PeggedReference","fullType":"vega.PeggedReference","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size","description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_size","defaultValue":""}]},{"name":"OrderCancellation","longName":"OrderCancellation","fullName":"vega.commands.v1.OrderCancellation","description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"order_id","description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderSubmission","longName":"OrderSubmission","fullName":"vega.commands.v1.OrderSubmission","description":"A command that submits an order to the Vega network for a given market.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to submit the order to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size","description":"Size for the order, for example, in a futures market the size equals the number of units.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"side","description":"Which side of the order book the order is for, e.g. buy or sell.","label":"","type":"Side","longType":"vega.Side","fullType":"vega.Side","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"time_in_force","description":"Time in force indicates how long an order will remain active before it is executed or expires..","label":"","type":"TimeInForce","longType":"vega.Order.TimeInForce","fullType":"vega.Order.TimeInForce","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expires_at","description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of the order.","label":"","type":"Type","longType":"vega.Order.Type","fullType":"vega.Order.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pegged_order","description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times.","label":"","type":"PeggedOrder","longType":"vega.PeggedOrder","fullType":"vega.PeggedOrder","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"post_only","description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reduce_only","description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"iceberg_opts","description":"Iceberg order details. If set, the order will exist on the order book in chunks.","label":"optional","type":"IcebergOpts","longType":"IcebergOpts","fullType":"vega.commands.v1.IcebergOpts","ismap":false,"isoneof":true,"oneofdecl":"_iceberg_opts","defaultValue":""}]},{"name":"ProposalSubmission","longName":"ProposalSubmission","fullName":"vega.commands.v1.ProposalSubmission","description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"reference","description":"Arbitrary human-readable reference identifying the proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"terms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment.","label":"","type":"ProposalTerms","longType":"vega.ProposalTerms","fullType":"vega.ProposalTerms","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rationale","description":"Rationale behind a proposal.","label":"","type":"ProposalRationale","longType":"vega.ProposalRationale","fullType":"vega.ProposalRationale","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RecurringTransfer","longName":"RecurringTransfer","fullName":"vega.commands.v1.RecurringTransfer","description":"Details for a recurring transfer","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"start_epoch","description":"First epoch from which this transfer shall be executed.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_epoch","description":"Last epoch at which this transfer shall be executed.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_end_epoch","defaultValue":""},{"name":"factor","description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"dispatch_strategy","description":"Optional parameter defining how a transfer is dispatched.","label":"","type":"DispatchStrategy","longType":"vega.DispatchStrategy","fullType":"vega.DispatchStrategy","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StopOrderSetup","longName":"StopOrderSetup","fullName":"vega.commands.v1.StopOrderSetup","description":"Price and expiry configuration for a stop order.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"order_submission","description":"Order to be submitted once the trigger is breached.","label":"","type":"OrderSubmission","longType":"OrderSubmission","fullType":"vega.commands.v1.OrderSubmission","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expires_at","description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_expires_at","defaultValue":""},{"name":"expiry_strategy","description":"Strategy to adopt if the expiry time is reached.","label":"optional","type":"ExpiryStrategy","longType":"vega.StopOrder.ExpiryStrategy","fullType":"vega.StopOrder.ExpiryStrategy","ismap":false,"isoneof":true,"oneofdecl":"_expiry_strategy","defaultValue":""},{"name":"size_override_setting","description":"Indicates if this order is linked to an order or position to derive the order size","label":"optional","type":"SizeOverrideSetting","longType":"vega.StopOrder.SizeOverrideSetting","fullType":"vega.StopOrder.SizeOverrideSetting","ismap":false,"isoneof":true,"oneofdecl":"_size_override_setting","defaultValue":""},{"name":"size_override_value","description":"If this order is linked to a position, provide an optional scaling factor","label":"optional","type":"SizeOverrideValue","longType":"vega.StopOrder.SizeOverrideValue","fullType":"vega.StopOrder.SizeOverrideValue","ismap":false,"isoneof":true,"oneofdecl":"_size_override_value","defaultValue":""},{"name":"price","description":"Order will be submitted if the last traded price on the market breaches the given price.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"trigger","defaultValue":""},{"name":"trailing_percent_offset","description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"trigger","defaultValue":""}]},{"name":"StopOrdersCancellation","longName":"StopOrdersCancellation","fullName":"vega.commands.v1.StopOrdersCancellation","description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"stop_order_id","description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_stop_order_id","defaultValue":""}]},{"name":"StopOrdersSubmission","longName":"StopOrdersSubmission","fullName":"vega.commands.v1.StopOrdersSubmission","description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"rises_above","description":"Stop order that will be triggered if the price rises above a given trigger price.","label":"optional","type":"StopOrderSetup","longType":"StopOrderSetup","fullType":"vega.commands.v1.StopOrderSetup","ismap":false,"isoneof":true,"oneofdecl":"_rises_above","defaultValue":""},{"name":"falls_below","description":"Stop order that will be triggered if the price falls below a given trigger price.","label":"optional","type":"StopOrderSetup","longType":"StopOrderSetup","fullType":"vega.commands.v1.StopOrderSetup","ismap":false,"isoneof":true,"oneofdecl":"_falls_below","defaultValue":""}]},{"name":"Transfer","longName":"Transfer","fullName":"vega.commands.v1.Transfer","description":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"from_account_type","description":"Account type from which the funds of the party should be taken.","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to","description":"Public key of the destination account.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account_type","description":"Type of the destination account.","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset ID of the asset to be transferred.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"Reference to be attached to the transfer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"one_off","description":"Details of a one-off transfer that is executed once at a specified time.","label":"","type":"OneOffTransfer","longType":"OneOffTransfer","fullType":"vega.commands.v1.OneOffTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""},{"name":"recurring","description":"Details of a transfer that is executed once every epoch until stopped.","label":"","type":"RecurringTransfer","longType":"RecurringTransfer","fullType":"vega.commands.v1.RecurringTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""}]},{"name":"UndelegateSubmission","longName":"UndelegateSubmission","fullName":"vega.commands.v1.UndelegateSubmission","description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID to undelegate stake from.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"method","description":"Method of delegation.","label":"","type":"Method","longType":"UndelegateSubmission.Method","fullType":"vega.commands.v1.UndelegateSubmission.Method","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateMarginMode","longName":"UpdateMarginMode","fullName":"vega.commands.v1.UpdateMarginMode","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market to change margin mode for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"mode","description":"Margin mode to use.","label":"","type":"Mode","longType":"UpdateMarginMode.Mode","fullType":"vega.commands.v1.UpdateMarginMode.Mode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_factor","description":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_margin_factor","defaultValue":""}]},{"name":"UpdatePartyProfile","longName":"UpdatePartyProfile","fullName":"vega.commands.v1.UpdatePartyProfile","description":"Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"alias","description":"Alias given to the party. It must be unique network-wide.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"metadata","description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","label":"repeated","type":"Metadata","longType":"vega.Metadata","fullType":"vega.Metadata","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"UpdateReferralSet","longName":"UpdateReferralSet","fullName":"vega.commands.v1.UpdateReferralSet","description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"ID of the referral set to update.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"is_team","description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team","description":"Team details, if the referral set is to be considered a team.","label":"optional","type":"Team","longType":"UpdateReferralSet.Team","fullType":"vega.commands.v1.UpdateReferralSet.Team","ismap":false,"isoneof":true,"oneofdecl":"_team","defaultValue":""}]},{"name":"Team","longName":"UpdateReferralSet.Team","fullName":"vega.commands.v1.UpdateReferralSet.Team","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"name","description":"New name of the team.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_name","defaultValue":""},{"name":"team_url","description":"New link to the team's homepage.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_url","defaultValue":""},{"name":"avatar_url","description":"New link to an avatar for the team.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_avatar_url","defaultValue":""},{"name":"closed","description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_closed","defaultValue":""},{"name":"allow_list","description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VoteSubmission","longName":"VoteSubmission","fullName":"vega.commands.v1.VoteSubmission","description":"Command that allows a token holder to vote for or against an active governance proposal.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposal_id","description":"Submit vote for the specified proposal ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"Actual value of the vote.","label":"","type":"Value","longType":"vega.Vote.Value","fullType":"vega.Vote.Value","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"WithdrawSubmission","longName":"WithdrawSubmission","fullName":"vega.commands.v1.WithdrawSubmission","description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"amount","description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset to be withdrawn.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ext","description":"Details specific to the foreign chain, such as the receiver address.","label":"","type":"WithdrawExt","longType":"vega.WithdrawExt","fullType":"vega.WithdrawExt","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/commands/v1/data.proto","description":"","package":"vega.commands.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"OracleSource","longName":"OracleDataSubmission.OracleSource","fullName":"vega.commands.v1.OracleDataSubmission.OracleSource","description":"Supported oracle sources","values":[{"name":"ORACLE_SOURCE_UNSPECIFIED","number":"0","description":"Default value"},{"name":"ORACLE_SOURCE_OPEN_ORACLE","number":"1","description":"Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard."},{"name":"ORACLE_SOURCE_JSON","number":"2","description":"Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data."},{"name":"ORACLE_SOURCE_ETHEREUM","number":"3","description":"Specifies that the payload will be base64 encoded JSON conforming to the ETH standard."}]}],"extensions":[],"messages":[{"name":"OracleDataSubmission","longName":"OracleDataSubmission","fullName":"vega.commands.v1.OracleDataSubmission","description":"Command to submit new oracle data from third party providers","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"source","description":"Source from which the data is coming from.","label":"","type":"OracleSource","longType":"OracleDataSubmission.OracleSource","fullType":"vega.commands.v1.OracleDataSubmission.OracleSource","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"payload","description":"Data provided by the data source.","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/commands/v1/transaction.proto","description":"","package":"vega.commands.v1","hasEnums":true,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"TxVersion","longName":"TxVersion","fullName":"vega.commands.v1.TxVersion","description":"Transaction versions to maintain backwards compatibility of transaction formats.","values":[{"name":"TX_VERSION_UNSPECIFIED","number":"0","description":"Transaction version is unspecified."},{"name":"TX_VERSION_V2","number":"2","description":"Transaction requires the addition of a proof-of-work calculation."},{"name":"TX_VERSION_V3","number":"3","description":"Transaction input data contains a prepended chain ID to prevent use of a single transaction across multiple networks."}]}],"extensions":[],"messages":[{"name":"InputData","longName":"InputData","fullName":"vega.commands.v1.InputData","description":"Input data for a transaction containing a network command for the Vega network to execute.\nOnce populated the protobuf message should be marshalled into a byte array and included in a transaction message.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"nonce","description":"Arbitrary number used to provide uniqueness to the signature of two otherwise identical input data, preventing replay attacks.\nMust be set to a different value for all new transactions sent by a party. It is advised to generate this number randomly.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_height","description":"Block height which has been used to calculate the transaction proof-of-work.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_submission","description":"Command to submit an order.","label":"","type":"OrderSubmission","longType":"OrderSubmission","fullType":"vega.commands.v1.OrderSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"order_cancellation","description":"Command to cancel an order.","label":"","type":"OrderCancellation","longType":"OrderCancellation","fullType":"vega.commands.v1.OrderCancellation","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"order_amendment","description":"Command to amend an order.","label":"","type":"OrderAmendment","longType":"OrderAmendment","fullType":"vega.commands.v1.OrderAmendment","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"withdraw_submission","description":"Command to submit a withdrawal.","label":"","type":"WithdrawSubmission","longType":"WithdrawSubmission","fullType":"vega.commands.v1.WithdrawSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"proposal_submission","description":"Command to submit a governance proposal.","label":"","type":"ProposalSubmission","longType":"ProposalSubmission","fullType":"vega.commands.v1.ProposalSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"vote_submission","description":"Command to submit a vote on a governance proposal.","label":"","type":"VoteSubmission","longType":"VoteSubmission","fullType":"vega.commands.v1.VoteSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"liquidity_provision_submission","description":"Command to submit a liquidity commitment.","label":"","type":"LiquidityProvisionSubmission","longType":"LiquidityProvisionSubmission","fullType":"vega.commands.v1.LiquidityProvisionSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"delegate_submission","description":"Command to delegate tokens to a validator.","label":"","type":"DelegateSubmission","longType":"DelegateSubmission","fullType":"vega.commands.v1.DelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"undelegate_submission","description":"Command to remove tokens delegated to a validator.","label":"","type":"UndelegateSubmission","longType":"UndelegateSubmission","fullType":"vega.commands.v1.UndelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"liquidity_provision_cancellation","description":"Command to cancel a liquidity commitment.","label":"","type":"LiquidityProvisionCancellation","longType":"LiquidityProvisionCancellation","fullType":"vega.commands.v1.LiquidityProvisionCancellation","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"liquidity_provision_amendment","description":"Command to amend a liquidity commitment.","label":"","type":"LiquidityProvisionAmendment","longType":"LiquidityProvisionAmendment","fullType":"vega.commands.v1.LiquidityProvisionAmendment","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"transfer","description":"Command to submit a transfer.","label":"","type":"Transfer","longType":"Transfer","fullType":"vega.commands.v1.Transfer","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"cancel_transfer","description":"Command to cancel a recurring transfer.","label":"","type":"CancelTransfer","longType":"CancelTransfer","fullType":"vega.commands.v1.CancelTransfer","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"announce_node","description":"Command used by a node operator to announce its node as a pending validator.","label":"","type":"AnnounceNode","longType":"AnnounceNode","fullType":"vega.commands.v1.AnnounceNode","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"batch_market_instructions","description":"Command to submit a batch of order instructions.","label":"","type":"BatchMarketInstructions","longType":"BatchMarketInstructions","fullType":"vega.commands.v1.BatchMarketInstructions","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"stop_orders_submission","description":"Command to submit a pair of stop orders.","label":"","type":"StopOrdersSubmission","longType":"StopOrdersSubmission","fullType":"vega.commands.v1.StopOrdersSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"stop_orders_cancellation","description":"Command to cancel stop orders.","label":"","type":"StopOrdersCancellation","longType":"StopOrdersCancellation","fullType":"vega.commands.v1.StopOrdersCancellation","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"create_referral_set","description":"Command to create a referral set.","label":"","type":"CreateReferralSet","longType":"CreateReferralSet","fullType":"vega.commands.v1.CreateReferralSet","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"update_referral_set","description":"Command to update a referral set.","label":"","type":"UpdateReferralSet","longType":"UpdateReferralSet","fullType":"vega.commands.v1.UpdateReferralSet","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"apply_referral_code","description":"Command to apply a referral code.","label":"","type":"ApplyReferralCode","longType":"ApplyReferralCode","fullType":"vega.commands.v1.ApplyReferralCode","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"update_margin_mode","description":"Command to update the margin mode of a party in a market.","label":"","type":"UpdateMarginMode","longType":"UpdateMarginMode","fullType":"vega.commands.v1.UpdateMarginMode","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"join_team","description":"Command to join a team.","label":"","type":"JoinTeam","longType":"JoinTeam","fullType":"vega.commands.v1.JoinTeam","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"node_vote","description":"Validator command sent automatically to vote on that validity of an external resource.","label":"","type":"NodeVote","longType":"NodeVote","fullType":"vega.commands.v1.NodeVote","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"node_signature","description":"Validator command sent automatically to provide signatures for the Ethereum bridge.","label":"","type":"NodeSignature","longType":"NodeSignature","fullType":"vega.commands.v1.NodeSignature","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"chain_event","description":"Validator command sent automatically to notify the Vega chain of an off-chain event.","label":"","type":"ChainEvent","longType":"ChainEvent","fullType":"vega.commands.v1.ChainEvent","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"key_rotate_submission","description":"Validator command sent manually by a node operator to rotate their node's Vega keys.","label":"","type":"KeyRotateSubmission","longType":"KeyRotateSubmission","fullType":"vega.commands.v1.KeyRotateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"state_variable_proposal","description":"Validator command sent automatically to reach consensus on floating point values.","label":"","type":"StateVariableProposal","longType":"StateVariableProposal","fullType":"vega.commands.v1.StateVariableProposal","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"validator_heartbeat","description":"Validator command sent automatically to signal regular participation in the network.","label":"","type":"ValidatorHeartbeat","longType":"ValidatorHeartbeat","fullType":"vega.commands.v1.ValidatorHeartbeat","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"ethereum_key_rotate_submission","description":"Validator command sent manually by a node operator to rotate their node's Ethereum keys.","label":"","type":"EthereumKeyRotateSubmission","longType":"EthereumKeyRotateSubmission","fullType":"vega.commands.v1.EthereumKeyRotateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"protocol_upgrade_proposal","description":"Validator command sent manually to propose a protocol upgrade.","label":"","type":"ProtocolUpgradeProposal","longType":"ProtocolUpgradeProposal","fullType":"vega.commands.v1.ProtocolUpgradeProposal","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"issue_signatures","description":"Command to request signatures to amend the multisig-control contract.","label":"","type":"IssueSignatures","longType":"IssueSignatures","fullType":"vega.commands.v1.IssueSignatures","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"oracle_data_submission","description":"Command to submit external oracle data.","label":"","type":"OracleDataSubmission","longType":"OracleDataSubmission","fullType":"vega.commands.v1.OracleDataSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"batch_proposal_submission","description":"Command to submit a batch governance proposal.","label":"","type":"BatchProposalSubmission","longType":"BatchProposalSubmission","fullType":"vega.commands.v1.BatchProposalSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"update_party_profile","description":"Command to update a party's profile.","label":"","type":"UpdatePartyProfile","longType":"UpdatePartyProfile","fullType":"vega.commands.v1.UpdatePartyProfile","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""}]},{"name":"ProofOfWork","longName":"ProofOfWork","fullName":"vega.commands.v1.ProofOfWork","description":"Components needed for the network to verify proof-of-work.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tid","description":"Unique transaction identifier used to seed the proof-of-work hash.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Number which, combined with the transaction identifier, will produce a hash with the required number of leading zeros to be accepted by the network.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Transaction","longName":"Transaction","fullName":"vega.commands.v1.Transaction","description":"Transaction containing a command that can be sent to instruct the network to execute an action.\nA transaction contains a byte string representation of the input data which must then be signed, with the signature added to the transaction.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"input_data","description":"Protobuf message of type `InputData` marshalled into bytes. If the transaction version is V3 or higher then this bytes\nstring must be prepended with `chain_id_as_byes + \\0`.","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signature","description":"Signature of the input data field, signed by the sender of this transaction.","label":"","type":"Signature","longType":"Signature","fullType":"vega.commands.v1.Signature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"address","description":"Hex-encoded address of the sender. Not supported yet.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"from","defaultValue":""},{"name":"pub_key","description":"Hex-encoded public key of the sender.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"from","defaultValue":""},{"name":"version","description":"Version of the transaction.","label":"","type":"TxVersion","longType":"TxVersion","fullType":"vega.commands.v1.TxVersion","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pow","description":"Proof-of-work containing the random transaction ID used by the client and the nonce.","label":"","type":"ProofOfWork","longType":"ProofOfWork","fullType":"vega.commands.v1.ProofOfWork","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"blockexplorer/api/v1/blockexplorer.proto","description":"","package":"blockexplorer.api.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":true,"enums":[],"extensions":[],"messages":[{"name":"GetTransactionRequest","longName":"GetTransactionRequest","fullName":"blockexplorer.api.v1.GetTransactionRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"hash","description":"Hash of the transaction","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetTransactionResponse","longName":"GetTransactionResponse","fullName":"blockexplorer.api.v1.GetTransactionResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transaction","description":"Transaction corresponding to the hash","label":"","type":"Transaction","longType":"Transaction","fullType":"blockexplorer.api.v1.Transaction","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"InfoRequest","longName":"InfoRequest","fullName":"blockexplorer.api.v1.InfoRequest","description":"node information","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"InfoResponse","longName":"InfoResponse","fullName":"blockexplorer.api.v1.InfoResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"version","description":"Semver formatted version of the data node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"commit_hash","description":"Commit hash from which the data node was built","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTransactionsRequest","longName":"ListTransactionsRequest","fullName":"blockexplorer.api.v1.ListTransactionsRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"before","description":"Cursor to paginate the request. It can be used in conjunction with the `after` cursor.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_before","defaultValue":""},{"name":"after","description":"Cursor to paginate the request. It can be used in conjunction with the `before` cursor.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_after","defaultValue":""},{"name":"filters","description":"Filters to apply to the request","label":"repeated","type":"FiltersEntry","longType":"ListTransactionsRequest.FiltersEntry","fullType":"blockexplorer.api.v1.ListTransactionsRequest.FiltersEntry","ismap":true,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cmd_types","description":"Transaction command types filter, for listing transactions with specified command types","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"exclude_cmd_types","description":"Transaction command types exclusion filter, for listing all the transactions except the ones with specified command types","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"parties","description":"Party IDs filter, can be sender or receiver","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"first","description":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `after` cursor to paginate forwards. Paginating forwards means toward the most recent\ntransactions.\nIt cannot be used in conjunction with the `before` cursor.\nOn its own, this will return the `first` most recent transactions.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last","description":"Number of transactions to be returned from the blockchain.\nUse in conjunction with the `before` cursor to paginate backwards. Paginating forwards means toward the least recent\ntransactions.\nIt cannot be used in conjunction with the `after` cursor.\nOn its own, this will return the `last` oldest transactions.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FiltersEntry","longName":"ListTransactionsRequest.FiltersEntry","fullName":"blockexplorer.api.v1.ListTransactionsRequest.FiltersEntry","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"value","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTransactionsResponse","longName":"ListTransactionsResponse","fullName":"blockexplorer.api.v1.ListTransactionsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transactions","description":"Transaction corresponding to the specific request and filters","label":"repeated","type":"Transaction","longType":"Transaction","fullType":"blockexplorer.api.v1.Transaction","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Transaction","longName":"Transaction","fullName":"blockexplorer.api.v1.Transaction","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"block","description":"Height of the block the transaction was found in","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"index","description":"Index of the transaction in the block","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"hash","description":"Hash of the transaction","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter","description":"Vega public key of the transaction's submitter","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of transaction","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"code","description":"Results code of the transaction. 0 indicates the transaction was successful","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor for this transaction. This is used for paginating results","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"command","description":"Actual command of the transaction","label":"","type":"InputData","longType":"vega.commands.v1.InputData","fullType":"vega.commands.v1.InputData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signature","description":"Signature generated by the submitter for the transaction","label":"","type":"Signature","longType":"vega.commands.v1.Signature","fullType":"vega.commands.v1.Signature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"error","description":"Optional error happening when processing / checking the transaction\nThis should be set if error code is not 0","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_error","defaultValue":""},{"name":"created_at","description":"Timestamp when the transaction happened, using RFC3399 format.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"version","description":"Version format of the transaction","label":"","type":"TxVersion","longType":"vega.commands.v1.TxVersion","fullType":"vega.commands.v1.TxVersion","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pow","description":"Proof of Work parameters of the transaction","label":"","type":"ProofOfWork","longType":"vega.commands.v1.ProofOfWork","fullType":"vega.commands.v1.ProofOfWork","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[{"name":"BlockExplorerService","longName":"BlockExplorerService","fullName":"blockexplorer.api.v1.BlockExplorerService","description":"","methods":[{"name":"GetTransaction","description":"Get transaction\n\nGet a transaction from the Vega blockchain","requestType":"GetTransactionRequest","requestLongType":"GetTransactionRequest","requestFullType":"blockexplorer.api.v1.GetTransactionRequest","requestStreaming":false,"responseType":"GetTransactionResponse","responseLongType":"GetTransactionResponse","responseFullType":"blockexplorer.api.v1.GetTransactionResponse","responseStreaming":false},{"name":"ListTransactions","description":"List transactions\n\nList transactions from the Vega blockchain from the newest to the oldest transactions.","requestType":"ListTransactionsRequest","requestLongType":"ListTransactionsRequest","requestFullType":"blockexplorer.api.v1.ListTransactionsRequest","requestStreaming":false,"responseType":"ListTransactionsResponse","responseLongType":"ListTransactionsResponse","responseFullType":"blockexplorer.api.v1.ListTransactionsResponse","responseStreaming":false},{"name":"Info","description":"Info\n\nGet information about the block explorer.\nResponse contains a semver formatted version of the data node and the commit hash, from which the block explorer was built","requestType":"InfoRequest","requestLongType":"InfoRequest","requestFullType":"blockexplorer.api.v1.InfoRequest","requestStreaming":false,"responseType":"InfoResponse","responseLongType":"InfoResponse","responseFullType":"blockexplorer.api.v1.InfoResponse","responseStreaming":false}]}]},{"name":"vega/oracle.proto","description":"","package":"vega","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[],"extensions":[],"messages":[{"name":"OracleData","longName":"OracleData","fullName":"vega.OracleData","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"external_data","description":"","label":"","type":"ExternalData","longType":"data.v1.ExternalData","fullType":"vega.data.v1.ExternalData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OracleSpec","longName":"OracleSpec","fullName":"vega.OracleSpec","description":"Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"external_data_source_spec","description":"","label":"","type":"ExternalDataSourceSpec","longType":"ExternalDataSourceSpec","fullType":"vega.ExternalDataSourceSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"vega/events/v1/events.proto","description":"","package":"vega.events.v1","hasEnums":true,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[{"name":"BusEventType","longName":"BusEventType","fullName":"vega.events.v1.BusEventType","description":"Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items","values":[{"name":"BUS_EVENT_TYPE_UNSPECIFIED","number":"0","description":"Default value, always invalid"},{"name":"BUS_EVENT_TYPE_ALL","number":"1","description":"Events of ALL event types, used when filtering stream from event bus"},{"name":"BUS_EVENT_TYPE_TIME_UPDATE","number":"2","description":"Event for blockchain time updates"},{"name":"BUS_EVENT_TYPE_LEDGER_MOVEMENTS","number":"3","description":"Event for when a transfer happens internally, contains the transfer information"},{"name":"BUS_EVENT_TYPE_POSITION_RESOLUTION","number":"4","description":"Event indicating position resolution has occurred"},{"name":"BUS_EVENT_TYPE_ORDER","number":"5","description":"Event for order updates, both new and existing orders"},{"name":"BUS_EVENT_TYPE_ACCOUNT","number":"6","description":"Event for account updates"},{"name":"BUS_EVENT_TYPE_PARTY","number":"7","description":"Event for party updates"},{"name":"BUS_EVENT_TYPE_TRADE","number":"8","description":"Event indicating a new trade has occurred"},{"name":"BUS_EVENT_TYPE_MARGIN_LEVELS","number":"9","description":"Event indicating margin levels have changed for a party"},{"name":"BUS_EVENT_TYPE_PROPOSAL","number":"10","description":"Event for proposal updates (for governance)"},{"name":"BUS_EVENT_TYPE_VOTE","number":"11","description":"Event indicating a new vote has occurred (for governance)"},{"name":"BUS_EVENT_TYPE_MARKET_DATA","number":"12","description":"Event for market data updates"},{"name":"BUS_EVENT_TYPE_NODE_SIGNATURE","number":"13","description":"Event for a new signature for a Vega node"},{"name":"BUS_EVENT_TYPE_LOSS_SOCIALIZATION","number":"14","description":"Event indicating loss socialisation occurred for a party"},{"name":"BUS_EVENT_TYPE_SETTLE_POSITION","number":"15","description":"Event for when a position is being settled"},{"name":"BUS_EVENT_TYPE_SETTLE_DISTRESSED","number":"16","description":"Event for when a position is distressed"},{"name":"BUS_EVENT_TYPE_MARKET_CREATED","number":"17","description":"Event indicating a new market was created"},{"name":"BUS_EVENT_TYPE_ASSET","number":"18","description":"Event for when an asset is added to Vega"},{"name":"BUS_EVENT_TYPE_MARKET_TICK","number":"19","description":"Event indicating a market tick event"},{"name":"BUS_EVENT_TYPE_WITHDRAWAL","number":"20","description":"Event for when a withdrawal occurs"},{"name":"BUS_EVENT_TYPE_DEPOSIT","number":"21","description":"Event for when a deposit occurs"},{"name":"BUS_EVENT_TYPE_AUCTION","number":"22","description":"Event indicating a change in auction state, for example starting or ending an auction"},{"name":"BUS_EVENT_TYPE_RISK_FACTOR","number":"23","description":"Event indicating a risk factor has been updated"},{"name":"BUS_EVENT_TYPE_NETWORK_PARAMETER","number":"24","description":"Event indicating a network parameter has been added or updated"},{"name":"BUS_EVENT_TYPE_LIQUIDITY_PROVISION","number":"25","description":"Event indicating a liquidity provision has been created or updated"},{"name":"BUS_EVENT_TYPE_MARKET_UPDATED","number":"26","description":"Event indicating a new market was created"},{"name":"BUS_EVENT_TYPE_ORACLE_SPEC","number":"27","description":"Event indicating an oracle spec has been created or updated"},{"name":"BUS_EVENT_TYPE_ORACLE_DATA","number":"28","description":"Event indicating that an oracle data has been broadcast"},{"name":"BUS_EVENT_TYPE_DELEGATION_BALANCE","number":"29","description":"Event indicating that an delegation balance of a party to a node for current epoch has changed"},{"name":"BUS_EVENT_TYPE_VALIDATOR_SCORE","number":"30","description":"Event indicating the validator score for the given epoch"},{"name":"BUS_EVENT_TYPE_EPOCH_UPDATE","number":"31","description":"Event indicating the start or end of an epoch"},{"name":"BUS_EVENT_TYPE_VALIDATOR_UPDATE","number":"32","description":"Event indicating that validator node has been updated"},{"name":"BUS_EVENT_TYPE_STAKE_LINKING","number":"33","description":"Event indicating a new staking event have been processed by the network"},{"name":"BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","number":"34","description":"Event indicating the payout of a reward has been initiated"},{"name":"BUS_EVENT_TYPE_CHECKPOINT","number":"35","description":"Event indicating a new checkpoint was created"},{"name":"BUS_EVENT_TYPE_STREAM_START","number":"36","description":"Event indicating stream is starting"},{"name":"BUS_EVENT_TYPE_KEY_ROTATION","number":"37","description":"Event indicating key rotation took place"},{"name":"BUS_EVENT_TYPE_STATE_VAR","number":"38","description":"Event indicating state transitions in state variable consensus"},{"name":"BUS_EVENT_TYPE_NETWORK_LIMITS","number":"39","description":"Event indicating network limits set or updated"},{"name":"BUS_EVENT_TYPE_TRANSFER","number":"40","description":"Event indicating a update for a transfer"},{"name":"BUS_EVENT_TYPE_VALIDATOR_RANKING","number":"41","description":"Event indicating the ranking of validator and their status in Vega"},{"name":"BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","number":"42","description":"Event indicating a new multi sig signer event have been processed"},{"name":"BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","number":"43","description":"Event indicating the erc20 multi sig threshold have been updated"},{"name":"BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","number":"44","description":"Event indicating a new signer has been added to the ERC-20 multisig"},{"name":"BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","number":"45","description":"Event indicating a signer has been removed from the ERC-20 multisig"},{"name":"BUS_EVENT_TYPE_POSITION_STATE","number":"46","description":"Event indicating that a party's position has changed"},{"name":"BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","number":"47","description":"Event indicating Ethereum key rotation took place"},{"name":"BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","number":"48","description":"Event indicating protocol upgrade proposal updates"},{"name":"BUS_EVENT_TYPE_BEGIN_BLOCK","number":"49","description":"Event indicating the core is starting to process a new block"},{"name":"BUS_EVENT_TYPE_END_BLOCK","number":"50","description":"Event indicating the core finished to process a block"},{"name":"BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","number":"51","description":"Event indicating the core is starting a protocol upgrade"},{"name":"BUS_EVENT_TYPE_SETTLE_MARKET","number":"52","description":"Event indicating the market has stopped and settled"},{"name":"BUS_EVENT_TYPE_TRANSACTION_RESULT","number":"53","description":"Event indicating the result of a transaction processed by the network"},{"name":"BUS_EVENT_TYPE_SNAPSHOT_TAKEN","number":"54","description":"Event indicating a snapshot was taken at this block height"},{"name":"BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","number":"55","description":"Event data node uses to notify that it is ready to upgrade"},{"name":"BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","number":"56","description":"Event indicating parties had orders closed because they were distressed, but were not closed out."},{"name":"BUS_EVENT_TYPE_EXPIRED_ORDERS","number":"57","description":"Event indicating parties had orders closed because they were distressed, but were not closed out."},{"name":"BUS_EVENT_TYPE_DISTRESSED_POSITIONS","number":"58","description":"Event indicating parties have become, or were, distressed but still have an active position."},{"name":"BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","number":"59","description":"Event indicating a spot liquidity provision has been created or updated."},{"name":"BUS_EVENT_TYPE_STOP_ORDER","number":"60","description":"Event indicating a stop order has been submitted or updated."},{"name":"BUS_EVENT_TYPE_FUNDING_PERIOD","number":"61","description":"Event indicating the start or end of a funding period."},{"name":"BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","number":"62","description":"Event indicating a data point for a funding period has been received."},{"name":"BUS_EVENT_TYPE_TEAM_CREATED","number":"63","description":"Event indicating a team has been created."},{"name":"BUS_EVENT_TYPE_TEAM_UPDATED","number":"64","description":"Event indicating a team has been updated."},{"name":"BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","number":"65","description":"Event indicating a referee switched team."},{"name":"BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","number":"66","description":"Event indicating a referee joined a team."},{"name":"BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","number":"67","description":"Event indicating a referral program started."},{"name":"BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","number":"68","description":"Event indicating a referral program has been updated."},{"name":"BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","number":"69","description":"Event indicating a referral program ended."},{"name":"BUS_EVENT_TYPE_REFERRAL_SET_CREATED","number":"70","description":"Event indicating a set has been created."},{"name":"BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","number":"71","description":"Event indicating a referee joined a set."},{"name":"BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","number":"72","description":"Event indicating the updated activity streak for a party"},{"name":"BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","number":"73","description":"Event indicating a volume discount program started."},{"name":"BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","number":"74","description":"Event indicating a volume discount program has been updated."},{"name":"BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","number":"75","description":"Event indicating a volume discount program ended."},{"name":"BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","number":"76","description":"Event indicating the updated statistics for a referral set."},{"name":"BUS_EVENT_TYPE_VESTING_STATS_UPDATED","number":"77","description":"Event indicating the updated statistics for the vesting program."},{"name":"BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","number":"78","description":"Event indicating the updated statistics for the volume discount."},{"name":"BUS_EVENT_TYPE_FEES_STATS_UPDATED","number":"79","description":"Event indicating the fees statistics per market at end of epoch"},{"name":"BUS_EVENT_TYPE_FUNDING_PAYMENTS","number":"80","description":"Event indicating a funding period has ended and resulted in funding payment transfers."},{"name":"BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","number":"81","description":"Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch"},{"name":"BUS_EVENT_TYPE_VESTING_SUMMARY","number":"82","description":"Event used to report the summary of vesting and locked balances at the end of the epoch"},{"name":"BUS_EVENT_TYPE_TRANSFER_FEES_PAID","number":"83","description":"Event used to link ledger entries to the transfer that triggered the fees being collected."},{"name":"BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","number":"84","description":"Event indicating that a party's available transfer fee discount has changed, per asset."},{"name":"BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","number":"85","description":"Event indicating that a party updated their margin mode on a market."},{"name":"BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","number":"86","description":"Event indicating that a party updated their profile."},{"name":"BUS_EVENT_TYPE_MARKET","number":"101","description":"Event indicating a market related event, for example when a market opens"},{"name":"BUS_EVENT_TYPE_TX_ERROR","number":"201","description":"Event used to report failed transactions back to a user, this is excluded from the ALL type"}]},{"name":"Type","longName":"ERC20MultiSigSignerEvent.Type","fullName":"vega.events.v1.ERC20MultiSigSignerEvent.Type","description":"","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":""},{"name":"TYPE_ADDED","number":"1","description":""},{"name":"TYPE_REMOVED","number":"2","description":""}]},{"name":"Source","longName":"FundingPeriodDataPoint.Source","fullName":"vega.events.v1.FundingPeriodDataPoint.Source","description":"","values":[{"name":"SOURCE_UNSPECIFIED","number":"0","description":"Default value"},{"name":"SOURCE_EXTERNAL","number":"1","description":"Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset."},{"name":"SOURCE_INTERNAL","number":"2","description":"Data point from within Vega such as the mark price after performing mark-to-market."}]},{"name":"ProtocolUpgradeProposalStatus","longName":"ProtocolUpgradeProposalStatus","fullName":"vega.events.v1.ProtocolUpgradeProposalStatus","description":"","values":[{"name":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","number":"0","description":""},{"name":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","number":"1","description":"The proposal is pending"},{"name":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","number":"2","description":"The proposal is approved"},{"name":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED","number":"3","description":"The proposal is rejected"}]},{"name":"Status","longName":"StakeLinking.Status","fullName":"vega.events.v1.StakeLinking.Status","description":"","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Default value"},{"name":"STATUS_PENDING","number":"1","description":"Indicates an event waiting for confirmation from the Vega network"},{"name":"STATUS_ACCEPTED","number":"2","description":"Indicates an event accepted by the Vega network"},{"name":"STATUS_REJECTED","number":"3","description":"Indicates an event rejected by the Vega network"}]},{"name":"Type","longName":"StakeLinking.Type","fullName":"vega.events.v1.StakeLinking.Type","description":"","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":"Default value"},{"name":"TYPE_LINK","number":"1","description":"Indicate of a stake deposit instruction"},{"name":"TYPE_UNLINK","number":"2","description":"Indicate of a stake remove instruction"}]},{"name":"Status","longName":"Transfer.Status","fullName":"vega.events.v1.Transfer.Status","description":"","values":[{"name":"STATUS_UNSPECIFIED","number":"0","description":"Default value"},{"name":"STATUS_PENDING","number":"1","description":"Indicates a transfer still being processed"},{"name":"STATUS_DONE","number":"2","description":"Indicates a transfer accepted by the Vega network"},{"name":"STATUS_REJECTED","number":"3","description":"Indicates a transfer rejected by the Vega network"},{"name":"STATUS_STOPPED","number":"4","description":"Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer"},{"name":"STATUS_CANCELLED","number":"5","description":"Indicates a transfer cancelled by the user"}]}],"extensions":[],"messages":[{"name":"AuctionEvent","longName":"AuctionEvent","fullName":"vega.events.v1.AuctionEvent","description":"Auction event indicating a change in auction state, for example starting or ending an auction","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"opening_auction","description":"True if the event indicates an auction opening and False otherwise","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"leave","description":"True if the event indicates leaving auction mode and False otherwise","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"start","description":"Timestamp containing the start time for an auction","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end","description":"Timestamp containing the end time for an auction","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trigger","description":"Reason this market is/was in auction","label":"","type":"AuctionTrigger","longType":"vega.AuctionTrigger","fullType":"vega.AuctionTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"extension_trigger","description":"If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction","label":"","type":"AuctionTrigger","longType":"vega.AuctionTrigger","fullType":"vega.AuctionTrigger","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BeginBlock","longName":"BeginBlock","fullName":"vega.events.v1.BeginBlock","description":"BeginBlock","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"height","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"hash","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"BusEvent","longName":"BusEvent","fullName":"vega.events.v1.BusEvent","description":"Bus event is a container for event bus events emitted by Vega","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Unique event ID for the message","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block","description":"The batch or block of transactions that the events relate to","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"The type of bus event. Must be one of the list below:","label":"","type":"BusEventType","longType":"BusEventType","fullType":"vega.events.v1.BusEventType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"time_update","description":"Time update events","label":"","type":"TimeUpdate","longType":"TimeUpdate","fullType":"vega.events.v1.TimeUpdate","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"ledger_movements","description":"Transfer responses update events","label":"","type":"LedgerMovements","longType":"LedgerMovements","fullType":"vega.events.v1.LedgerMovements","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"position_resolution","description":"Position resolution events","label":"","type":"PositionResolution","longType":"PositionResolution","fullType":"vega.events.v1.PositionResolution","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"order","description":"Order events","label":"","type":"Order","longType":"vega.Order","fullType":"vega.Order","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"account","description":"Account events","label":"","type":"Account","longType":"vega.Account","fullType":"vega.Account","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"party","description":"Party events","label":"","type":"Party","longType":"vega.Party","fullType":"vega.Party","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"trade","description":"Trade events","label":"","type":"Trade","longType":"vega.Trade","fullType":"vega.Trade","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"margin_levels","description":"Margin level update events","label":"","type":"MarginLevels","longType":"vega.MarginLevels","fullType":"vega.MarginLevels","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"proposal","description":"Proposal events for governance","label":"","type":"Proposal","longType":"vega.Proposal","fullType":"vega.Proposal","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"vote","description":"Vote events for governance","label":"","type":"Vote","longType":"vega.Vote","fullType":"vega.Vote","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"market_data","description":"Market data events","label":"","type":"MarketData","longType":"vega.MarketData","fullType":"vega.MarketData","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"node_signature","description":"Node signature events","label":"","type":"NodeSignature","longType":"vega.commands.v1.NodeSignature","fullType":"vega.commands.v1.NodeSignature","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"loss_socialization","description":"Loss socialization events","label":"","type":"LossSocialization","longType":"LossSocialization","fullType":"vega.events.v1.LossSocialization","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"settle_position","description":"Position settlement events","label":"","type":"SettlePosition","longType":"SettlePosition","fullType":"vega.events.v1.SettlePosition","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"settle_distressed","description":"Position distressed events","label":"","type":"SettleDistressed","longType":"SettleDistressed","fullType":"vega.events.v1.SettleDistressed","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"market_created","description":"Market created events","label":"","type":"Market","longType":"vega.Market","fullType":"vega.Market","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"asset","description":"Asset events","label":"","type":"Asset","longType":"vega.Asset","fullType":"vega.Asset","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"market_tick","description":"Market tick events","label":"","type":"MarketTick","longType":"MarketTick","fullType":"vega.events.v1.MarketTick","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"withdrawal","description":"Withdrawal events","label":"","type":"Withdrawal","longType":"vega.Withdrawal","fullType":"vega.Withdrawal","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"deposit","description":"Deposit events","label":"","type":"Deposit","longType":"vega.Deposit","fullType":"vega.Deposit","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"auction","description":"Auction events","label":"","type":"AuctionEvent","longType":"AuctionEvent","fullType":"vega.events.v1.AuctionEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"risk_factor","description":"Risk factor events","label":"","type":"RiskFactor","longType":"vega.RiskFactor","fullType":"vega.RiskFactor","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"network_parameter","description":"Network parameter events","label":"","type":"NetworkParameter","longType":"vega.NetworkParameter","fullType":"vega.NetworkParameter","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"liquidity_provision","description":"LiquidityProvision events","label":"","type":"LiquidityProvision","longType":"vega.LiquidityProvision","fullType":"vega.LiquidityProvision","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"market_updated","description":"Market created events","label":"","type":"Market","longType":"vega.Market","fullType":"vega.Market","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"oracle_spec","description":"OracleSpec events","label":"","type":"OracleSpec","longType":"vega.OracleSpec","fullType":"vega.OracleSpec","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"oracle_data","description":"OracleData events","label":"","type":"OracleData","longType":"vega.OracleData","fullType":"vega.OracleData","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"delegation_balance","description":"Delegation balance events","label":"","type":"DelegationBalanceEvent","longType":"DelegationBalanceEvent","fullType":"vega.events.v1.DelegationBalanceEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"validator_score","description":"Validator score calculated","label":"","type":"ValidatorScoreEvent","longType":"ValidatorScoreEvent","fullType":"vega.events.v1.ValidatorScoreEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"epoch_event","description":"Epoch update events","label":"","type":"EpochEvent","longType":"EpochEvent","fullType":"vega.events.v1.EpochEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"validator_update","description":"Validator update events","label":"","type":"ValidatorUpdate","longType":"ValidatorUpdate","fullType":"vega.events.v1.ValidatorUpdate","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"stake_linking","description":"Staking event","label":"","type":"StakeLinking","longType":"StakeLinking","fullType":"vega.events.v1.StakeLinking","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"reward_payout","description":"Reward payout event","label":"","type":"RewardPayoutEvent","longType":"RewardPayoutEvent","fullType":"vega.events.v1.RewardPayoutEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"checkpoint","description":"Checkpoint was created","label":"","type":"CheckpointEvent","longType":"CheckpointEvent","fullType":"vega.events.v1.CheckpointEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"key_rotation","description":"Key rotation took place","label":"","type":"KeyRotation","longType":"KeyRotation","fullType":"vega.events.v1.KeyRotation","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"state_var","description":"State variable consensus state transition update","label":"","type":"StateVar","longType":"StateVar","fullType":"vega.events.v1.StateVar","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"network_limits","description":"Network limits events","label":"","type":"NetworkLimits","longType":"vega.NetworkLimits","fullType":"vega.NetworkLimits","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"transfer","description":"Transfer event","label":"","type":"Transfer","longType":"Transfer","fullType":"vega.events.v1.Transfer","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"ranking_event","description":"Ranking event","label":"","type":"ValidatorRankingEvent","longType":"ValidatorRankingEvent","fullType":"vega.events.v1.ValidatorRankingEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"erc20_multisig_signer_event","description":"ERC20 multi sig signer event","label":"","type":"ERC20MultiSigSignerEvent","longType":"ERC20MultiSigSignerEvent","fullType":"vega.events.v1.ERC20MultiSigSignerEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"erc20_multisig_set_threshold_event","description":"ERC20 multi sig set threshold event","label":"","type":"ERC20MultiSigThresholdSetEvent","longType":"ERC20MultiSigThresholdSetEvent","fullType":"vega.events.v1.ERC20MultiSigThresholdSetEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"erc20_multisig_signer_added","description":"ERC20 multi sig signer added","label":"","type":"ERC20MultiSigSignerAdded","longType":"ERC20MultiSigSignerAdded","fullType":"vega.events.v1.ERC20MultiSigSignerAdded","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"erc20_multisig_signer_removed","description":"ERC20 multi sig signer removed","label":"","type":"ERC20MultiSigSignerRemoved","longType":"ERC20MultiSigSignerRemoved","fullType":"vega.events.v1.ERC20MultiSigSignerRemoved","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"position_state_event","description":"Position status for a party in a market","label":"","type":"PositionStateEvent","longType":"PositionStateEvent","fullType":"vega.events.v1.PositionStateEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"ethereum_key_rotation","description":"Ethereum key rotation took place","label":"","type":"EthereumKeyRotation","longType":"EthereumKeyRotation","fullType":"vega.events.v1.EthereumKeyRotation","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"protocol_upgrade_event","description":"Protocol upgrade proposal updates","label":"","type":"ProtocolUpgradeEvent","longType":"ProtocolUpgradeEvent","fullType":"vega.events.v1.ProtocolUpgradeEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"begin_block","description":"Core is starting to process a new block","label":"","type":"BeginBlock","longType":"BeginBlock","fullType":"vega.events.v1.BeginBlock","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"end_block","description":"Core finished processing a block","label":"","type":"EndBlock","longType":"EndBlock","fullType":"vega.events.v1.EndBlock","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"protocol_upgrade_started","description":"Core is starting a protocol upgrade","label":"","type":"ProtocolUpgradeStarted","longType":"ProtocolUpgradeStarted","fullType":"vega.events.v1.ProtocolUpgradeStarted","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"settle_market","description":"Settle market event for data-node to update positions for settled markets","label":"","type":"SettleMarket","longType":"SettleMarket","fullType":"vega.events.v1.SettleMarket","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"transaction_result","description":"Result of a transaction processed by the network","label":"","type":"TransactionResult","longType":"TransactionResult","fullType":"vega.events.v1.TransactionResult","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"core_snapshot_event","description":"Core snapshot has been taken at the end of the block","label":"","type":"CoreSnapshotData","longType":"CoreSnapshotData","fullType":"vega.events.v1.CoreSnapshotData","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"protocol_upgrade_data_node_ready","description":"Core snapshot has been taken at the end of the block","label":"","type":"ProtocolUpgradeDataNodeReady","longType":"ProtocolUpgradeDataNodeReady","fullType":"vega.events.v1.ProtocolUpgradeDataNodeReady","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"distressed_orders","description":"Parties that had their orders closed because they were distressed","label":"","type":"DistressedOrders","longType":"DistressedOrders","fullType":"vega.events.v1.DistressedOrders","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"expired_orders","description":"Orders that expired for a given market","label":"","type":"ExpiredOrders","longType":"ExpiredOrders","fullType":"vega.events.v1.ExpiredOrders","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"distressed_positions","description":"Open positions on the market that are/were distressed","label":"","type":"DistressedPositions","longType":"DistressedPositions","fullType":"vega.events.v1.DistressedPositions","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"stop_order","description":"A stop order event","label":"","type":"StopOrderEvent","longType":"StopOrderEvent","fullType":"vega.events.v1.StopOrderEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"funding_period","description":"Start or end of a funding period.","label":"","type":"FundingPeriod","longType":"FundingPeriod","fullType":"vega.events.v1.FundingPeriod","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"funding_period_data_point","description":"Data point within a funding period.","label":"","type":"FundingPeriodDataPoint","longType":"FundingPeriodDataPoint","fullType":"vega.events.v1.FundingPeriodDataPoint","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"team_created","description":"Event notifying of the creation of a team.m","label":"","type":"TeamCreated","longType":"TeamCreated","fullType":"vega.events.v1.TeamCreated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"team_updated","description":"Event notifying of an update to a team.","label":"","type":"TeamUpdated","longType":"TeamUpdated","fullType":"vega.events.v1.TeamUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referee_switched_team","description":"Event notifying that a referee switched teams.","label":"","type":"RefereeSwitchedTeam","longType":"RefereeSwitchedTeam","fullType":"vega.events.v1.RefereeSwitchedTeam","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referee_joined_team","description":"Event notifying that a referee joined a team.","label":"","type":"RefereeJoinedTeam","longType":"RefereeJoinedTeam","fullType":"vega.events.v1.RefereeJoinedTeam","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referral_program_started","description":"Event notifying that a referral program has started.","label":"","type":"ReferralProgramStarted","longType":"ReferralProgramStarted","fullType":"vega.events.v1.ReferralProgramStarted","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referral_program_updated","description":"Event notifying that a referral program has been updated.","label":"","type":"ReferralProgramUpdated","longType":"ReferralProgramUpdated","fullType":"vega.events.v1.ReferralProgramUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referral_program_ended","description":"Event notifying that a referral program has ended.","label":"","type":"ReferralProgramEnded","longType":"ReferralProgramEnded","fullType":"vega.events.v1.ReferralProgramEnded","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referral_set_created","description":"Event notifying a referral set has been created.","label":"","type":"ReferralSetCreated","longType":"ReferralSetCreated","fullType":"vega.events.v1.ReferralSetCreated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referee_joined_referral_set","description":"Event notifying a referee has joined a referral set.","label":"","type":"RefereeJoinedReferralSet","longType":"RefereeJoinedReferralSet","fullType":"vega.events.v1.RefereeJoinedReferralSet","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"party_activity_streak","description":"Event notifying of an update to a party's activity streak","label":"","type":"PartyActivityStreak","longType":"PartyActivityStreak","fullType":"vega.events.v1.PartyActivityStreak","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"volume_discount_program_started","description":"Event notifying that a volume discount program has started.","label":"","type":"VolumeDiscountProgramStarted","longType":"VolumeDiscountProgramStarted","fullType":"vega.events.v1.VolumeDiscountProgramStarted","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"volume_discount_program_updated","description":"Event notifying that a volume discount program has been updated.","label":"","type":"VolumeDiscountProgramUpdated","longType":"VolumeDiscountProgramUpdated","fullType":"vega.events.v1.VolumeDiscountProgramUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"volume_discount_program_ended","description":"Event notifying that a volume discount program has ended.","label":"","type":"VolumeDiscountProgramEnded","longType":"VolumeDiscountProgramEnded","fullType":"vega.events.v1.VolumeDiscountProgramEnded","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"referral_set_stats_updated","description":"Event notifying of an update to a referral set's statistics.","label":"","type":"ReferralSetStatsUpdated","longType":"ReferralSetStatsUpdated","fullType":"vega.events.v1.ReferralSetStatsUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"vesting_stats_updated","description":"Event notifying of an update to the vesting statistics.","label":"","type":"VestingStatsUpdated","longType":"VestingStatsUpdated","fullType":"vega.events.v1.VestingStatsUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"volume_discount_stats_updated","description":"Event notifying of an update to the volume discount statistics.","label":"","type":"VolumeDiscountStatsUpdated","longType":"VolumeDiscountStatsUpdated","fullType":"vega.events.v1.VolumeDiscountStatsUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"fees_stats","description":"Event notifying of an update the fees stats for a market.","label":"","type":"FeesStats","longType":"FeesStats","fullType":"vega.events.v1.FeesStats","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"funding_payments","description":"Event notifying of funding payments at the end of a funding period.","label":"","type":"FundingPayments","longType":"FundingPayments","fullType":"vega.events.v1.FundingPayments","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"paid_liquidity_fees_stats","description":"Event notifying of an update to the liqudity fees stats for a market.","label":"","type":"PaidLiquidityFeesStats","longType":"PaidLiquidityFeesStats","fullType":"vega.events.v1.PaidLiquidityFeesStats","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"vesting_balances_summary","description":"Event notifying of an update to the vesting and locked balances.","label":"","type":"VestingBalancesSummary","longType":"VestingBalancesSummary","fullType":"vega.events.v1.VestingBalancesSummary","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"transfer_fees","description":"Event notifying of fees related to a transfer being paid.","label":"","type":"TransferFees","longType":"TransferFees","fullType":"vega.events.v1.TransferFees","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"transfer_fees_discount","description":"Event notifying of a party's available discounts for transfer fees, per asset.","label":"","type":"TransferFeesDiscount","longType":"TransferFeesDiscount","fullType":"vega.events.v1.TransferFeesDiscount","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"party_margin_mode_updated","description":"Event notifying of a party's margin mode update on a market.","label":"","type":"PartyMarginModeUpdated","longType":"PartyMarginModeUpdated","fullType":"vega.events.v1.PartyMarginModeUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"party_profile_updated","description":"Event notifying of a party's profile update.","label":"","type":"PartyProfileUpdated","longType":"PartyProfileUpdated","fullType":"vega.events.v1.PartyProfileUpdated","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"market","description":"Market tick events","label":"","type":"MarketEvent","longType":"MarketEvent","fullType":"vega.events.v1.MarketEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"tx_err_event","description":"Transaction error events, not included in the ALL event type","label":"","type":"TxErrorEvent","longType":"TxErrorEvent","fullType":"vega.events.v1.TxErrorEvent","ismap":false,"isoneof":true,"oneofdecl":"event","defaultValue":""},{"name":"version","description":"Version of bus event","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CheckpointEvent","longName":"CheckpointEvent","fullName":"vega.events.v1.CheckpointEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"hash","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_hash","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_height","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CoreSnapshotData","longName":"CoreSnapshotData","fullName":"vega.events.v1.CoreSnapshotData","description":"CoreSnapshotData represents the core snapshot data.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"block_height","description":"Block height at which snapshot was taken","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_hash","description":"Hash of the snapshot block","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"core_version","description":"Semver version number of the core.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"protocol_upgrade_block","description":"Indicates if the snapshot is taken as part of protocol upgrade","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DelegationBalanceEvent","longName":"DelegationBalanceEvent","fullName":"vega.events.v1.DelegationBalanceEvent","description":"DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"node_id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DistressedOrders","longName":"DistressedOrders","fullName":"vega.events.v1.DistressedOrders","description":"Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"parties","description":"Slice of Party IDs i.e. each party's public key for the event","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DistressedPositions","longName":"DistressedPositions","fullName":"vega.events.v1.DistressedPositions","description":"Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"distressed_parties","description":"Slice of party IDs i.e. each party's public key, that are distressed but still have open volume","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"safe_parties","description":"Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerAdded","longName":"ERC20MultiSigSignerAdded","fullName":"vega.events.v1.ERC20MultiSigSignerAdded","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"signature_id","description":"ID of the signature bundle","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_id","description":"Node ID of the Vega node to be added","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Time at which this happened","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"new_signer","description":"Ethereum address of the new signer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter","description":"Address of the submitter of the transaction","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce used.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch that the node was added for","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerEvent","longName":"ERC20MultiSigSignerEvent","fullName":"vega.events.v1.ERC20MultiSigSignerEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"","label":"","type":"Type","longType":"ERC20MultiSigSignerEvent.Type","fullType":"vega.events.v1.ERC20MultiSigSignerEvent.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signer","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log_index","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_number","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerRemoved","longName":"ERC20MultiSigSignerRemoved","fullName":"vega.events.v1.ERC20MultiSigSignerRemoved","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"signature_submitters","description":"List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set","label":"repeated","type":"ERC20MultiSigSignerRemovedSubmitter","longType":"ERC20MultiSigSignerRemovedSubmitter","fullType":"vega.events.v1.ERC20MultiSigSignerRemovedSubmitter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_id","description":"Node ID of the Vega node which is to be removed","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Time at which this happened","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"old_signer","description":"Ethereum address of the signer to be removed","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce used.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch that the node was removed for","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerRemovedSubmitter","longName":"ERC20MultiSigSignerRemovedSubmitter","fullName":"vega.events.v1.ERC20MultiSigSignerRemovedSubmitter","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"signature_id","description":"Signature ID of the signer removed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter","description":"Address of the submitter of the transaction","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigThresholdSetEvent","longName":"ERC20MultiSigThresholdSetEvent","fullName":"vega.events.v1.ERC20MultiSigThresholdSetEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"new_threshold","description":"","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log_index","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_number","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EndBlock","longName":"EndBlock","fullName":"vega.events.v1.EndBlock","description":"EndBlock","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"height","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EpochEvent","longName":"EpochEvent","fullName":"vega.events.v1.EpochEvent","description":"Epoch details","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"seq","description":"Sequence number that increases by one each epoch","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"action","description":"Action tells us what action is taking place","label":"","type":"EpochAction","longType":"vega.EpochAction","fullType":"vega.EpochAction","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"start_time","description":"Vega time at which this epoch started","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expire_time","description":"Vega time at which this epoch should end","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_time","description":"Vega time at which this epoch actually ended","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthereumKeyRotation","longName":"EthereumKeyRotation","fullName":"vega.events.v1.EthereumKeyRotation","description":"Event that contains information about an Ethereum key rotation","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID of the node that rotated their Ethereum key","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"old_address","description":"Ethereum address that was previously associated with the node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"new_address","description":"Ethereum address that is newly associated with the node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_height","description":"Block height when the key rotation took effect","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ExpiredOrders","longName":"ExpiredOrders","fullName":"vega.events.v1.ExpiredOrders","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_ids","description":"Slice of expired order IDs","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FeesStats","longName":"FeesStats","fullName":"vega.events.v1.FeesStats","description":"Fees rewards and discounts paid / received per parties during an epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market","description":"Market the fees were paid in","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Settlement asset of the market.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch for which these stats where valid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_rewards_received","description":"Total referral rewards received by the referrer of the referral set.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referrer_rewards_generated","description":"Referral rewards generated by all referee taker fees.","label":"repeated","type":"ReferrerRewardsGenerated","longType":"ReferrerRewardsGenerated","fullType":"vega.events.v1.ReferrerRewardsGenerated","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referees_discount_applied","description":"Total referral discounts applied to all referee taker fees.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume_discount_applied","description":"Total volume discounts applied to all referee taker fees.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_maker_fees_received","description":"Total maker fees received by the maker side.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"maker_fees_generated","description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","label":"repeated","type":"MakerFeesGenerated","longType":"MakerFeesGenerated","fullType":"vega.events.v1.MakerFeesGenerated","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_fees_paid_and_received","description":"Total trading fees received and paid by the party.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPayment","longName":"FundingPayment","fullName":"vega.events.v1.FundingPayment","description":"The amount gained or lost by a party as a result of a funding payment.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"ID of the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"The amount paid, this can be negative for parties who lost at the end of the funding period.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPayments","longName":"FundingPayments","fullName":"vega.events.v1.FundingPayments","description":"Event notifying of funding payments at the end of a funding period.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"ID of the market.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"seq","description":"Sequence number of the funding period associated with these payments.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"payments","description":"List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.","label":"repeated","type":"FundingPayment","longType":"FundingPayment","fullType":"vega.events.v1.FundingPayment","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPeriod","longName":"FundingPeriod","fullName":"vega.events.v1.FundingPeriod","description":"Event notifying on the details of a funding interval for a perpetuals market.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"ID of the market for which this funding period relates to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"seq","description":"Sequence number of the funding period.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"start","description":"Time in Unix nanoseconds when the funding period started.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end","description":"Time in Unix nanoseconds when the funding period ended.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_end","defaultValue":""},{"name":"funding_payment","description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_payment","defaultValue":""},{"name":"funding_rate","description":"Percentage difference between the time-weighted average price of the external and internal data point.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_funding_rate","defaultValue":""},{"name":"internal_twap","description":"TWAP for this period based on the internal data-points.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_internal_twap","defaultValue":""},{"name":"external_twap","description":"TWAP for this period based on the external data-points.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_external_twap","defaultValue":""}]},{"name":"FundingPeriodDataPoint","longName":"FundingPeriodDataPoint","fullName":"vega.events.v1.FundingPeriodDataPoint","description":"Event notifying a data point for a funding period.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID which the data point relates to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"seq","description":"Sequence number of the funding period this data point belongs to.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data_point_type","description":"Origin of the data point.","label":"","type":"Source","longType":"FundingPeriodDataPoint.Source","fullType":"vega.events.v1.FundingPeriodDataPoint.Source","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price of the asset as seen by this data point.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Timestamp in Unix nanoseconds of when the data point was received.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"twap","description":"The TWAP for this source with this data-point added.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"KeyRotation","longName":"KeyRotation","fullName":"vega.events.v1.KeyRotation","description":"Event that contains information about a Vega key rotation","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID of the node that rotated their Vega key","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"old_pub_key","description":"Vega public key that was previously associated with the node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"new_pub_key","description":"Vega public key that is newly associated with the node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_height","description":"Block height when the key rotation took effect","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LedgerMovements","longName":"LedgerMovements","fullName":"vega.events.v1.LedgerMovements","description":"Transfer responses event contains a collection of transfer information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ledger_movements","description":"One or more entries containing internal transfer information","label":"repeated","type":"LedgerMovement","longType":"vega.LedgerMovement","fullType":"vega.LedgerMovement","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LossSocialization","longName":"LossSocialization","fullName":"vega.events.v1.LossSocialization","description":"Loss socialization event contains details on the amount of wins unable to be distributed","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID (public key) for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount distributed","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MakerFeesGenerated","longName":"MakerFeesGenerated","fullName":"vega.events.v1.MakerFeesGenerated","description":"Maker fees generated by the trade aggressor","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"taker","description":"Party that paid the fees.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"maker_fees_paid","description":"Amount of maker fees paid by the taker to the maker.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketEvent","longName":"MarketEvent","fullName":"vega.events.v1.MarketEvent","description":"MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"payload","description":"Payload is a unique information string","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketTick","longName":"MarketTick","fullName":"vega.events.v1.MarketTick","description":"Market tick event contains the time value for when a particular market was last processed on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"time","description":"Timestamp containing latest update from Vega blockchain aka Vega-time","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OneOffGovernanceTransfer","longName":"OneOffGovernanceTransfer","fullName":"vega.events.v1.OneOffGovernanceTransfer","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"deliver_on","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OneOffTransfer","longName":"OneOffTransfer","fullName":"vega.events.v1.OneOffTransfer","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"deliver_on","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PaidLiquidityFeesStats","longName":"PaidLiquidityFeesStats","fullName":"vega.events.v1.PaidLiquidityFeesStats","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market","description":"Market the fees were paid in.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Settlement asset of the market.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch for which these stats where valid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_fees_paid","description":"Total fees paid across all parties.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fees_paid_per_party","description":"Fees paid per party.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyActivityStreak","longName":"PartyActivityStreak","fullName":"vega.events.v1.PartyActivityStreak","description":"The updated activity streak of a party at end of epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"The party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"active_for","description":"How many epoch this party has been active for.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"inactive_for","description":"how many epoch this party has been inactive for.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"is_active","description":"Is this party considered active or not.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_distribution_activity_multiplier","description":"The current rewards distribution multiplier for this party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_vesting_activity_multiplier","description":"The vesting multiplier for this party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch","description":"The epoch this information is relevant to.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"traded_volume","description":"Party's traded volume at the end of the given epoch","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"open_volume","description":"Party's open interest volume at the end of the given epoch","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyAmount","longName":"PartyAmount","fullName":"vega.events.v1.PartyAmount","description":"A pair of a party and amount","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"Receiving party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount received.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum_amount","description":"Amount value in quantum.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyLockedBalance","longName":"PartyLockedBalance","fullName":"vega.events.v1.PartyLockedBalance","description":"A party's locked balance for a given asset.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset","description":"Asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"until_epoch","description":"Epoch in which the balance will be released.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance","description":"Locked balance.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyMarginModeUpdated","longName":"PartyMarginModeUpdated","fullName":"vega.events.v1.PartyMarginModeUpdated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Unique ID of the market in which the update happened.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Unique ID of the party that updated their margin mode.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_mode","description":"Updated margin mode.","label":"","type":"MarginMode","longType":"vega.MarginMode","fullType":"vega.MarginMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_factor","description":"Margin factor for the market. Isolated mode only.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_margin_factor","defaultValue":""},{"name":"min_theoretical_margin_factor","description":"Minimum theoretical margin factor for the market. Isolated mode only.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_min_theoretical_margin_factor","defaultValue":""},{"name":"max_theoretical_leverage","description":"Maximum theoretical leverage for the market. Isolated mode only.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_max_theoretical_leverage","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the update happened.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyProfileUpdated","longName":"PartyProfileUpdated","fullName":"vega.events.v1.PartyProfileUpdated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"updated_profile","description":"Party's profile updated.","label":"","type":"PartyProfile","longType":"vega.PartyProfile","fullType":"vega.PartyProfile","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyVestingBalance","longName":"PartyVestingBalance","fullName":"vega.events.v1.PartyVestingBalance","description":"Balance that is being vested for the party.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset","description":"Asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance","description":"Balance that is vested.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyVestingStats","longName":"PartyVestingStats","fullName":"vega.events.v1.PartyVestingStats","description":"The vesting stats for a given party.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"The party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_bonus_multiplier","description":"The bonus multiplier applied on the reward.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum_balance","description":"The balance of the party, in quantum.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyVestingSummary","longName":"PartyVestingSummary","fullName":"vega.events.v1.PartyVestingSummary","description":"Summary of a party's vesting balances","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"Party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_locked_balances","description":"List of locked balances.","label":"repeated","type":"PartyLockedBalance","longType":"PartyLockedBalance","fullType":"vega.events.v1.PartyLockedBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_vesting_balances","description":"List of vesting balances.","label":"repeated","type":"PartyVestingBalance","longType":"PartyVestingBalance","fullType":"vega.events.v1.PartyVestingBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyVolumeDiscountStats","longName":"PartyVolumeDiscountStats","fullName":"vega.events.v1.PartyVolumeDiscountStats","description":"Volume discount stats for a given party.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"discount_factor","description":"Discount factor applied to fees.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"running_volume","description":"The party's running volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PositionResolution","longName":"PositionResolution","fullName":"vega.events.v1.PositionResolution","description":"Position resolution event contains information on distressed trades","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"distressed","description":"Number of distressed traders","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"closed","description":"Number of close outs","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"mark_price","description":"Mark price as a string representing a scaled price","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PositionStateEvent","longName":"PositionStateEvent","fullName":"vega.events.v1.PositionStateEvent","description":"Position state event contains the current position state for a single party in a single market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID for this position update","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID for this position update","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size","description":"Current position","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"potential_buys","description":"Potential orders","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"potential_sells","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vw_buy_price","description":"Volume weighted prices","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vw_sell_price","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProtocolUpgradeDataNodeReady","longName":"ProtocolUpgradeDataNodeReady","fullName":"vega.events.v1.ProtocolUpgradeDataNodeReady","description":"Event indicating the data node is ready for protocol upgrade","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"last_block_height","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProtocolUpgradeEvent","longName":"ProtocolUpgradeEvent","fullName":"vega.events.v1.ProtocolUpgradeEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"upgrade_block_height","description":"Block height at which to perform the upgrade","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_release_tag","description":"Release tag for the vega binary","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"approvers","description":"Tendermint validators that have agreed to the upgrade","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the proposal","label":"","type":"ProtocolUpgradeProposalStatus","longType":"ProtocolUpgradeProposalStatus","fullType":"vega.events.v1.ProtocolUpgradeProposalStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProtocolUpgradeStarted","longName":"ProtocolUpgradeStarted","fullName":"vega.events.v1.ProtocolUpgradeStarted","description":"Event indicating the core is starting a protocol upgrade","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"last_block_height","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RecurringGovernanceTransfer","longName":"RecurringGovernanceTransfer","fullName":"vega.events.v1.RecurringGovernanceTransfer","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"start_epoch","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_epoch","description":"","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_end_epoch","defaultValue":""},{"name":"dispatch_strategy","description":"","label":"optional","type":"DispatchStrategy","longType":"vega.DispatchStrategy","fullType":"vega.DispatchStrategy","ismap":false,"isoneof":true,"oneofdecl":"_dispatch_strategy","defaultValue":""}]},{"name":"RecurringTransfer","longName":"RecurringTransfer","fullName":"vega.events.v1.RecurringTransfer","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"start_epoch","description":"","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_epoch","description":"","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_end_epoch","defaultValue":""},{"name":"factor","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"dispatch_strategy","description":"","label":"","type":"DispatchStrategy","longType":"vega.DispatchStrategy","fullType":"vega.DispatchStrategy","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RefereeJoinedReferralSet","longName":"RefereeJoinedReferralSet","fullName":"vega.events.v1.RefereeJoinedReferralSet","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"set_id","description":"Unique ID of the referral set the referee joined.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referee","description":"Party that joined the set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"joined_at","description":"Time in Unix nanoseconds when the party joined the set.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the party joined the set.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RefereeJoinedTeam","longName":"RefereeJoinedTeam","fullName":"vega.events.v1.RefereeJoinedTeam","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team_id","description":"The unique identifier of the team the referee joined.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referee","description":"The party that joined the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"joined_at","description":"Time in Unix nanoseconds when the party joined a team.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the party joined the team.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RefereeStats","longName":"RefereeStats","fullName":"vega.events.v1.RefereeStats","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Unique ID of the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"discount_factor","description":"Discount factor applied to the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_notional_taker_volume","description":"Current referee notional taker volume","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RefereeSwitchedTeam","longName":"RefereeSwitchedTeam","fullName":"vega.events.v1.RefereeSwitchedTeam","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"from_team_id","description":"The unique identifier of the team the referee left.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_team_id","description":"The unique identifier of the team joined.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referee","description":"The party that switched team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"switched_at","description":"Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the party switched the team.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralProgramEnded","longName":"ReferralProgramEnded","fullName":"vega.events.v1.ReferralProgramEnded","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"version","description":"Program update version.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"id","description":"Unique ID of the referral program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ended_at","description":"Time in Unix nanoseconds when the referral program ended.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the referral program ended.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralProgramStarted","longName":"ReferralProgramStarted","fullName":"vega.events.v1.ReferralProgramStarted","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"program","description":"Referral program that has started.","label":"","type":"ReferralProgram","longType":"vega.ReferralProgram","fullType":"vega.ReferralProgram","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"started_at","description":"Time in Unix nanoseconds when the referral program started.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the referral program started.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralProgramUpdated","longName":"ReferralProgramUpdated","fullName":"vega.events.v1.ReferralProgramUpdated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"program","description":"The updated referral program.","label":"","type":"ReferralProgram","longType":"vega.ReferralProgram","fullType":"vega.ReferralProgram","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Time in Unix nanoseconds when the referral program was updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the referral program was updated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetCreated","longName":"ReferralSetCreated","fullName":"vega.events.v1.ReferralSetCreated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"set_id","description":"Unique ID of the created set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referrer","description":"Party that created the set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_at","description":"Time in Unix nanoseconds when the set was created.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Time in Unix nanoseconds when the set was updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetStatsUpdated","longName":"ReferralSetStatsUpdated","fullName":"vega.events.v1.ReferralSetStatsUpdated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"set_id","description":"Unique ID of the set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the set's statistics are updated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referral_set_running_notional_taker_volume","description":"Running volume for the set based on the window length of the current\nreferral program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referees_stats","description":"Referees' statistics for that epoch.","label":"repeated","type":"RefereeStats","longType":"RefereeStats","fullType":"vega.events.v1.RefereeStats","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_factor","description":"Reward factor applied to the trades.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rewards_multiplier","description":"Rewards multiplier applied to the trades.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rewards_factor_multiplier","description":"Rewards factor multiplier for the trades.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"was_eligible","description":"Indicates if the referral set was eligible to be part of the referral program.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referrer_taker_volume","description":"Taker volume of the referrer","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferrerRewardsGenerated","longName":"ReferrerRewardsGenerated","fullName":"vega.events.v1.ReferrerRewardsGenerated","description":"Rewards generated for referrers by each of their referees","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"referrer","description":"Referrer party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"generated_reward","description":"Amount of rewards generated per party.","label":"repeated","type":"PartyAmount","longType":"PartyAmount","fullType":"vega.events.v1.PartyAmount","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RewardPayoutEvent","longName":"RewardPayoutEvent","fullName":"vega.events.v1.RewardPayoutEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"percent_of_total_reward","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_type","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"locked_until_epoch","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum_amount","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"game_id","description":"","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_game_id","defaultValue":""}]},{"name":"SettleDistressed","longName":"SettleDistressed","fullName":"vega.events.v1.SettleDistressed","description":"Settle distressed event contains information on distressed trading parties who are closed out\n\nNote: Any PositionResolution event (market level) will most likely be followed by a number of these events","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID i.e. a party's public key for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin","description":"Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SettleMarket","longName":"SettleMarket","fullName":"vega.events.v1.SettleMarket","description":"Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price of settlement as a string","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"position_factor","description":"Position factor - 10 ^ number of position decimal places","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SettlePosition","longName":"SettlePosition","fullName":"vega.events.v1.SettlePosition","description":"Settle position event contains position settlement information for a party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID (public key) for the event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price of settlement as a string","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trade_settlements","description":"A collection of 1 or more trade settlements","label":"repeated","type":"TradeSettlement","longType":"TradeSettlement","fullType":"vega.events.v1.TradeSettlement","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"position_factor","description":"Position factor - 10 ^ number of position decimal places","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StakeLinking","longName":"StakeLinking","fullName":"vega.events.v1.StakeLinking","description":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Internal ID for this staking event","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Stake linking event type.","label":"","type":"Type","longType":"StakeLinking.Type","fullType":"vega.events.v1.StakeLinking.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ts","description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party","description":"Party to whom the event is directed at.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount of stake deposited or removed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the event.","label":"","type":"Status","longType":"StakeLinking.Status","fullType":"vega.events.v1.StakeLinking.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"finalized_at","description":"Time at which the Vega network finalised the state of the event.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"Hash of the transaction in which the event happened.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_height","description":"Block when the event happened.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_time","description":"Block time.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log_index","description":"Log index.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_address","description":"Ethereum address from which the stake link was initiated.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StateVar","longName":"StateVar","fullName":"vega.events.v1.StateVar","description":"StateVar event updates on state changes in state variable consensus","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"event_id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"state","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StopOrderEvent","longName":"StopOrderEvent","fullName":"vega.events.v1.StopOrderEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"submission","description":"","label":"","type":"OrderSubmission","longType":"vega.commands.v1.OrderSubmission","fullType":"vega.commands.v1.OrderSubmission","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stop_order","description":"","label":"","type":"StopOrder","longType":"vega.StopOrder","fullType":"vega.StopOrder","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StreamStartEvent","longName":"StreamStartEvent","fullName":"vega.events.v1.StreamStartEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"chain_id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamCreated","longName":"TeamCreated","fullName":"vega.events.v1.TeamCreated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"team_id","description":"The unique identifier of the created team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referrer","description":"The party that created the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Name of the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team_url","description":"Link to the team's homepage.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_url","defaultValue":""},{"name":"avatar_url","description":"Link to an image of the team's avatar.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_avatar_url","defaultValue":""},{"name":"created_at","description":"Time in Unix nanoseconds when the team is created.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"closed","description":"Tells if a party can join the team or not.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the team was created.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"allow_list","description":"List of public keys that are allowed to join the team.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamUpdated","longName":"TeamUpdated","fullName":"vega.events.v1.TeamUpdated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"team_id","description":"The unique identifier for the updated team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Name of the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team_url","description":"Link to the team's homepage.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_url","defaultValue":""},{"name":"avatar_url","description":"Link to an image of the team's avatar.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_avatar_url","defaultValue":""},{"name":"closed","description":"Tells if a party can join the team or not.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"allow_list","description":"List of public keys that are allowed to join the team.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TimeUpdate","longName":"TimeUpdate","fullName":"vega.events.v1.TimeUpdate","description":"Time update event contains the latest time update from Vega blockchain and indicates the start of a new block","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"timestamp","description":"Timestamp containing latest update from Vega blockchain aka Vega-time","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TradeSettlement","longName":"TradeSettlement","fullName":"vega.events.v1.TradeSettlement","description":"Trade settlement is part of the settle position event","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"size","description":"Size of trade settlement","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price of settlement as string (in asset decimals)","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_price","description":"Price of settlement as a string (in market decimals)","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TransactionResult","longName":"TransactionResult","fullName":"vega.events.v1.TransactionResult","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Unique party ID for the related party","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the transaction, did it succeed or an error was raised.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"hash","description":"Hash of the transaction\n\nTransaction itself as received by the network","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_submission","description":"","label":"","type":"OrderSubmission","longType":"vega.commands.v1.OrderSubmission","fullType":"vega.commands.v1.OrderSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"order_amendment","description":"","label":"","type":"OrderAmendment","longType":"vega.commands.v1.OrderAmendment","fullType":"vega.commands.v1.OrderAmendment","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"order_cancellation","description":"","label":"","type":"OrderCancellation","longType":"vega.commands.v1.OrderCancellation","fullType":"vega.commands.v1.OrderCancellation","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"proposal","description":"","label":"","type":"ProposalSubmission","longType":"vega.commands.v1.ProposalSubmission","fullType":"vega.commands.v1.ProposalSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"vote_submission","description":"","label":"","type":"VoteSubmission","longType":"vega.commands.v1.VoteSubmission","fullType":"vega.commands.v1.VoteSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"liquidity_provision_submission","description":"","label":"","type":"LiquidityProvisionSubmission","longType":"vega.commands.v1.LiquidityProvisionSubmission","fullType":"vega.commands.v1.LiquidityProvisionSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"withdraw_submission","description":"","label":"","type":"WithdrawSubmission","longType":"vega.commands.v1.WithdrawSubmission","fullType":"vega.commands.v1.WithdrawSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"delegate_submission","description":"","label":"","type":"DelegateSubmission","longType":"vega.commands.v1.DelegateSubmission","fullType":"vega.commands.v1.DelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"undelegate_submission","description":"","label":"","type":"UndelegateSubmission","longType":"vega.commands.v1.UndelegateSubmission","fullType":"vega.commands.v1.UndelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"liquidity_provision_cancellation","description":"","label":"","type":"LiquidityProvisionCancellation","longType":"vega.commands.v1.LiquidityProvisionCancellation","fullType":"vega.commands.v1.LiquidityProvisionCancellation","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"liquidity_provision_amendment","description":"","label":"","type":"LiquidityProvisionAmendment","longType":"vega.commands.v1.LiquidityProvisionAmendment","fullType":"vega.commands.v1.LiquidityProvisionAmendment","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"transfer","description":"","label":"","type":"Transfer","longType":"vega.commands.v1.Transfer","fullType":"vega.commands.v1.Transfer","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"cancel_transfer","description":"","label":"","type":"CancelTransfer","longType":"vega.commands.v1.CancelTransfer","fullType":"vega.commands.v1.CancelTransfer","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"announce_node","description":"","label":"","type":"AnnounceNode","longType":"vega.commands.v1.AnnounceNode","fullType":"vega.commands.v1.AnnounceNode","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"oracle_data_submission","description":"","label":"","type":"OracleDataSubmission","longType":"vega.commands.v1.OracleDataSubmission","fullType":"vega.commands.v1.OracleDataSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"protocol_upgrade_proposal","description":"","label":"","type":"ProtocolUpgradeProposal","longType":"vega.commands.v1.ProtocolUpgradeProposal","fullType":"vega.commands.v1.ProtocolUpgradeProposal","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"issue_signatures","description":"","label":"","type":"IssueSignatures","longType":"vega.commands.v1.IssueSignatures","fullType":"vega.commands.v1.IssueSignatures","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"batch_market_instructions","description":"","label":"","type":"BatchMarketInstructions","longType":"vega.commands.v1.BatchMarketInstructions","fullType":"vega.commands.v1.BatchMarketInstructions","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"key_rotate_submission","description":"","label":"","type":"KeyRotateSubmission","longType":"vega.commands.v1.KeyRotateSubmission","fullType":"vega.commands.v1.KeyRotateSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"ethereum_key_rotate_submission","description":"","label":"","type":"EthereumKeyRotateSubmission","longType":"vega.commands.v1.EthereumKeyRotateSubmission","fullType":"vega.commands.v1.EthereumKeyRotateSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"stop_order_submission","description":"","label":"","type":"StopOrdersSubmission","longType":"vega.commands.v1.StopOrdersSubmission","fullType":"vega.commands.v1.StopOrdersSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"stop_order_cancellation","description":"","label":"","type":"StopOrdersCancellation","longType":"vega.commands.v1.StopOrdersCancellation","fullType":"vega.commands.v1.StopOrdersCancellation","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"create_referral_set","description":"","label":"","type":"CreateReferralSet","longType":"vega.commands.v1.CreateReferralSet","fullType":"vega.commands.v1.CreateReferralSet","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"update_referral_set","description":"","label":"","type":"UpdateReferralSet","longType":"vega.commands.v1.UpdateReferralSet","fullType":"vega.commands.v1.UpdateReferralSet","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"apply_referral_code","description":"","label":"","type":"ApplyReferralCode","longType":"vega.commands.v1.ApplyReferralCode","fullType":"vega.commands.v1.ApplyReferralCode","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"update_margin_mode","description":"","label":"","type":"UpdateMarginMode","longType":"vega.commands.v1.UpdateMarginMode","fullType":"vega.commands.v1.UpdateMarginMode","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"join_team","description":"","label":"","type":"JoinTeam","longType":"vega.commands.v1.JoinTeam","fullType":"vega.commands.v1.JoinTeam","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"batch_proposal","description":"","label":"","type":"BatchProposalSubmission","longType":"vega.commands.v1.BatchProposalSubmission","fullType":"vega.commands.v1.BatchProposalSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"update_party_profile","description":"","label":"","type":"UpdatePartyProfile","longType":"vega.commands.v1.UpdatePartyProfile","fullType":"vega.commands.v1.UpdatePartyProfile","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"success","description":"","label":"","type":"SuccessDetails","longType":"TransactionResult.SuccessDetails","fullType":"vega.events.v1.TransactionResult.SuccessDetails","ismap":false,"isoneof":true,"oneofdecl":"extra","defaultValue":""},{"name":"failure","description":"","label":"","type":"FailureDetails","longType":"TransactionResult.FailureDetails","fullType":"vega.events.v1.TransactionResult.FailureDetails","ismap":false,"isoneof":true,"oneofdecl":"extra","defaultValue":""}]},{"name":"FailureDetails","longName":"TransactionResult.FailureDetails","fullName":"vega.events.v1.TransactionResult.FailureDetails","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"error","description":"Error message explaining the reason for the transaction failing processing","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SuccessDetails","longName":"TransactionResult.SuccessDetails","fullName":"vega.events.v1.TransactionResult.SuccessDetails","description":"TBD","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"Transfer","longName":"Transfer","fullName":"vega.events.v1.Transfer","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_account_type","description":"","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account_type","description":"","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"","label":"","type":"Status","longType":"Transfer.Status","fullType":"vega.events.v1.Transfer.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reason","description":"","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_reason","defaultValue":""},{"name":"game_id","description":"ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_game_id","defaultValue":""},{"name":"one_off","description":"","label":"","type":"OneOffTransfer","longType":"OneOffTransfer","fullType":"vega.events.v1.OneOffTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""},{"name":"recurring","description":"","label":"","type":"RecurringTransfer","longType":"RecurringTransfer","fullType":"vega.events.v1.RecurringTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""},{"name":"one_off_governance","description":"","label":"","type":"OneOffGovernanceTransfer","longType":"OneOffGovernanceTransfer","fullType":"vega.events.v1.OneOffGovernanceTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""},{"name":"recurring_governance","description":"","label":"","type":"RecurringGovernanceTransfer","longType":"RecurringGovernanceTransfer","fullType":"vega.events.v1.RecurringGovernanceTransfer","ismap":false,"isoneof":true,"oneofdecl":"kind","defaultValue":""}]},{"name":"TransferFees","longName":"TransferFees","fullName":"vega.events.v1.TransferFees","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transfer_id","description":"Transfer that triggered the collection of fees.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount of fees paid.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch","description":"Epoch when the transfer was dispatched, and fees were paid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"discount_applied","description":"Amount that was subtracted from the transfer fee based on available discounts.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TransferFeesDiscount","longName":"TransferFeesDiscount","fullName":"vega.events.v1.TransferFeesDiscount","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"Party that the transfer fee discount applies to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset that the transfer fee discount is relevant to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount that the transfer fee was discounted by.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch","description":"Epoch in which the discount was first available.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TxErrorEvent","longName":"TxErrorEvent","fullName":"vega.events.v1.TxErrorEvent","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Unique party ID for the related party","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"err_msg","description":"Error message describing what went wrong","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_submission","description":"","label":"","type":"OrderSubmission","longType":"vega.commands.v1.OrderSubmission","fullType":"vega.commands.v1.OrderSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"order_amendment","description":"","label":"","type":"OrderAmendment","longType":"vega.commands.v1.OrderAmendment","fullType":"vega.commands.v1.OrderAmendment","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"order_cancellation","description":"","label":"","type":"OrderCancellation","longType":"vega.commands.v1.OrderCancellation","fullType":"vega.commands.v1.OrderCancellation","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"proposal","description":"","label":"","type":"ProposalSubmission","longType":"vega.commands.v1.ProposalSubmission","fullType":"vega.commands.v1.ProposalSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"vote_submission","description":"","label":"","type":"VoteSubmission","longType":"vega.commands.v1.VoteSubmission","fullType":"vega.commands.v1.VoteSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"liquidity_provision_submission","description":"","label":"","type":"LiquidityProvisionSubmission","longType":"vega.commands.v1.LiquidityProvisionSubmission","fullType":"vega.commands.v1.LiquidityProvisionSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"withdraw_submission","description":"","label":"","type":"WithdrawSubmission","longType":"vega.commands.v1.WithdrawSubmission","fullType":"vega.commands.v1.WithdrawSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"delegate_submission","description":"","label":"","type":"DelegateSubmission","longType":"vega.commands.v1.DelegateSubmission","fullType":"vega.commands.v1.DelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"undelegate_submission","description":"","label":"","type":"UndelegateSubmission","longType":"vega.commands.v1.UndelegateSubmission","fullType":"vega.commands.v1.UndelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"liquidity_provision_cancellation","description":"","label":"","type":"LiquidityProvisionCancellation","longType":"vega.commands.v1.LiquidityProvisionCancellation","fullType":"vega.commands.v1.LiquidityProvisionCancellation","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"liquidity_provision_amendment","description":"","label":"","type":"LiquidityProvisionAmendment","longType":"vega.commands.v1.LiquidityProvisionAmendment","fullType":"vega.commands.v1.LiquidityProvisionAmendment","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"transfer","description":"","label":"","type":"Transfer","longType":"vega.commands.v1.Transfer","fullType":"vega.commands.v1.Transfer","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"cancel_transfer","description":"","label":"","type":"CancelTransfer","longType":"vega.commands.v1.CancelTransfer","fullType":"vega.commands.v1.CancelTransfer","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"announce_node","description":"","label":"","type":"AnnounceNode","longType":"vega.commands.v1.AnnounceNode","fullType":"vega.commands.v1.AnnounceNode","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"oracle_data_submission","description":"","label":"","type":"OracleDataSubmission","longType":"vega.commands.v1.OracleDataSubmission","fullType":"vega.commands.v1.OracleDataSubmission","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"protocol_upgrade_proposal","description":"","label":"","type":"ProtocolUpgradeProposal","longType":"vega.commands.v1.ProtocolUpgradeProposal","fullType":"vega.commands.v1.ProtocolUpgradeProposal","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"issue_signatures","description":"","label":"","type":"IssueSignatures","longType":"vega.commands.v1.IssueSignatures","fullType":"vega.commands.v1.IssueSignatures","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""},{"name":"batch_market_instructions","description":"","label":"","type":"BatchMarketInstructions","longType":"vega.commands.v1.BatchMarketInstructions","fullType":"vega.commands.v1.BatchMarketInstructions","ismap":false,"isoneof":true,"oneofdecl":"transaction","defaultValue":""}]},{"name":"ValidatorRankingEvent","longName":"ValidatorRankingEvent","fullName":"vega.events.v1.ValidatorRankingEvent","description":"Event that explains the status of the validator for the coming epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stake_score","description":"Stake based score - no anti-whaling","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"performance_score","description":"Performance base score","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ranking_score","description":"Final score","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"previous_status","description":"Status of the validator in the previous epoch","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"next_status","description":"Status of the validator in the next epoch","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch seq for which the status is valid","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tm_voting_power","description":"Tendermint voting power of the validator","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ValidatorScoreEvent","longName":"ValidatorScoreEvent","fullName":"vega.events.v1.ValidatorScoreEvent","description":"ValidatorScoreEvent is the score a validator gets for a given epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_score","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"normalised_score","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_performance","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"raw_validator_score","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"validator_status","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"multisig_score","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ValidatorUpdate","longName":"ValidatorUpdate","fullName":"vega.events.v1.ValidatorUpdate","description":"Validator update event contains information about validator node","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID of the validator node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_pub_key","description":"Vega public key of validator node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_address","description":"Ethereum public key of validator node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tm_pub_key","description":"Public key of Tendermint","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"info_url","description":"URL with more info on the node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"country","description":"Country code (ISO 3166-1 alpha-2) for the location of the node","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Name of the validator","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"avatar_url","description":"AvatarURL of the validator","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_pub_key_index","description":"Vega public key derivation index","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"added","description":"Flag indicating if the validator has been added to or removed from vega","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_epoch","description":"Epoch in which the announced pending node will start participating in the network","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter_address","description":"Ethereum public key being used as the submitter to allow automatic signature generation","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch in which the node was announced or removed from the network","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VestingBalancesSummary","longName":"VestingBalancesSummary","fullName":"vega.events.v1.VestingBalancesSummary","description":"Summary of the vesting and locked balances for an epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"epoch_seq","description":"Epoch for which these balances are valid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"parties_vesting_summary","description":"Parties' summaries.","label":"repeated","type":"PartyVestingSummary","longType":"PartyVestingSummary","fullType":"vega.events.v1.PartyVestingSummary","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VestingStatsUpdated","longName":"VestingStatsUpdated","fullName":"vega.events.v1.VestingStatsUpdated","description":"Stats of all parties invested in the vesting program.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"at_epoch","description":"Epoch at which the vesting statistics are updated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stats","description":"All parties stats.","label":"repeated","type":"PartyVestingStats","longType":"PartyVestingStats","fullType":"vega.events.v1.PartyVestingStats","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountProgramEnded","longName":"VolumeDiscountProgramEnded","fullName":"vega.events.v1.VolumeDiscountProgramEnded","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"version","description":"Program update version.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"id","description":"Unique ID of the volume discount program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ended_at","description":"Time in Unix nanoseconds when the referral program ended.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the referral program ended.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountProgramStarted","longName":"VolumeDiscountProgramStarted","fullName":"vega.events.v1.VolumeDiscountProgramStarted","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"program","description":"Volume discount program that has started.","label":"","type":"VolumeDiscountProgram","longType":"vega.VolumeDiscountProgram","fullType":"vega.VolumeDiscountProgram","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"started_at","description":"Time in Unix nanoseconds when the volume discount program started.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the volume discount program started.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountProgramUpdated","longName":"VolumeDiscountProgramUpdated","fullName":"vega.events.v1.VolumeDiscountProgramUpdated","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"program","description":"The updated volume discount program.","label":"","type":"VolumeDiscountProgram","longType":"vega.VolumeDiscountProgram","fullType":"vega.VolumeDiscountProgram","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Time in Unix nanoseconds when the volume discount program was updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the volume discount program was updated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountStatsUpdated","longName":"VolumeDiscountStatsUpdated","fullName":"vega.events.v1.VolumeDiscountStatsUpdated","description":"Stats of all parties eligible for volume discount.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"at_epoch","description":"Epoch at which the volume discount statistics are updated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stats","description":"All parties' stats.","label":"repeated","type":"PartyVolumeDiscountStats","longType":"PartyVolumeDiscountStats","fullType":"vega.events.v1.PartyVolumeDiscountStats","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[]},{"name":"data-node/api/v2/trading_data.proto","description":"","package":"datanode.api.v2","hasEnums":true,"hasExtensions":false,"hasMessages":true,"hasServices":true,"enums":[{"name":"AccountField","longName":"AccountField","fullName":"datanode.api.v2.AccountField","description":"List of the properties of an account, used for grouping","values":[{"name":"ACCOUNT_FIELD_UNSPECIFIED","number":"0","description":""},{"name":"ACCOUNT_FIELD_ID","number":"1","description":""},{"name":"ACCOUNT_FIELD_PARTY_ID","number":"2","description":""},{"name":"ACCOUNT_FIELD_ASSET_ID","number":"3","description":""},{"name":"ACCOUNT_FIELD_MARKET_ID","number":"4","description":""},{"name":"ACCOUNT_FIELD_TYPE","number":"5","description":""}]},{"name":"LedgerEntryField","longName":"LedgerEntryField","fullName":"datanode.api.v2.LedgerEntryField","description":"List of fields for a ledger entry","values":[{"name":"LEDGER_ENTRY_FIELD_UNSPECIFIED","number":"0","description":""},{"name":"LEDGER_ENTRY_FIELD_ACCOUNT_FROM_ID","number":"1","description":""},{"name":"LEDGER_ENTRY_FIELD_ACCOUNT_TO_ID","number":"2","description":""},{"name":"LEDGER_ENTRY_FIELD_TRANSFER_TYPE","number":"3","description":""}]},{"name":"Type","longName":"ListGovernanceDataRequest.Type","fullName":"datanode.api.v2.ListGovernanceDataRequest.Type","description":"Filter for the types of governance proposals to view","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":""},{"name":"TYPE_ALL","number":"1","description":"List all proposals"},{"name":"TYPE_NEW_MARKET","number":"2","description":"List new market proposals"},{"name":"TYPE_UPDATE_MARKET","number":"3","description":"List update market proposals"},{"name":"TYPE_NETWORK_PARAMETERS","number":"4","description":"List change Vega network parameter proposals"},{"name":"TYPE_NEW_ASSET","number":"5","description":"New asset proposals"},{"name":"TYPE_NEW_FREE_FORM","number":"6","description":"Proposals for creating a new free form proposal"},{"name":"TYPE_UPDATE_ASSET","number":"7","description":"Update asset proposals"},{"name":"TYPE_NEW_SPOT_MARKET","number":"8","description":"Propose a new spot market"},{"name":"TYPE_UPDATE_SPOT_MARKET","number":"9","description":"Update an existing spot market"},{"name":"TYPE_NEW_TRANSFER","number":"10","description":"Propose a new transfer"},{"name":"TYPE_CANCEL_TRANSFER","number":"11","description":"Proposal to cancel a transfer"},{"name":"TYPE_UPDATE_MARKET_STATE","number":"12","description":"Proposal for updating the state of a market"},{"name":"TYPE_UPDATE_REFERRAL_PROGRAM","number":"13","description":"Proposal to update the referral program"},{"name":"TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM","number":"14","description":"Proposal to update the volume discount program"}]},{"name":"Scope","longName":"ListTransfersRequest.Scope","fullName":"datanode.api.v2.ListTransfersRequest.Scope","description":"Defines the types of a dispatch strategy's scope the API can filter on.","values":[{"name":"SCOPE_UNSPECIFIED","number":"0","description":""},{"name":"SCOPE_INDIVIDUAL","number":"1","description":"Matches transfers that have dispatch strategy scope of individual set."},{"name":"SCOPE_TEAM","number":"2","description":"Matches transfers that have dispatch strategy scope of team set."}]},{"name":"Table","longName":"Table","fullName":"datanode.api.v2.Table","description":"","values":[{"name":"TABLE_UNSPECIFIED","number":"0","description":""},{"name":"TABLE_BALANCES","number":"1","description":""},{"name":"TABLE_CHECKPOINTS","number":"2","description":""},{"name":"TABLE_DELEGATIONS","number":"3","description":""},{"name":"TABLE_LEDGER","number":"4","description":""},{"name":"TABLE_ORDERS","number":"5","description":""},{"name":"TABLE_TRADES","number":"6","description":""},{"name":"TABLE_MARKET_DATA","number":"7","description":""},{"name":"TABLE_MARGIN_LEVELS","number":"8","description":""},{"name":"TABLE_POSITIONS","number":"9","description":""},{"name":"TABLE_LIQUIDITY_PROVISIONS","number":"10","description":""},{"name":"TABLE_MARKETS","number":"11","description":""},{"name":"TABLE_DEPOSITS","number":"12","description":""},{"name":"TABLE_WITHDRAWALS","number":"13","description":""},{"name":"TABLE_BLOCKS","number":"14","description":""},{"name":"TABLE_REWARDS","number":"15","description":""}]},{"name":"TransferDirection","longName":"TransferDirection","fullName":"datanode.api.v2.TransferDirection","description":"Direction of a transfer","values":[{"name":"TRANSFER_DIRECTION_UNSPECIFIED","number":"0","description":""},{"name":"TRANSFER_DIRECTION_TRANSFER_FROM","number":"1","description":""},{"name":"TRANSFER_DIRECTION_TRANSFER_TO","number":"2","description":""},{"name":"TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM","number":"3","description":""}]}],"extensions":[],"messages":[{"name":"AccountBalance","longName":"AccountBalance","fullName":"datanode.api.v2.AccountBalance","description":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"owner","description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance","description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset ID for the account.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID for the account, this field will be empty if the asset is in a general account.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Account type of this account.","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AccountEdge","longName":"AccountEdge","fullName":"datanode.api.v2.AccountEdge","description":"Account data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Account balance data.","label":"","type":"AccountBalance","longType":"AccountBalance","fullType":"datanode.api.v2.AccountBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages with reference to this account.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AccountFilter","longName":"AccountFilter","fullName":"datanode.api.v2.AccountFilter","description":"Account filter is used to filter account data.\n\nAn account is defined as a set of asset ID, type, party ID, and market ID.\n- Every account has an associated asset and type.\n- Certain account types such as the global reward pool for example, do not have an associated party.\n These are denoted by the special party ID 'network'.\n- Certain account types do not have an associated market such as the general party accounts, for example.\n These are denoted by the special market ID '' (an empty string).","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_id","description":"Restrict accounts to those holding balances in this asset ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_ids","description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_ids","description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"account_types","description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.","label":"repeated","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AccountSnapshotPage","longName":"AccountSnapshotPage","fullName":"datanode.api.v2.AccountSnapshotPage","description":"'Initial image' snapshot containing current account balances - may be sent over several response messages","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"accounts","description":"List of account balances.","label":"repeated","type":"AccountBalance","longType":"AccountBalance","fullType":"datanode.api.v2.AccountBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_page","description":"Indicator if the current page is the last one or not.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AccountUpdates","longName":"AccountUpdates","fullName":"datanode.api.v2.AccountUpdates","description":"List of account updates in the last block","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"accounts","description":"List of account balances.","label":"repeated","type":"AccountBalance","longType":"AccountBalance","fullType":"datanode.api.v2.AccountBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AccountsConnection","longName":"AccountsConnection","fullName":"datanode.api.v2.AccountsConnection","description":"Page of accounts data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of accounts data and their corresponding cursors.","label":"repeated","type":"AccountEdge","longType":"AccountEdge","fullType":"datanode.api.v2.AccountEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AggregatedBalance","longName":"AggregatedBalance","fullName":"datanode.api.v2.AggregatedBalance","description":"AggregatedBalance data contains the balance of the set of requested accounts combined with corresponding\nparty ID, market ID and account type details","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"timestamp","description":"Timestamp in Unix nanoseconds of the block in which the balance exists.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance","description":"Balance of the set of requested accounts at the time above.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"If grouping by party, the party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"asset_id","description":"If grouping by asset, the asset ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"market_id","description":"If grouping by market, the market ID","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"account_type","description":"If grouping by account type, the account type.","label":"optional","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":true,"oneofdecl":"_account_type","defaultValue":""}]},{"name":"AggregatedBalanceConnection","longName":"AggregatedBalanceConnection","fullName":"datanode.api.v2.AggregatedBalanceConnection","description":"Page of aggregated balance objects and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of aggregated balance data and their corresponding cursors.","label":"repeated","type":"AggregatedBalanceEdge","longType":"AggregatedBalanceEdge","fullType":"datanode.api.v2.AggregatedBalanceEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AggregatedBalanceEdge","longName":"AggregatedBalanceEdge","fullName":"datanode.api.v2.AggregatedBalanceEdge","description":"Aggregated balance data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Balance of the set of requested accounts.","label":"","type":"AggregatedBalance","longType":"AggregatedBalance","fullType":"datanode.api.v2.AggregatedBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AggregatedLedgerEntriesConnection","longName":"AggregatedLedgerEntriesConnection","fullName":"datanode.api.v2.AggregatedLedgerEntriesConnection","description":"Page of aggregated ledger entries data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of 'AggregatedLedgerEntry' data and their corresponding cursors.","label":"repeated","type":"AggregatedLedgerEntriesEdge","longType":"AggregatedLedgerEntriesEdge","fullType":"datanode.api.v2.AggregatedLedgerEntriesEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AggregatedLedgerEntriesEdge","longName":"AggregatedLedgerEntriesEdge","fullName":"datanode.api.v2.AggregatedLedgerEntriesEdge","description":"Represents the aggregated ledger entry data with corresponding cursor for it","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"'AggregatedLedgerEntry' data.","label":"","type":"AggregatedLedgerEntry","longType":"AggregatedLedgerEntry","fullType":"datanode.api.v2.AggregatedLedgerEntry","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AggregatedLedgerEntry","longName":"AggregatedLedgerEntry","fullName":"datanode.api.v2.AggregatedLedgerEntry","description":"Represents an aggregated view of ledger entry data, sender and receiver accounts,\ndetails and balances for both sides after the transfer has been made","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"timestamp","description":"Timestamp in Unix nanoseconds of the block in which the result is referring to.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantity","description":"Amount of ledger entries for the set of requested accounts at the time above.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transfer_type","description":"Transfer type.","label":"","type":"TransferType","longType":"vega.TransferType","fullType":"vega.TransferType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"Asset ID for the asset associated with the entry.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"from_account_type","description":"Type of account sent from.","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account_type","description":"Type of account received to.","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_account_party_id","description":"Sender's party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_from_account_party_id","defaultValue":""},{"name":"to_account_party_id","description":"Receiver's party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_to_account_party_id","defaultValue":""},{"name":"from_account_market_id","description":"Sender market ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_from_account_market_id","defaultValue":""},{"name":"to_account_market_id","description":"Receiver market ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_to_account_market_id","defaultValue":""},{"name":"from_account_balance","description":"Sender account balance after the transfer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account_balance","description":"Receiver account balance after the transfer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AssetEdge","longName":"AssetEdge","fullName":"datanode.api.v2.AssetEdge","description":"Assets data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Asset data returned.","label":"","type":"Asset","longType":"vega.Asset","fullType":"vega.Asset","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"AssetsConnection","longName":"AssetsConnection","fullName":"datanode.api.v2.AssetsConnection","description":"Page of asset data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of assets data and their corresponding cursors.","label":"repeated","type":"AssetEdge","longType":"AssetEdge","fullType":"datanode.api.v2.AssetEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Candle","longName":"Candle","fullName":"datanode.api.v2.Candle","description":"Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"start","description":"Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_update","description":"Timestamp in Unix nanoseconds for the point in time when the candle was last updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"high","description":"Highest price for trading during the candle interval.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"low","description":"Lowest price for trading during the candle interval.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"open","description":"Open trade price.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"close","description":"Closing trade price.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume","description":"Total trading volume during the candle interval.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"notional","description":"Total notional value traded during the candle interval.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CandleDataConnection","longName":"CandleDataConnection","fullName":"datanode.api.v2.CandleDataConnection","description":"Page of candles data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of candle data items and their corresponding cursors.","label":"repeated","type":"CandleEdge","longType":"CandleEdge","fullType":"datanode.api.v2.CandleEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CandleEdge","longName":"CandleEdge","fullName":"datanode.api.v2.CandleEdge","description":"Candle data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Candlestick data, i.e. high, low, open, and closing prices for an interval of trading.","label":"","type":"Candle","longType":"Candle","fullType":"datanode.api.v2.Candle","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Checkpoint","longName":"Checkpoint","fullName":"datanode.api.v2.Checkpoint","description":"Actual data regarding a checkpoint","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"hash","description":"Hash of the checkpoint.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_hash","description":"Block hash at which the checkpoint is made.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_block","description":"Block number at which the checkpoint is made.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CheckpointEdge","longName":"CheckpointEdge","fullName":"datanode.api.v2.CheckpointEdge","description":"Checkpoint data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data relating to a single checkpoint generated by the Vega network.","label":"","type":"Checkpoint","longType":"Checkpoint","fullType":"datanode.api.v2.Checkpoint","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CheckpointsConnection","longName":"CheckpointsConnection","fullName":"datanode.api.v2.CheckpointsConnection","description":"Page of checkpoints data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of checkpoints data and their corresponding cursors.","label":"repeated","type":"CheckpointEdge","longType":"CheckpointEdge","fullType":"datanode.api.v2.CheckpointEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CollateralIncreaseEstimate","longName":"CollateralIncreaseEstimate","fullName":"datanode.api.v2.CollateralIncreaseEstimate","description":"Estimates the additional funds needed to support the specified position","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"worst_case","description":"Estimate assuming slippage cap is applied","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_case","description":"Estimate assuming no slippage","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CoreSnapshotConnection","longName":"CoreSnapshotConnection","fullName":"datanode.api.v2.CoreSnapshotConnection","description":"Page of core snapshot data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of core snapshot data and their corresponding cursors.","label":"repeated","type":"CoreSnapshotEdge","longType":"CoreSnapshotEdge","fullType":"datanode.api.v2.CoreSnapshotEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CoreSnapshotEdge","longName":"CoreSnapshotEdge","fullName":"datanode.api.v2.CoreSnapshotEdge","description":"Core snapshot data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Core snapshot data.","label":"","type":"CoreSnapshotData","longType":"vega.events.v1.CoreSnapshotData","fullType":"vega.events.v1.CoreSnapshotData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DateRange","longName":"DateRange","fullName":"datanode.api.v2.DateRange","description":"Date range for queries that can return historical data\nTimestamps should be provided as unix time in Unix nanoseconds and are inclusive.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"start_timestamp","description":"Timestamp in Unix nanoseconds indicating the start of the date range.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_start_timestamp","defaultValue":""},{"name":"end_timestamp","description":"Timestamp in Unix nanoseconds indicating the end of the date range.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_end_timestamp","defaultValue":""}]},{"name":"DelegationEdge","longName":"DelegationEdge","fullName":"datanode.api.v2.DelegationEdge","description":"Delegation data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"How much a party is delegating to a node and when.","label":"","type":"Delegation","longType":"vega.Delegation","fullType":"vega.Delegation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DelegationsConnection","longName":"DelegationsConnection","fullName":"datanode.api.v2.DelegationsConnection","description":"Page of delegations data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of delegations data and their corresponding cursors.","label":"repeated","type":"DelegationEdge","longType":"DelegationEdge","fullType":"datanode.api.v2.DelegationEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DepositEdge","longName":"DepositEdge","fullName":"datanode.api.v2.DepositEdge","description":"Deposits data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with a single deposit made on the Vega network.","label":"","type":"Deposit","longType":"vega.Deposit","fullType":"vega.Deposit","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"DepositsConnection","longName":"DepositsConnection","fullName":"datanode.api.v2.DepositsConnection","description":"Page of deposits data received and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of deposits data and their corresponding cursors.","label":"repeated","type":"DepositEdge","longType":"DepositEdge","fullType":"datanode.api.v2.DepositEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerAddedBundle","longName":"ERC20MultiSigSignerAddedBundle","fullName":"datanode.api.v2.ERC20MultiSigSignerAddedBundle","description":"Signature bundle data to be added","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"new_signer","description":"Ethereum address of the signer to be removed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter","description":"Ethereum address of the submitter.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce used in the signing operation.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Unixnano timestamp for when the validator was added.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signatures","description":"Bundle of signatures from current validators to sign in the new signer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch in which the validator was added.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerAddedBundleEdge","longName":"ERC20MultiSigSignerAddedBundleEdge","fullName":"datanode.api.v2.ERC20MultiSigSignerAddedBundleEdge","description":"Signature bundle data that is to be added with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Signature bundle data to be added.","label":"","type":"ERC20MultiSigSignerAddedBundle","longType":"ERC20MultiSigSignerAddedBundle","fullType":"datanode.api.v2.ERC20MultiSigSignerAddedBundle","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerAddedConnection","longName":"ERC20MultiSigSignerAddedConnection","fullName":"datanode.api.v2.ERC20MultiSigSignerAddedConnection","description":"Page of signature data items to be added and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of signature bundle data and their corresponding cursors.","label":"repeated","type":"ERC20MultiSigSignerAddedBundleEdge","longType":"ERC20MultiSigSignerAddedBundleEdge","fullType":"datanode.api.v2.ERC20MultiSigSignerAddedBundleEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerAddedEdge","longName":"ERC20MultiSigSignerAddedEdge","fullName":"datanode.api.v2.ERC20MultiSigSignerAddedEdge","description":"Signature data that is to be added with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Signature data to be added.","label":"","type":"ERC20MultiSigSignerAdded","longType":"vega.events.v1.ERC20MultiSigSignerAdded","fullType":"vega.events.v1.ERC20MultiSigSignerAdded","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerRemovedBundle","longName":"ERC20MultiSigSignerRemovedBundle","fullName":"datanode.api.v2.ERC20MultiSigSignerRemovedBundle","description":"Signature bundle data to be removed","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"old_signer","description":"Ethereum address of the signer to be removed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter","description":"Ethereum address of the submitter.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce used in the signing operation.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Unixnano timestamp for when the validator was added.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signatures","description":"Bundle of signatures from current validators to sign in the new signer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch in which the validator was removed.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerRemovedBundleEdge","longName":"ERC20MultiSigSignerRemovedBundleEdge","fullName":"datanode.api.v2.ERC20MultiSigSignerRemovedBundleEdge","description":"Signature bundle data to be removed, with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Signature bundle data to be added.","label":"","type":"ERC20MultiSigSignerRemovedBundle","longType":"ERC20MultiSigSignerRemovedBundle","fullType":"datanode.api.v2.ERC20MultiSigSignerRemovedBundle","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerRemovedConnection","longName":"ERC20MultiSigSignerRemovedConnection","fullName":"datanode.api.v2.ERC20MultiSigSignerRemovedConnection","description":"Page of signature data items to be removed and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of signature bundle data and their corresponding cursors.","label":"repeated","type":"ERC20MultiSigSignerRemovedBundleEdge","longType":"ERC20MultiSigSignerRemovedBundleEdge","fullType":"datanode.api.v2.ERC20MultiSigSignerRemovedBundleEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ERC20MultiSigSignerRemovedEdge","longName":"ERC20MultiSigSignerRemovedEdge","fullName":"datanode.api.v2.ERC20MultiSigSignerRemovedEdge","description":"Signature data to be removed with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Signature data to be removed.","label":"","type":"ERC20MultiSigSignerRemoved","longType":"vega.events.v1.ERC20MultiSigSignerRemoved","fullType":"vega.events.v1.ERC20MultiSigSignerRemoved","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EpochRewardSummaryConnection","longName":"EpochRewardSummaryConnection","fullName":"datanode.api.v2.EpochRewardSummaryConnection","description":"Page of rewards summary data for epoch and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of rewards summary data for epochs and their corresponding cursors.","label":"repeated","type":"EpochRewardSummaryEdge","longType":"EpochRewardSummaryEdge","fullType":"datanode.api.v2.EpochRewardSummaryEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EpochRewardSummaryEdge","longName":"EpochRewardSummaryEdge","fullName":"datanode.api.v2.EpochRewardSummaryEdge","description":"Rewards summary data for epoch with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Rewards summary data for epoch.","label":"","type":"EpochRewardSummary","longType":"vega.EpochRewardSummary","fullType":"vega.EpochRewardSummary","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EstimateFeeRequest","longName":"EstimateFeeRequest","fullName":"datanode.api.v2.EstimateFeeRequest","description":"Request to fetch the estimated fee if an order were to trade immediately","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID, used to specify the fee factors.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price at which the potential order is expected to trade.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size","description":"Size at which the potential order is expected to trade.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EstimateFeeResponse","longName":"EstimateFeeResponse","fullName":"datanode.api.v2.EstimateFeeResponse","description":"Response that is received from EstimateFeeRequest, contains the estimated fees for a given order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"fee","description":"Summary of the estimated fees for this order if it were to trade now.","label":"","type":"Fee","longType":"vega.Fee","fullType":"vega.Fee","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EstimateMarginRequest","longName":"EstimateMarginRequest","fullName":"datanode.api.v2.EstimateMarginRequest","description":"Request to fetch the estimated MarginLevels if an order were to trade immediately","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID for the order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID of the order.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"side","description":"Order side - indicator for Seller or Buyer side.","label":"","type":"Side","longType":"vega.Side","fullType":"vega.Side","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of the order.","label":"","type":"Type","longType":"vega.Order.Type","fullType":"vega.Order.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"size","description":"Size of order.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price of the asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}],"options":{"deprecated":true}},{"name":"EstimateMarginResponse","longName":"EstimateMarginResponse","fullName":"datanode.api.v2.EstimateMarginResponse","description":"Response to an estimate margin request, containing the estimated margin levels for a given order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"margin_levels","description":"Summary of the estimated margins for this order if it were to trade now.","label":"","type":"MarginLevels","longType":"vega.MarginLevels","fullType":"vega.MarginLevels","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}],"options":{"deprecated":true}},{"name":"EstimatePositionRequest","longName":"EstimatePositionRequest","fullName":"datanode.api.v2.EstimatePositionRequest","description":"Request for the estimated margin level, margin account balance change, and liquidation price for the specified position.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to estimate position for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"open_volume","description":"Open volume. This field is a signed integer scaled to the market's position decimal places.\nA negative number denotes a short position.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"average_entry_price","description":"Average entry price corresponding to the open volume. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"orders","description":"Open and/or hypothetical orders.","label":"repeated","type":"OrderInfo","longType":"OrderInfo","fullType":"datanode.api.v2.OrderInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_account_balance","description":"Margin account balance. Needs to be provided scaled to asset decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"general_account_balance","description":"General account balance. Needs to be provided scaled to asset decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_margin_account_balance","description":"Order margin account balance. Needs to be provided scaled to asset decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_mode","description":"Margin mode for the party, cross margin or isolated margin.","label":"","type":"MarginMode","longType":"vega.MarginMode","fullType":"vega.MarginMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_factor","description":"Margin factor to be used along with isolated margin mode","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_margin_factor","defaultValue":""},{"name":"include_collateral_increase_in_available_collateral","description":"Whether the estimated collateral increase should be included in available collateral for liquidation price calculation in isolated margin mode.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_include_collateral_increase_in_available_collateral","defaultValue":""},{"name":"scale_liquidation_price_to_market_decimals","description":"Whether the liquidation price estimates should be scaled to market decimal places or by asset decimal places. If not set, asset decimal places are used.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_scale_liquidation_price_to_market_decimals","defaultValue":""}]},{"name":"EstimatePositionResponse","longName":"EstimatePositionResponse","fullName":"datanode.api.v2.EstimatePositionResponse","description":"Response for the estimated margin level, margin account balance change, and liquidation price for the specified position.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"margin","description":"Margin level range estimate for the specified position.","label":"","type":"MarginEstimate","longType":"MarginEstimate","fullType":"datanode.api.v2.MarginEstimate","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"collateral_increase_estimate","description":"Estimated margin account balance increase.","label":"","type":"CollateralIncreaseEstimate","longType":"CollateralIncreaseEstimate","fullType":"datanode.api.v2.CollateralIncreaseEstimate","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidation","description":"Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request.","label":"","type":"LiquidationEstimate","longType":"LiquidationEstimate","fullType":"datanode.api.v2.LiquidationEstimate","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EstimateTransferFeeRequest","longName":"EstimateTransferFeeRequest","fullName":"datanode.api.v2.EstimateTransferFeeRequest","description":"Request an estimation of transfer fee and discount","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"from_account","description":"Sender's ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_account_type","description":"Type of account sent from.","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account","description":"Receiver's ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to be transferred.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"Asset ID for the asset associated with the transaction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EstimateTransferFeeResponse","longName":"EstimateTransferFeeResponse","fullName":"datanode.api.v2.EstimateTransferFeeResponse","description":"Results of estimation of transfer fee and the fee discount","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"fee","description":"Estimated fee for the transfer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"discount","description":"Discount applied to the fee.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthereumKeyRotationEdge","longName":"EthereumKeyRotationEdge","fullName":"datanode.api.v2.EthereumKeyRotationEdge","description":"Ethereum key rotation data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data relating to an Ethereum key rotation performed by a node on the Vega network.","label":"","type":"EthereumKeyRotation","longType":"vega.events.v1.EthereumKeyRotation","fullType":"vega.events.v1.EthereumKeyRotation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"EthereumKeyRotationsConnection","longName":"EthereumKeyRotationsConnection","fullName":"datanode.api.v2.EthereumKeyRotationsConnection","description":"Page of Ethereum key rotations data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of Ethereum key rotations data and their corresponding cursors.","label":"repeated","type":"EthereumKeyRotationEdge","longType":"EthereumKeyRotationEdge","fullType":"datanode.api.v2.EthereumKeyRotationEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ExportLedgerEntriesRequest","longName":"ExportLedgerEntriesRequest","fullName":"datanode.api.v2.ExportLedgerEntriesRequest","description":"Request that is sent when exporting ledger entries to csv","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict exported ledger entries to those relating to the given party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"Restrict exported ledger entries to those relating to the given asset ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"date_range","description":"Date range to export ledger entries for.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""}]},{"name":"ExportNetworkHistoryRequest","longName":"ExportNetworkHistoryRequest","fullName":"datanode.api.v2.ExportNetworkHistoryRequest","description":"Request to export network history data in CSV format","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"from_block","description":"Block to begin exporting from. Must be the first block of a history segment,\nwhich by default are 1000 blocks each; in that case - 1, 1001, 2001 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_block","description":"Last block to export up to and including. Must be the last block of a history segment\nwhich by default are 1000 blocks each; in that case - 1000, 2000, 3000 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"table","description":"Table to export data from.","label":"","type":"Table","longType":"Table","fullType":"datanode.api.v2.Table","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FeesStatsForParty","longName":"FeesStatsForParty","fullName":"datanode.api.v2.FeesStatsForParty","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_id","description":"Settlement asset of the market.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_rewards_received","description":"Total referral rewards received by referrer of the referral set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referees_discount_applied","description":"Total referral discounts applied to referee fees.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume_discount_applied","description":"Total volume discounts applied to referee fees.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_maker_fees_received","description":"Total maker fees received by the maker side.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPayment","longName":"FundingPayment","fullName":"datanode.api.v2.FundingPayment","description":"A funding payment for a party on a perpetual market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party that received the funding payment.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market that produced the funding payment.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"funding_period_seq","description":"Funding period sequence this payment was calculated from.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"timestamp","description":"Timestamp, in Unix nanoseconds, at which this funding payment occured.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Funding payment amount, where a positive value indicates an earned payment received and a negative value a loss.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPaymentConnection","longName":"FundingPaymentConnection","fullName":"datanode.api.v2.FundingPaymentConnection","description":"Page of funding payment data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of funding payment data and their corresponding cursors.","label":"repeated","type":"FundingPaymentEdge","longType":"FundingPaymentEdge","fullType":"datanode.api.v2.FundingPaymentEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPaymentEdge","longName":"FundingPaymentEdge","fullName":"datanode.api.v2.FundingPaymentEdge","description":"Funding payment data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Funding payment data.","label":"","type":"FundingPayment","longType":"FundingPayment","fullType":"datanode.api.v2.FundingPayment","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPeriodConnection","longName":"FundingPeriodConnection","fullName":"datanode.api.v2.FundingPeriodConnection","description":"Page of funding period data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of funding period data and their corresponding cursors.","label":"repeated","type":"FundingPeriodEdge","longType":"FundingPeriodEdge","fullType":"datanode.api.v2.FundingPeriodEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPeriodDataPointConnection","longName":"FundingPeriodDataPointConnection","fullName":"datanode.api.v2.FundingPeriodDataPointConnection","description":"Page of funding period data points and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of funding period data points and their corresponding cursors.","label":"repeated","type":"FundingPeriodDataPointEdge","longType":"FundingPeriodDataPointEdge","fullType":"datanode.api.v2.FundingPeriodDataPointEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPeriodDataPointEdge","longName":"FundingPeriodDataPointEdge","fullName":"datanode.api.v2.FundingPeriodDataPointEdge","description":"Funding period data point with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Funding period data point.","label":"","type":"FundingPeriodDataPoint","longType":"vega.events.v1.FundingPeriodDataPoint","fullType":"vega.events.v1.FundingPeriodDataPoint","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"FundingPeriodEdge","longName":"FundingPeriodEdge","fullName":"datanode.api.v2.FundingPeriodEdge","description":"Funding period data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Funding period data.","label":"","type":"FundingPeriod","longType":"vega.events.v1.FundingPeriod","fullType":"vega.events.v1.FundingPeriod","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Game","longName":"Game","fullName":"datanode.api.v2.Game","description":"Data relating to a game.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Unique ID of the game","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch","description":"Epoch at which the last game metrics were captured.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"participants","description":"The number of participants in the game.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team","description":"Team entities that are participating in the game","label":"","type":"TeamGameEntities","longType":"TeamGameEntities","fullType":"datanode.api.v2.TeamGameEntities","ismap":false,"isoneof":true,"oneofdecl":"entities","defaultValue":""},{"name":"individual","description":"Individual entities that are participating in the game","label":"","type":"IndividualGameEntities","longType":"IndividualGameEntities","fullType":"datanode.api.v2.IndividualGameEntities","ismap":false,"isoneof":true,"oneofdecl":"entities","defaultValue":""}]},{"name":"GameEdge","longName":"GameEdge","fullName":"datanode.api.v2.GameEdge","description":"Game information and corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Game data.","label":"","type":"Game","longType":"Game","fullType":"datanode.api.v2.Game","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GamesConnection","longName":"GamesConnection","fullName":"datanode.api.v2.GamesConnection","description":"Page of games data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of games data and their corresponding cursors.","label":"repeated","type":"GameEdge","longType":"GameEdge","fullType":"datanode.api.v2.GameEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetActiveNetworkHistoryPeerAddressesRequest","longName":"GetActiveNetworkHistoryPeerAddressesRequest","fullName":"datanode.api.v2.GetActiveNetworkHistoryPeerAddressesRequest","description":"Request to get the addresses of active network history peers","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetActiveNetworkHistoryPeerAddressesResponse","longName":"GetActiveNetworkHistoryPeerAddressesResponse","fullName":"datanode.api.v2.GetActiveNetworkHistoryPeerAddressesResponse","description":"Response containing the addresses of active network history peers","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ip_addresses","description":"List of IP addresses for the active peers.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetAssetRequest","longName":"GetAssetRequest","fullName":"datanode.api.v2.GetAssetRequest","description":"Request for obtaining asset","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_id","description":"Asset ID to get data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetAssetResponse","longName":"GetAssetResponse","fullName":"datanode.api.v2.GetAssetResponse","description":"Response from getting an asset","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset","description":"Asset information that is returned.","label":"","type":"Asset","longType":"vega.Asset","fullType":"vega.Asset","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetBalanceHistoryRequest","longName":"GetBalanceHistoryRequest","fullName":"datanode.api.v2.GetBalanceHistoryRequest","description":"Request that is used when querying balance history","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"filter","description":"Account filter contains values that can be set in order to limit balance history data to them.","label":"","type":"AccountFilter","longType":"AccountFilter","fullType":"datanode.api.v2.AccountFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"group_by","description":"By default the net balances of all the accounts specified by the filter are returned.\nIf a list of fields is given in group_by, split out those balances by the supplied criteria.","label":"repeated","type":"AccountField","longType":"AccountField","fullType":"datanode.api.v2.AccountField","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"date_range","description":"","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""}]},{"name":"GetBalanceHistoryResponse","longName":"GetBalanceHistoryResponse","fullName":"datanode.api.v2.GetBalanceHistoryResponse","description":"Response that is received when querying for balance history","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"balances","description":"Page of aggregated balances with the corresponding page information.","label":"","type":"AggregatedBalanceConnection","longType":"AggregatedBalanceConnection","fullType":"datanode.api.v2.AggregatedBalanceConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetCurrentReferralProgramRequest","longName":"GetCurrentReferralProgramRequest","fullName":"datanode.api.v2.GetCurrentReferralProgramRequest","description":"Request to get the current referral program","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetCurrentReferralProgramResponse","longName":"GetCurrentReferralProgramResponse","fullName":"datanode.api.v2.GetCurrentReferralProgramResponse","description":"Response containing the current referral program","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"current_referral_program","description":"Referral program currently activated on the network.","label":"","type":"ReferralProgram","longType":"ReferralProgram","fullType":"datanode.api.v2.ReferralProgram","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetCurrentVolumeDiscountProgramRequest","longName":"GetCurrentVolumeDiscountProgramRequest","fullName":"datanode.api.v2.GetCurrentVolumeDiscountProgramRequest","description":"Request to get the current referral program","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetCurrentVolumeDiscountProgramResponse","longName":"GetCurrentVolumeDiscountProgramResponse","fullName":"datanode.api.v2.GetCurrentVolumeDiscountProgramResponse","description":"Response containing the current referral program","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"current_volume_discount_program","description":"Volume discount program currently activated on the network.","label":"","type":"VolumeDiscountProgram","longType":"VolumeDiscountProgram","fullType":"datanode.api.v2.VolumeDiscountProgram","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetDepositRequest","longName":"GetDepositRequest","fullName":"datanode.api.v2.GetDepositRequest","description":"Request to get data about a specific deposit by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Deposit ID to return data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetDepositResponse","longName":"GetDepositResponse","fullName":"datanode.api.v2.GetDepositResponse","description":"Response that is received from getting deposit data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"deposit","description":"Deposit matching the ID from the request.","label":"","type":"Deposit","longType":"vega.Deposit","fullType":"vega.Deposit","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetERC20ListAssetBundleRequest","longName":"GetERC20ListAssetBundleRequest","fullName":"datanode.api.v2.GetERC20ListAssetBundleRequest","description":"Request for listing the signature bundle to an ERC-20 token in the collateral bridge","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_id","description":"Asset ID of the asset bundle requested.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetERC20ListAssetBundleResponse","longName":"GetERC20ListAssetBundleResponse","fullName":"datanode.api.v2.GetERC20ListAssetBundleResponse","description":"Response from listing the signature bundle to an ERC-20 token in the collateral bridge","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_source","description":"Address of the asset on Ethereum.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_asset_id","description":"Asset ID for the underlying Vega asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signatures","description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetERC20SetAssetLimitsBundleRequest","longName":"GetERC20SetAssetLimitsBundleRequest","fullName":"datanode.api.v2.GetERC20SetAssetLimitsBundleRequest","description":"Request for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposal_id","description":"Proposal ID of the asset update proposal.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetERC20SetAssetLimitsBundleResponse","longName":"GetERC20SetAssetLimitsBundleResponse","fullName":"datanode.api.v2.GetERC20SetAssetLimitsBundleResponse","description":"Response for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_source","description":"Address of the asset on Ethereum.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_asset_id","description":"Asset ID for the underlying Vega asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"lifetime_limit","description":"Lifetime limit deposit for this asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"threshold","description":"Threshold withdraw for this asset.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signatures","description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetERC20WithdrawalApprovalRequest","longName":"GetERC20WithdrawalApprovalRequest","fullName":"datanode.api.v2.GetERC20WithdrawalApprovalRequest","description":"Request to get all information required to bundle the call to finalise the withdrawal on the erc20 bridge","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"withdrawal_id","description":"Withdrawal ID to retrieve.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetERC20WithdrawalApprovalResponse","longName":"GetERC20WithdrawalApprovalResponse","fullName":"datanode.api.v2.GetERC20WithdrawalApprovalResponse","description":"Response with all information required to bundle the call to finalise the withdrawal on the erc20 bridge\nfunction withdraw_asset(address asset_source, uint256 asset_id, uint256 amount, uint256 expiry, uint256 nonce, bytes memory signatures)","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset_source","description":"Address of asset on Ethereum.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"amount","description":"Amount to be withdrawn.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nonce","description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signatures","description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: 0x + sig1 + sig2 + ... + sixN.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"target_address","description":"Ethereum address, prefixed with `0x`, that will receive the withdrawn assets.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"creation","description":"Creation timestamps.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetEpochRequest","longName":"GetEpochRequest","fullName":"datanode.api.v2.GetEpochRequest","description":"Request to fetch epoch data\nProvide either the epoch ID or the block height to get the epoch for. If both are provided, the epoch ID will be used.\nIf both are omitted, the current epoch will be returned.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Epoch ID. If provided, returns the epoch with the given ID.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_id","defaultValue":""},{"name":"block","description":"Block height. If provided, returns the epoch that the given block is in.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_block","defaultValue":""}]},{"name":"GetEpochResponse","longName":"GetEpochResponse","fullName":"datanode.api.v2.GetEpochResponse","description":"Response from getting epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"epoch","description":"Data specific to a single epoch on the Vega network. This includes the epoch number,\nstart and end times, and the nodes that participated in the epoch.","label":"","type":"Epoch","longType":"vega.Epoch","fullType":"vega.Epoch","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetFeesStatsForPartyRequest","longName":"GetFeesStatsForPartyRequest","fullName":"datanode.api.v2.GetFeesStatsForPartyRequest","description":"Request that is sent to retrieve fees statistics for a given party.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict fees statistics to those for the given party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"Restrict fees statistics to those related to the given asset.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"from_epoch","description":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_from_epoch","defaultValue":""},{"name":"to_epoch","description":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_to_epoch","defaultValue":""}]},{"name":"GetFeesStatsForPartyResponse","longName":"GetFeesStatsForPartyResponse","fullName":"datanode.api.v2.GetFeesStatsForPartyResponse","description":"Response that is sent when requesting fees statistics for a given party.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"fees_stats_for_party","description":"Fees statistics for the given request.","label":"repeated","type":"FeesStatsForParty","longType":"FeesStatsForParty","fullType":"datanode.api.v2.FeesStatsForParty","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetFeesStatsRequest","longName":"GetFeesStatsRequest","fullName":"datanode.api.v2.GetFeesStatsRequest","description":"Request that is sent to retrieve fees statistics.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Restrict fee statistics to those related for the given market.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"asset_id","description":"Restrict fee statistics to those related for the given asset.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"epoch_seq","description":"Epoch to get referral fee statistics for. If not set, the last complete epoch is used.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_epoch_seq","defaultValue":""},{"name":"party_id","description":"Restrict fee statistics to those for the given party.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""}]},{"name":"GetFeesStatsResponse","longName":"GetFeesStatsResponse","fullName":"datanode.api.v2.GetFeesStatsResponse","description":"Response that is sent when requesting fees statistics.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"fees_stats","description":"Fees statistics for the given request.","label":"","type":"FeesStats","longType":"vega.events.v1.FeesStats","fullType":"vega.events.v1.FeesStats","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetGovernanceDataRequest","longName":"GetGovernanceDataRequest","fullName":"datanode.api.v2.GetGovernanceDataRequest","description":"Request to get governance data","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"proposal_id","description":"Proposal ID to get governance data for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_proposal_id","defaultValue":""},{"name":"reference","description":"Reference to get proposal data for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_reference","defaultValue":""}]},{"name":"GetGovernanceDataResponse","longName":"GetGovernanceDataResponse","fullName":"datanode.api.v2.GetGovernanceDataResponse","description":"Response from getting governance data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"data","description":"Governance data content, i.e. proposal and votes for and against.","label":"","type":"GovernanceData","longType":"vega.GovernanceData","fullType":"vega.GovernanceData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetLastTradeRequest","longName":"GetLastTradeRequest","fullName":"datanode.api.v2.GetLastTradeRequest","description":"Request for the latest trade that occurred on Vega for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to retrieve the last trade for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetLastTradeResponse","longName":"GetLastTradeResponse","fullName":"datanode.api.v2.GetLastTradeResponse","description":"Response for the latest trade that occurred on Vega for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"trade","description":"Information about the trade, if one is found.","label":"","type":"Trade","longType":"vega.Trade","fullType":"vega.Trade","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetLatestMarketDataRequest","longName":"GetLatestMarketDataRequest","fullName":"datanode.api.v2.GetLatestMarketDataRequest","description":"Request that is sent when listing the latest market data for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to retrieve market data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetLatestMarketDataResponse","longName":"GetLatestMarketDataResponse","fullName":"datanode.api.v2.GetLatestMarketDataResponse","description":"Response that is received when listing the latest market data for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_data","description":"Market data that was requested.","label":"","type":"MarketData","longType":"vega.MarketData","fullType":"vega.MarketData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetLatestMarketDepthRequest","longName":"GetLatestMarketDepthRequest","fullName":"datanode.api.v2.GetLatestMarketDepthRequest","description":"Request that is sent when requesting latest market depth data","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to request market depth for, required field.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_depth","description":"Maximum market depth.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_max_depth","defaultValue":""}]},{"name":"GetLatestMarketDepthResponse","longName":"GetLatestMarketDepthResponse","fullName":"datanode.api.v2.GetLatestMarketDepthResponse","description":"Response that is received when latest market depth data is queried","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID of the depth levels returned.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"buy","description":"Zero or more price levels for the buy side of the market depth data.","label":"repeated","type":"PriceLevel","longType":"vega.PriceLevel","fullType":"vega.PriceLevel","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sell","description":"Zero or more price levels for the sell side of the market depth data.","label":"repeated","type":"PriceLevel","longType":"vega.PriceLevel","fullType":"vega.PriceLevel","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_trade","description":"Last trade recorded on Vega.","label":"","type":"Trade","longType":"vega.Trade","fullType":"vega.Trade","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sequence_number","description":"Sequence number incremented after each update.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetMarketDataHistoryByIDRequest","longName":"GetMarketDataHistoryByIDRequest","fullName":"datanode.api.v2.GetMarketDataHistoryByIDRequest","description":"Request that is sent for getting Market Data History","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to request data history for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"start_timestamp","description":"Timestamp in Unix nanoseconds indicating the start of the date range.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_start_timestamp","defaultValue":""},{"name":"end_timestamp","description":"Timestamp in Unix nanoseconds indicating the end of the date range.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_end_timestamp","defaultValue":""},{"name":"pagination","description":"Pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"GetMarketDataHistoryByIDResponse","longName":"GetMarketDataHistoryByIDResponse","fullName":"datanode.api.v2.GetMarketDataHistoryByIDResponse","description":"Response that is received when querying Market Data History","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_data","description":"Page of market data history with the corresponding page information.","label":"","type":"MarketDataConnection","longType":"MarketDataConnection","fullType":"datanode.api.v2.MarketDataConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetMarketRequest","longName":"GetMarketRequest","fullName":"datanode.api.v2.GetMarketRequest","description":"Request for getting a market by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID of the market to retrieve data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetMarketResponse","longName":"GetMarketResponse","fullName":"datanode.api.v2.GetMarketResponse","description":"Response from getting a market by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market","description":"Information about the market requested.","label":"","type":"Market","longType":"vega.Market","fullType":"vega.Market","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetMostRecentNetworkHistorySegmentRequest","longName":"GetMostRecentNetworkHistorySegmentRequest","fullName":"datanode.api.v2.GetMostRecentNetworkHistorySegmentRequest","description":"Request to get the most recent history segment","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetMostRecentNetworkHistorySegmentResponse","longName":"GetMostRecentNetworkHistorySegmentResponse","fullName":"datanode.api.v2.GetMostRecentNetworkHistorySegmentResponse","description":"Response from getting most recent history segment","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"segment","description":"Data relating to a history segment created by a Vega data node.","label":"","type":"HistorySegment","longType":"HistorySegment","fullType":"datanode.api.v2.HistorySegment","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"swarm_key_seed","description":"Key seed for the swarm section.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNetworkDataRequest","longName":"GetNetworkDataRequest","fullName":"datanode.api.v2.GetNetworkDataRequest","description":"Request to get network data","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetNetworkDataResponse","longName":"GetNetworkDataResponse","fullName":"datanode.api.v2.GetNetworkDataResponse","description":"Response from getting network data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_data","description":"Summary of information with respect to nodes on the Vega network.","label":"","type":"NodeData","longType":"vega.NodeData","fullType":"vega.NodeData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNetworkHistoryBootstrapPeersRequest","longName":"GetNetworkHistoryBootstrapPeersRequest","fullName":"datanode.api.v2.GetNetworkHistoryBootstrapPeersRequest","description":"Request to get the nodes network history bootstrap peers","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetNetworkHistoryBootstrapPeersResponse","longName":"GetNetworkHistoryBootstrapPeersResponse","fullName":"datanode.api.v2.GetNetworkHistoryBootstrapPeersResponse","description":"Response containing the nodes network history bootstrap peers","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"bootstrap_peers","description":"List of peers that can be used to bootstrap a Vega data node.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNetworkHistoryStatusRequest","longName":"GetNetworkHistoryStatusRequest","fullName":"datanode.api.v2.GetNetworkHistoryStatusRequest","description":"Request to get the status of network history","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetNetworkHistoryStatusResponse","longName":"GetNetworkHistoryStatusResponse","fullName":"datanode.api.v2.GetNetworkHistoryStatusResponse","description":"Response containing the status of network history","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ipfs_address","description":"IPFS address of the data node currently connected to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"swarm_key","description":"Swarm key used by the IPFS swarm.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"swarm_key_seed","description":"Swarm key seed used by the IPFS swarm.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"connected_peers","description":"List of peers connected to the IPFS swarm.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNetworkLimitsRequest","longName":"GetNetworkLimitsRequest","fullName":"datanode.api.v2.GetNetworkLimitsRequest","description":"Request that is used to query current network limits","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetNetworkLimitsResponse","longName":"GetNetworkLimitsResponse","fullName":"datanode.api.v2.GetNetworkLimitsResponse","description":"Response received when querying the current network limits","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"limits","description":"List of received network limits.","label":"","type":"NetworkLimits","longType":"vega.NetworkLimits","fullType":"vega.NetworkLimits","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNetworkParameterRequest","longName":"GetNetworkParameterRequest","fullName":"datanode.api.v2.GetNetworkParameterRequest","description":"Request for a single network parameter","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key","description":"Key identifying the network parameter.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNetworkParameterResponse","longName":"GetNetworkParameterResponse","fullName":"datanode.api.v2.GetNetworkParameterResponse","description":"Response that is received when getting a network parameter","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"network_parameter","description":"Network parameter key and value.","label":"","type":"NetworkParameter","longType":"vega.NetworkParameter","fullType":"vega.NetworkParameter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNodeRequest","longName":"GetNodeRequest","fullName":"datanode.api.v2.GetNodeRequest","description":"Request to get node data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Node ID to get data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetNodeResponse","longName":"GetNodeResponse","fullName":"datanode.api.v2.GetNodeResponse","description":"Response from getting node","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data specific to a single node on the Vega network.","label":"","type":"Node","longType":"vega.Node","fullType":"vega.Node","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetOracleSpecRequest","longName":"GetOracleSpecRequest","fullName":"datanode.api.v2.GetOracleSpecRequest","description":"Request to get a specific oracle spec by its ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"oracle_spec_id","description":"Oracle spec ID to request data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetOracleSpecResponse","longName":"GetOracleSpecResponse","fullName":"datanode.api.v2.GetOracleSpecResponse","description":"Response for a oracle spec","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"oracle_spec","description":"External data spec matching the ID.","label":"","type":"OracleSpec","longType":"vega.OracleSpec","fullType":"vega.OracleSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetOrderRequest","longName":"GetOrderRequest","fullName":"datanode.api.v2.GetOrderRequest","description":"Request that is sent when executing the query for getting a single order","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"order_id","description":"Order ID to retrieve order information for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"version","description":"Historic version number of the order to return. If not set, the most current version will be returned.","label":"optional","type":"int32","longType":"int32","fullType":"int32","ismap":false,"isoneof":true,"oneofdecl":"_version","defaultValue":""}]},{"name":"GetOrderResponse","longName":"GetOrderResponse","fullName":"datanode.api.v2.GetOrderResponse","description":"Response received from the query for getting a single order","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"order","description":"Order details, if one was found.","label":"","type":"Order","longType":"vega.Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetPartyActivityStreakRequest","longName":"GetPartyActivityStreakRequest","fullName":"datanode.api.v2.GetPartyActivityStreakRequest","description":"Request to get a party's activity streaks across epochs","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party ID to get the activity streak for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch","description":"Epoch to get the activity streak for. If not set, the last complete epoch is used.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_epoch","defaultValue":""}]},{"name":"GetPartyActivityStreakResponse","longName":"GetPartyActivityStreakResponse","fullName":"datanode.api.v2.GetPartyActivityStreakResponse","description":"Response when getting a party's activity streaks across epochs","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"activity_streak","description":"Party's activity streak in a given epoch.","label":"","type":"PartyActivityStreak","longType":"vega.events.v1.PartyActivityStreak","fullType":"vega.events.v1.PartyActivityStreak","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetPartyRequest","longName":"GetPartyRequest","fullName":"datanode.api.v2.GetPartyRequest","description":"Request to get party by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID to retrieve party information for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetPartyResponse","longName":"GetPartyResponse","fullName":"datanode.api.v2.GetPartyResponse","description":"Response from getting party by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"Data for the party requested.","label":"","type":"Party","longType":"vega.Party","fullType":"vega.Party","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetPartyVestingStatsRequest","longName":"GetPartyVestingStatsRequest","fullName":"datanode.api.v2.GetPartyVestingStatsRequest","description":"Request sent to get statistics about the vesting rewards for a party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID to query the vesting stats for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetPartyVestingStatsResponse","longName":"GetPartyVestingStatsResponse","fullName":"datanode.api.v2.GetPartyVestingStatsResponse","description":"Vesting reward statistics for a given party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_bonus_multiplier","description":"Reward bonus multiplier.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch for which this information is valid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum_balance","description":"The balance of the party, in quantum.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetProtocolUpgradeStatusRequest","longName":"GetProtocolUpgradeStatusRequest","fullName":"datanode.api.v2.GetProtocolUpgradeStatusRequest","description":"Request to get protocol upgrade status","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetProtocolUpgradeStatusResponse","longName":"GetProtocolUpgradeStatusResponse","fullName":"datanode.api.v2.GetProtocolUpgradeStatusResponse","description":"Response from getting protocol upgrade status","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ready","description":"Indicator if the upgrade is ready or not.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetReferralSetStatsRequest","longName":"GetReferralSetStatsRequest","fullName":"datanode.api.v2.GetReferralSetStatsRequest","description":"Request to get a referral set's stats","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"referral_set_id","description":"Restrict referral set statistics to those for the given referral set.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referral_set_id","defaultValue":""},{"name":"at_epoch","description":"Epoch to get referral set statistics for. If not set, the last complete epoch is used.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_at_epoch","defaultValue":""},{"name":"referee","description":"Restrict referral set statistics to those for the given referee.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referee","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"GetReferralSetStatsResponse","longName":"GetReferralSetStatsResponse","fullName":"datanode.api.v2.GetReferralSetStatsResponse","description":"Response containing the volume discount statistics for the given epoch.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"stats","description":"Referral set statistics for the epoch.","label":"","type":"ReferralSetStatsConnection","longType":"ReferralSetStatsConnection","fullType":"datanode.api.v2.ReferralSetStatsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetRiskFactorsRequest","longName":"GetRiskFactorsRequest","fullName":"datanode.api.v2.GetRiskFactorsRequest","description":"Request to get risk factor","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to get the risk factor for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetRiskFactorsResponse","longName":"GetRiskFactorsResponse","fullName":"datanode.api.v2.GetRiskFactorsResponse","description":"Response that is received from getting a risk factor","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"risk_factor","description":"Risk factor emitted by the risk model for a given market.","label":"","type":"RiskFactor","longType":"vega.RiskFactor","fullType":"vega.RiskFactor","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetStakeRequest","longName":"GetStakeRequest","fullName":"datanode.api.v2.GetStakeRequest","description":"Request to get stake","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party ID for which the stake information is requested.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"GetStakeResponse","longName":"GetStakeResponse","fullName":"datanode.api.v2.GetStakeResponse","description":"Response that is received from requesting stake information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"current_stake_available","description":"Current stake available information.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stake_linkings","description":"Paged list of stake data with corresponding page information.","label":"","type":"StakesConnection","longType":"StakesConnection","fullType":"datanode.api.v2.StakesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetStopOrderRequest","longName":"GetStopOrderRequest","fullName":"datanode.api.v2.GetStopOrderRequest","description":"Request that is sent when executing the query for getting a single stop order.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"order_id","description":"Order ID to retrieve order information for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetStopOrderResponse","longName":"GetStopOrderResponse","fullName":"datanode.api.v2.GetStopOrderResponse","description":"Response received from the query for getting a single stop order.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"order","description":"Order details, if one was found.","label":"","type":"StopOrderEvent","longType":"vega.events.v1.StopOrderEvent","fullType":"vega.events.v1.StopOrderEvent","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetTotalTransferFeeDiscountRequest","longName":"GetTotalTransferFeeDiscountRequest","fullName":"datanode.api.v2.GetTotalTransferFeeDiscountRequest","description":"Get total transfer fee discount available","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"ID of party eligible for the discount.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"ID of asset to associated with the discount.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetTotalTransferFeeDiscountResponse","longName":"GetTotalTransferFeeDiscountResponse","fullName":"datanode.api.v2.GetTotalTransferFeeDiscountResponse","description":"Returns total transfer fee discount available","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"total_discount","description":"Total per party per asset discount available.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetTransferRequest","longName":"GetTransferRequest","fullName":"datanode.api.v2.GetTransferRequest","description":"Request that is sent for getting a transfer by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transfer_id","description":"Transfer ID to request data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetTransferResponse","longName":"GetTransferResponse","fullName":"datanode.api.v2.GetTransferResponse","description":"Response that is received when querying transfers by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transfer_node","description":"Transfer and its fees requested by ID.","label":"","type":"TransferNode","longType":"TransferNode","fullType":"datanode.api.v2.TransferNode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetVegaTimeRequest","longName":"GetVegaTimeRequest","fullName":"datanode.api.v2.GetVegaTimeRequest","description":"Request to get the current time of the Vega network","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetVegaTimeResponse","longName":"GetVegaTimeResponse","fullName":"datanode.api.v2.GetVegaTimeResponse","description":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"timestamp","description":"Timestamp representation of current VegaTime as represented in Unix nanoseconds, for example\n`1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetVestingBalancesSummaryRequest","longName":"GetVestingBalancesSummaryRequest","fullName":"datanode.api.v2.GetVestingBalancesSummaryRequest","description":"Request sent to list the vesting and locked balances for a party","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party ID to query vesting balances for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"Optional asset ID, all asset balances returned if not set.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""}]},{"name":"GetVestingBalancesSummaryResponse","longName":"GetVestingBalancesSummaryResponse","fullName":"datanode.api.v2.GetVestingBalancesSummaryResponse","description":"List of vesting and locked balances for a party.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch for which these balances are valid.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_epoch_seq","defaultValue":""},{"name":"locked_balances","description":"List of locked balances for the party.","label":"repeated","type":"PartyLockedBalance","longType":"vega.events.v1.PartyLockedBalance","fullType":"vega.events.v1.PartyLockedBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vesting_balances","description":"List of vesting balances for the party.","label":"repeated","type":"PartyVestingBalance","longType":"vega.events.v1.PartyVestingBalance","fullType":"vega.events.v1.PartyVestingBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetVolumeDiscountStatsRequest","longName":"GetVolumeDiscountStatsRequest","fullName":"datanode.api.v2.GetVolumeDiscountStatsRequest","description":"Request to get the volume discount statistics for a given epoch.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"at_epoch","description":"Epoch to get volume discount statistics for. If not set, last epoch is used.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_at_epoch","defaultValue":""},{"name":"party_id","description":"Restrict volume discount statistics to those for the given party.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"GetVolumeDiscountStatsResponse","longName":"GetVolumeDiscountStatsResponse","fullName":"datanode.api.v2.GetVolumeDiscountStatsResponse","description":"Response containing the volume discount statistics for the given epoch.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"stats","description":"Volume discount statistics for an epoch.","label":"","type":"VolumeDiscountStatsConnection","longType":"VolumeDiscountStatsConnection","fullType":"datanode.api.v2.VolumeDiscountStatsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetWithdrawalRequest","longName":"GetWithdrawalRequest","fullName":"datanode.api.v2.GetWithdrawalRequest","description":"Request to get a specific withdrawal by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Withdrawal ID to retrieve data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetWithdrawalResponse","longName":"GetWithdrawalResponse","fullName":"datanode.api.v2.GetWithdrawalResponse","description":"Response for a withdrawal request","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"withdrawal","description":"Withdrawal matching the ID from the request.","label":"","type":"Withdrawal","longType":"vega.Withdrawal","fullType":"vega.Withdrawal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GovernanceDataConnection","longName":"GovernanceDataConnection","fullName":"datanode.api.v2.GovernanceDataConnection","description":"Page of governance data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of governance data and their corresponding cursors.","label":"repeated","type":"GovernanceDataEdge","longType":"GovernanceDataEdge","fullType":"datanode.api.v2.GovernanceDataEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GovernanceDataEdge","longName":"GovernanceDataEdge","fullName":"datanode.api.v2.GovernanceDataEdge","description":"Governance data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Governance data content, i.e. proposal and votes for and against.","label":"","type":"GovernanceData","longType":"vega.GovernanceData","fullType":"vega.GovernanceData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"HistorySegment","longName":"HistorySegment","fullName":"datanode.api.v2.HistorySegment","description":"Describes a network history segment","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"from_height","description":"Starting height of the history segment.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_height","description":"Ending height of the history segment.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"history_segment_id","description":"History segment ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"previous_history_segment_id","description":"Previous history segment ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"database_version","description":"Database schema version of the history segment.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_id","description":"Chain ID of the history segment.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"IndividualGameEntities","longName":"IndividualGameEntities","fullName":"datanode.api.v2.IndividualGameEntities","description":"List of individuals that are participating in a game","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"individual","description":"List of individual party IDs, and the metrics associated with each participant.","label":"repeated","type":"IndividualGameEntity","longType":"IndividualGameEntity","fullType":"datanode.api.v2.IndividualGameEntity","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"IndividualGameEntity","longName":"IndividualGameEntity","fullName":"datanode.api.v2.IndividualGameEntity","description":"Data relating to an individual participating in a game.\nThis can be used for both team members who are participating in a team game,\nor individuals participating in an individual entity game.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"individual","description":"Party ID of the individual participating","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rank","description":"Rank of the individual either in the game or within their team.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume","description":"Volume traded by the individual","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_metric","description":"Reward metric applied to the individual","label":"","type":"DispatchMetric","longType":"vega.DispatchMetric","fullType":"vega.DispatchMetric","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_earned","description":"Reward earned by the individual during the epoch","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_rewards_earned","description":"Total rewards earned by the individual for the game","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"InfoRequest","longName":"InfoRequest","fullName":"datanode.api.v2.InfoRequest","description":"Request that is sent when querying node information","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"InfoResponse","longName":"InfoResponse","fullName":"datanode.api.v2.InfoResponse","description":"Response that is received from the node information query","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"version","description":"Semver formatted version of the data node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"commit_hash","description":"Commit hash from which the data node was built.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"IntervalToCandleId","longName":"IntervalToCandleId","fullName":"datanode.api.v2.IntervalToCandleId","description":"Maps an interval for a given market to its corresponding candle ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"interval","description":"Interval for the candle.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"candle_id","description":"Unique id of the candle.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"KeyRotationConnection","longName":"KeyRotationConnection","fullName":"datanode.api.v2.KeyRotationConnection","description":"Page of key rotations data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of key rotation data and their corresponding cursors.","label":"repeated","type":"KeyRotationEdge","longType":"KeyRotationEdge","fullType":"datanode.api.v2.KeyRotationEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"KeyRotationEdge","longName":"KeyRotationEdge","fullName":"datanode.api.v2.KeyRotationEdge","description":"Key rotation data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data relating to a key rotation that was performed by a node on the Vega network.","label":"","type":"KeyRotation","longType":"vega.events.v1.KeyRotation","fullType":"vega.events.v1.KeyRotation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LedgerEntryFilter","longName":"LedgerEntryFilter","fullName":"datanode.api.v2.LedgerEntryFilter","description":"Ledger entry filter sets filters on returned set of ledger entries.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"close_on_account_filters","description":"Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_account_filter","description":"Used to set values for filtering sender accounts. Party must be provided in this filter or 'to' account filter, or both.","label":"","type":"AccountFilter","longType":"AccountFilter","fullType":"datanode.api.v2.AccountFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_account_filter","description":"Used to set values for filtering receiver accounts. Party must be provided in this filter or 'from' account filter, or both.","label":"","type":"AccountFilter","longType":"AccountFilter","fullType":"datanode.api.v2.AccountFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transfer_types","description":"List of transfer types that is used for filtering sender and receiver accounts.","label":"repeated","type":"TransferType","longType":"vega.TransferType","fullType":"vega.TransferType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transfer_id","description":"List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_transfer_id","defaultValue":""}]},{"name":"LiquidationEstimate","longName":"LiquidationEstimate","fullName":"datanode.api.v2.LiquidationEstimate","description":"Liquidation estimate for both worst and best case possible.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"worst_case","description":"Liquidation price estimate assuming slippage cap is applied.","label":"","type":"LiquidationPrice","longType":"LiquidationPrice","fullType":"datanode.api.v2.LiquidationPrice","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_case","description":"Liquidation price estimate assuming no slippage.","label":"","type":"LiquidationPrice","longType":"LiquidationPrice","fullType":"datanode.api.v2.LiquidationPrice","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidationPrice","longName":"LiquidationPrice","fullName":"datanode.api.v2.LiquidationPrice","description":"Liquidation price estimate for either only the current open volume and position given some or all buy orders get filled, or position given some or all sell orders get filled.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"open_volume_only","description":"Liquidation price for current open volume ignoring any active orders.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"including_buy_orders","description":"Liquidation price assuming buy orders start getting filled.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"including_sell_orders","description":"Liquidation price assuming sell orders start getting filled.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvider","longName":"LiquidityProvider","fullName":"datanode.api.v2.LiquidityProvider","description":"Liquidity provider information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID of the liquidity provider.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"ID of the market the liquidity provider is active in.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fee_share","description":"Information used for calculating an LP's fee share, such as the equity like share,\naverage entry valuation and liquidity score for the liquidity provider for the specified market.","label":"","type":"LiquidityProviderFeeShare","longType":"vega.LiquidityProviderFeeShare","fullType":"vega.LiquidityProviderFeeShare","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"sla","description":"Information about LP's SLA performance.","label":"","type":"LiquidityProviderSLA","longType":"vega.LiquidityProviderSLA","fullType":"vega.LiquidityProviderSLA","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProviderConnection","longName":"LiquidityProviderConnection","fullName":"datanode.api.v2.LiquidityProviderConnection","description":"Page of liquidity provider data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of liquidity provider data.","label":"repeated","type":"LiquidityProviderEdge","longType":"LiquidityProviderEdge","fullType":"datanode.api.v2.LiquidityProviderEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProviderEdge","longName":"LiquidityProviderEdge","fullName":"datanode.api.v2.LiquidityProviderEdge","description":"Liquidity provider data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Liquidity provider information returned by the API.","label":"","type":"LiquidityProvider","longType":"LiquidityProvider","fullType":"datanode.api.v2.LiquidityProvider","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further data.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvision","longName":"LiquidityProvision","fullName":"datanode.api.v2.LiquidityProvision","description":"Liquidity provider commitment. For API purposes this can report a pending liquidity provision,\nthe current live provision or both in the event that an update has been accepted on the network, but has yet\nto go live and thus there is still a pending provision that will become active in the next epoch.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"current","description":"Liquidity provision that is currently live.","label":"","type":"LiquidityProvision","longType":"vega.LiquidityProvision","fullType":"vega.LiquidityProvision","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pending","description":"Liquidity provision that is currently pending and will go live in the next epoch.","label":"optional","type":"LiquidityProvision","longType":"vega.LiquidityProvision","fullType":"vega.LiquidityProvision","ismap":false,"isoneof":true,"oneofdecl":"_pending","defaultValue":""}]},{"name":"LiquidityProvisionWithPendingEdge","longName":"LiquidityProvisionWithPendingEdge","fullName":"datanode.api.v2.LiquidityProvisionWithPendingEdge","description":"Liquidity provision data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data corresponding to a liquidity provider's commitment.","label":"","type":"LiquidityProvision","longType":"LiquidityProvision","fullType":"datanode.api.v2.LiquidityProvision","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvisionsConnection","longName":"LiquidityProvisionsConnection","fullName":"datanode.api.v2.LiquidityProvisionsConnection","description":"Page of liquidity provisions data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of liquidity provisions data and their corresponding cursors.","label":"repeated","type":"LiquidityProvisionsEdge","longType":"LiquidityProvisionsEdge","fullType":"datanode.api.v2.LiquidityProvisionsEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvisionsEdge","longName":"LiquidityProvisionsEdge","fullName":"datanode.api.v2.LiquidityProvisionsEdge","description":"Liquidity provision data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data corresponding to a liquidity provider's commitment.","label":"","type":"LiquidityProvision","longType":"vega.LiquidityProvision","fullType":"vega.LiquidityProvision","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LiquidityProvisionsWithPendingConnection","longName":"LiquidityProvisionsWithPendingConnection","fullName":"datanode.api.v2.LiquidityProvisionsWithPendingConnection","description":"Page of liquidity provisions data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of liquidity provisions data and their corresponding cursors.","label":"repeated","type":"LiquidityProvisionWithPendingEdge","longType":"LiquidityProvisionWithPendingEdge","fullType":"datanode.api.v2.LiquidityProvisionWithPendingEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used to fetch further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAccountsRequest","longName":"ListAccountsRequest","fullName":"datanode.api.v2.ListAccountsRequest","description":"Request that is sent when listing accounts.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"filter","description":"Account filter contains all filter conditions and values that can be applied to the listing.","label":"","type":"AccountFilter","longType":"AccountFilter","fullType":"datanode.api.v2.AccountFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Optional pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListAccountsResponse","longName":"ListAccountsResponse","fullName":"datanode.api.v2.ListAccountsResponse","description":"Response that is received from listing accounts query.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"accounts","description":"Page of accounts data and corresponding page information.","label":"","type":"AccountsConnection","longType":"AccountsConnection","fullType":"datanode.api.v2.AccountsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAllLiquidityProvisionsRequest","longName":"ListAllLiquidityProvisionsRequest","fullName":"datanode.api.v2.ListAllLiquidityProvisionsRequest","description":"Request for listing liquidity provisions","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Restrict liquidity provisions to those placed on the given market.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"party_id","description":"Restrict liquidity provisions to those placed by the given party.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"reference","description":"Restrict liquidity provisions to those with the given order reference.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_reference","defaultValue":""},{"name":"live","description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_live","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListAllLiquidityProvisionsResponse","longName":"ListAllLiquidityProvisionsResponse","fullName":"datanode.api.v2.ListAllLiquidityProvisionsResponse","description":"Response from listing liquidity provisions","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"liquidity_provisions","description":"Page of liquidity provisions data and corresponding page information.","label":"","type":"LiquidityProvisionsWithPendingConnection","longType":"LiquidityProvisionsWithPendingConnection","fullType":"datanode.api.v2.LiquidityProvisionsWithPendingConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAllNetworkHistorySegmentsRequest","longName":"ListAllNetworkHistorySegmentsRequest","fullName":"datanode.api.v2.ListAllNetworkHistorySegmentsRequest","description":"Request to list all the nodes history segments","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"ListAllNetworkHistorySegmentsResponse","longName":"ListAllNetworkHistorySegmentsResponse","fullName":"datanode.api.v2.ListAllNetworkHistorySegmentsResponse","description":"Response with a list of all the nodes history segments","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"segments","description":"Page of history segments data and corresponding page information.","label":"repeated","type":"HistorySegment","longType":"HistorySegment","fullType":"datanode.api.v2.HistorySegment","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAllPositionsRequest","longName":"ListAllPositionsRequest","fullName":"datanode.api.v2.ListAllPositionsRequest","description":"Request to list positions, given the position filter is supplied.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"filter","description":"Filter to apply to the positions.","label":"","type":"PositionsFilter","longType":"PositionsFilter","fullType":"datanode.api.v2.PositionsFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListAllPositionsResponse","longName":"ListAllPositionsResponse","fullName":"datanode.api.v2.ListAllPositionsResponse","description":"Response to query for listing of positions, given the filter is supplied","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"positions","description":"Page of positions data and corresponding page information.","label":"","type":"PositionConnection","longType":"PositionConnection","fullType":"datanode.api.v2.PositionConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAssetsRequest","longName":"ListAssetsRequest","fullName":"datanode.api.v2.ListAssetsRequest","description":"Request for listing assets data","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"asset_id","description":"Optional asset ID to list data for.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListAssetsResponse","longName":"ListAssetsResponse","fullName":"datanode.api.v2.ListAssetsResponse","description":"Response from listing assets","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"assets","description":"Page of assets data and corresponding page information.","label":"","type":"AssetsConnection","longType":"AssetsConnection","fullType":"datanode.api.v2.AssetsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListBalanceChangesRequest","longName":"ListBalanceChangesRequest","fullName":"datanode.api.v2.ListBalanceChangesRequest","description":"Request to use when querying balances changes.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"filter","description":"Limit the accounts considered according to the filter supplied.","label":"","type":"AccountFilter","longType":"AccountFilter","fullType":"datanode.api.v2.AccountFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"date_range","description":"Date range over which to query.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""}]},{"name":"ListBalanceChangesResponse","longName":"ListBalanceChangesResponse","fullName":"datanode.api.v2.ListBalanceChangesResponse","description":"Response that is received from querying balances changes.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"balances","description":"Page of aggregated balances data and corresponding page information.","label":"","type":"AggregatedBalanceConnection","longType":"AggregatedBalanceConnection","fullType":"datanode.api.v2.AggregatedBalanceConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListCandleDataRequest","longName":"ListCandleDataRequest","fullName":"datanode.api.v2.ListCandleDataRequest","description":"Request that is used when listing candles for a market at an interval","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"candle_id","description":"Candle ID to retrieve candle data for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_timestamp","description":"Timestamp in Unix nanoseconds to retrieve candles from.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"to_timestamp","description":"Timestamp in Unix nanoseconds to retrieve candles to.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListCandleDataResponse","longName":"ListCandleDataResponse","fullName":"datanode.api.v2.ListCandleDataResponse","description":"Response for list of candles for a market at an interval","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"candles","description":"Page of candle data and corresponding page information.","label":"","type":"CandleDataConnection","longType":"CandleDataConnection","fullType":"datanode.api.v2.CandleDataConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListCandleIntervalsRequest","longName":"ListCandleIntervalsRequest","fullName":"datanode.api.v2.ListCandleIntervalsRequest","description":"Request that is used to fetch a list of supported intervals for the given market along with the corresponding candle ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Unique ID for the market to list candle intervals for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListCandleIntervalsResponse","longName":"ListCandleIntervalsResponse","fullName":"datanode.api.v2.ListCandleIntervalsResponse","description":"List of mapped pairs `interval` -> `candle ID` for a given market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"interval_to_candle_id","description":"List of the mappings.","label":"repeated","type":"IntervalToCandleId","longType":"IntervalToCandleId","fullType":"datanode.api.v2.IntervalToCandleId","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListCheckpointsRequest","longName":"ListCheckpointsRequest","fullName":"datanode.api.v2.ListCheckpointsRequest","description":"Request to get all checkpoints. Currently no fields, probably will be expanded to allow filtering data","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListCheckpointsResponse","longName":"ListCheckpointsResponse","fullName":"datanode.api.v2.ListCheckpointsResponse","description":"Response message containing all checkpoints requested","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"checkpoints","description":"Page of checkpoints data and corresponding page information.","label":"","type":"CheckpointsConnection","longType":"CheckpointsConnection","fullType":"datanode.api.v2.CheckpointsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListCoreSnapshotsRequest","longName":"ListCoreSnapshotsRequest","fullName":"datanode.api.v2.ListCoreSnapshotsRequest","description":"Request type for ListCoreSnapshots; fetches a paginated list of the core snapshots.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListCoreSnapshotsResponse","longName":"ListCoreSnapshotsResponse","fullName":"datanode.api.v2.ListCoreSnapshotsResponse","description":"Response from a ListCoreSnapshots RPC call; a paginated list of the core snapshots.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"core_snapshots","description":"Page of core snapshot data and corresponding page information.","label":"","type":"CoreSnapshotConnection","longType":"CoreSnapshotConnection","fullType":"datanode.api.v2.CoreSnapshotConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListDelegationsRequest","longName":"ListDelegationsRequest","fullName":"datanode.api.v2.ListDelegationsRequest","description":"Request for listing delegations","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict delegations to those made by the given party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"node_id","description":"Restrict delegations to those made to the given node ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_node_id","defaultValue":""},{"name":"epoch_id","description":"Return delegations made in the given epoch. If not set, delegations for the current epoch will be returned.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_epoch_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListDelegationsResponse","longName":"ListDelegationsResponse","fullName":"datanode.api.v2.ListDelegationsResponse","description":"Response from listing delegations","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"delegations","description":"Page of delegations data and corresponding page information.","label":"","type":"DelegationsConnection","longType":"DelegationsConnection","fullType":"datanode.api.v2.DelegationsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListDepositsRequest","longName":"ListDepositsRequest","fullName":"datanode.api.v2.ListDepositsRequest","description":"Request to list all deposits for a given party","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict deposits to those made by the given party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"date_range","description":"Date range of the requested data, if provided.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""}]},{"name":"ListDepositsResponse","longName":"ListDepositsResponse","fullName":"datanode.api.v2.ListDepositsResponse","description":"Response from listing deposits","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"deposits","description":"Page of deposits data and corresponding page information.","label":"","type":"DepositsConnection","longType":"DepositsConnection","fullType":"datanode.api.v2.DepositsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListERC20MultiSigSignerAddedBundlesRequest","longName":"ListERC20MultiSigSignerAddedBundlesRequest","fullName":"datanode.api.v2.ListERC20MultiSigSignerAddedBundlesRequest","description":"Request for adding a signature bundle to the signer list of a multisig contract for a particular validator","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID of the validator for which a signature bundle is required.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter","description":"Ethereum address of the validator that will submit the bundle.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was promoted to consensus validator.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListERC20MultiSigSignerAddedBundlesResponse","longName":"ListERC20MultiSigSignerAddedBundlesResponse","fullName":"datanode.api.v2.ListERC20MultiSigSignerAddedBundlesResponse","description":"Response from adding a signature bundle to the signer list of a multisig contract for a particular validator","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"bundles","description":"Page of bundles for that validator - it may have been added multiple times if removed in between - and corresponding page information.","label":"","type":"ERC20MultiSigSignerAddedConnection","longType":"ERC20MultiSigSignerAddedConnection","fullType":"datanode.api.v2.ERC20MultiSigSignerAddedConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListERC20MultiSigSignerRemovedBundlesRequest","longName":"ListERC20MultiSigSignerRemovedBundlesRequest","fullName":"datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesRequest","description":"Request for removing a signature bundle from the signer list of the multisig contract for a particular validator","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node_id","description":"Node ID of the validator of which a signature bundle is required.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"submitter","description":"Ethereum address of the validator that will submit the bundle.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was demoted from a consensus validator.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListERC20MultiSigSignerRemovedBundlesResponse","longName":"ListERC20MultiSigSignerRemovedBundlesResponse","fullName":"datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesResponse","description":"Response when removing a signature bundle from the signer list of the multisig contract for a particular validator","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"bundles","description":"Page of signer bundle data items for that validator and corresponding page information.","label":"","type":"ERC20MultiSigSignerRemovedConnection","longType":"ERC20MultiSigSignerRemovedConnection","fullType":"datanode.api.v2.ERC20MultiSigSignerRemovedConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListEntitiesRequest","longName":"ListEntitiesRequest","fullName":"datanode.api.v2.ListEntitiesRequest","description":"Request to list all entities that were created by the given transaction hash","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transaction_hash","description":"Transaction hash to match against","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListEntitiesResponse","longName":"ListEntitiesResponse","fullName":"datanode.api.v2.ListEntitiesResponse","description":"Response from listing entities that were created for a given transaction hash","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"accounts","description":"","label":"repeated","type":"Account","longType":"vega.Account","fullType":"vega.Account","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"orders","description":"","label":"repeated","type":"Order","longType":"vega.Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"positions","description":"","label":"repeated","type":"Position","longType":"vega.Position","fullType":"vega.Position","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ledger_entries","description":"","label":"repeated","type":"LedgerEntry","longType":"vega.LedgerEntry","fullType":"vega.LedgerEntry","ismap":true,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance_changes","description":"","label":"repeated","type":"AccountBalance","longType":"AccountBalance","fullType":"datanode.api.v2.AccountBalance","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transfers","description":"","label":"repeated","type":"Transfer","longType":"vega.events.v1.Transfer","fullType":"vega.events.v1.Transfer","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"votes","description":"","label":"repeated","type":"Vote","longType":"vega.Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"erc20_multi_sig_signer_added_bundles","description":"","label":"repeated","type":"ERC20MultiSigSignerAddedBundle","longType":"ERC20MultiSigSignerAddedBundle","fullType":"datanode.api.v2.ERC20MultiSigSignerAddedBundle","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"erc20_multi_sig_signer_removed_bundles","description":"","label":"repeated","type":"ERC20MultiSigSignerRemovedBundle","longType":"ERC20MultiSigSignerRemovedBundle","fullType":"datanode.api.v2.ERC20MultiSigSignerRemovedBundle","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trades","description":"","label":"repeated","type":"Trade","longType":"vega.Trade","fullType":"vega.Trade","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"oracle_specs","description":"","label":"repeated","type":"OracleSpec","longType":"vega.OracleSpec","fullType":"vega.OracleSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"oracle_data","description":"","label":"repeated","type":"OracleData","longType":"vega.OracleData","fullType":"vega.OracleData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"markets","description":"","label":"repeated","type":"Market","longType":"vega.Market","fullType":"vega.Market","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"parties","description":"","label":"repeated","type":"Party","longType":"vega.Party","fullType":"vega.Party","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_levels","description":"","label":"repeated","type":"MarginLevels","longType":"vega.MarginLevels","fullType":"vega.MarginLevels","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rewards","description":"","label":"repeated","type":"Reward","longType":"vega.Reward","fullType":"vega.Reward","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"deposits","description":"","label":"repeated","type":"Deposit","longType":"vega.Deposit","fullType":"vega.Deposit","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"withdrawals","description":"","label":"repeated","type":"Withdrawal","longType":"vega.Withdrawal","fullType":"vega.Withdrawal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"assets","description":"","label":"repeated","type":"Asset","longType":"vega.Asset","fullType":"vega.Asset","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"liquidity_provisions","description":"","label":"repeated","type":"LiquidityProvision","longType":"vega.LiquidityProvision","fullType":"vega.LiquidityProvision","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proposals","description":"","label":"repeated","type":"Proposal","longType":"vega.Proposal","fullType":"vega.Proposal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"delegations","description":"","label":"repeated","type":"Delegation","longType":"vega.Delegation","fullType":"vega.Delegation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"nodes","description":"","label":"repeated","type":"NodeBasic","longType":"NodeBasic","fullType":"datanode.api.v2.NodeBasic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"node_signatures","description":"","label":"repeated","type":"NodeSignature","longType":"vega.commands.v1.NodeSignature","fullType":"vega.commands.v1.NodeSignature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"network_parameters","description":"","label":"repeated","type":"NetworkParameter","longType":"vega.NetworkParameter","fullType":"vega.NetworkParameter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"key_rotations","description":"","label":"repeated","type":"KeyRotation","longType":"vega.events.v1.KeyRotation","fullType":"vega.events.v1.KeyRotation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_key_rotations","description":"","label":"repeated","type":"EthereumKeyRotation","longType":"vega.events.v1.EthereumKeyRotation","fullType":"vega.events.v1.EthereumKeyRotation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"protocol_upgrade_proposals","description":"","label":"repeated","type":"ProtocolUpgradeEvent","longType":"vega.events.v1.ProtocolUpgradeEvent","fullType":"vega.events.v1.ProtocolUpgradeEvent","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListEpochRewardSummariesRequest","longName":"ListEpochRewardSummariesRequest","fullName":"datanode.api.v2.ListEpochRewardSummariesRequest","description":"Request to get summary of reward per epoch for a given range of epochs","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"filter","description":"Limit the results considered according to the filter supplied.","label":"","type":"RewardSummaryFilter","longType":"RewardSummaryFilter","fullType":"datanode.api.v2.RewardSummaryFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListEpochRewardSummariesResponse","longName":"ListEpochRewardSummariesResponse","fullName":"datanode.api.v2.ListEpochRewardSummariesResponse","description":"Return message with reward details in for a single party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"summaries","description":"Page of rewards details for a single party and corresponding page information.","label":"","type":"EpochRewardSummaryConnection","longType":"EpochRewardSummaryConnection","fullType":"datanode.api.v2.EpochRewardSummaryConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListEthereumKeyRotationsRequest","longName":"ListEthereumKeyRotationsRequest","fullName":"datanode.api.v2.ListEthereumKeyRotationsRequest","description":"Request to list ethereum key rotations for nodes, optionally filtered by node","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"node_id","description":"Node ID to get the rotation for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_node_id","defaultValue":""},{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListEthereumKeyRotationsResponse","longName":"ListEthereumKeyRotationsResponse","fullName":"datanode.api.v2.ListEthereumKeyRotationsResponse","description":"Response message containing Ethereum key rotations","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"key_rotations","description":"Page of Ethereum key rotations data and corresponding page information.","label":"","type":"EthereumKeyRotationsConnection","longType":"EthereumKeyRotationsConnection","fullType":"datanode.api.v2.EthereumKeyRotationsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListFundingPaymentsRequest","longName":"ListFundingPaymentsRequest","fullName":"datanode.api.v2.ListFundingPaymentsRequest","description":"Request to list a a party's funding payments","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party ID to get funding payment for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Restrict funding payments returned to those generated by the given market.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListFundingPaymentsResponse","longName":"ListFundingPaymentsResponse","fullName":"datanode.api.v2.ListFundingPaymentsResponse","description":"Response from listing funding payments","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"funding_payments","description":"Page of funding period data and corresponding page information.","label":"","type":"FundingPaymentConnection","longType":"FundingPaymentConnection","fullType":"datanode.api.v2.FundingPaymentConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListFundingPeriodDataPointsRequest","longName":"ListFundingPeriodDataPointsRequest","fullName":"datanode.api.v2.ListFundingPeriodDataPointsRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to get funding period data points for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"date_range","description":"Restrict the data points to those within the given date range.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""},{"name":"source","description":"Restrict the data points to those with the given source type.","label":"optional","type":"Source","longType":"vega.events.v1.FundingPeriodDataPoint.Source","fullType":"vega.events.v1.FundingPeriodDataPoint.Source","ismap":false,"isoneof":true,"oneofdecl":"_source","defaultValue":""},{"name":"seq","description":"Restrict the data points to those that contributed to the given funding period sequence.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_seq","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListFundingPeriodDataPointsResponse","longName":"ListFundingPeriodDataPointsResponse","fullName":"datanode.api.v2.ListFundingPeriodDataPointsResponse","description":"Response from listing funding period data points.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"funding_period_data_points","description":"Page of funding period data points and corresponding page information.","label":"","type":"FundingPeriodDataPointConnection","longType":"FundingPeriodDataPointConnection","fullType":"datanode.api.v2.FundingPeriodDataPointConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListFundingPeriodsRequest","longName":"ListFundingPeriodsRequest","fullName":"datanode.api.v2.ListFundingPeriodsRequest","description":"Request to list a perpetual market's funding periods","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to get funding periods for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"date_range","description":"Restrict the funding periods to those within the given date range.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListFundingPeriodsResponse","longName":"ListFundingPeriodsResponse","fullName":"datanode.api.v2.ListFundingPeriodsResponse","description":"Response from listing funding periods","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"funding_periods","description":"Page of funding period data and corresponding page information.","label":"","type":"FundingPeriodConnection","longType":"FundingPeriodConnection","fullType":"datanode.api.v2.FundingPeriodConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListGamesRequest","longName":"ListGamesRequest","fullName":"datanode.api.v2.ListGamesRequest","description":"Request to retrieve games data.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"game_id","description":"Game ID to filter for.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_game_id","defaultValue":""},{"name":"epoch_from","description":"First epoch to retrieve game data from. If not provided, defaults to the last epoch minus 30,\nor the first epoch available if not enough epochs have passed.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_epoch_from","defaultValue":""},{"name":"epoch_to","description":"Last epoch to retrieve game data to (inclusive). If not provided, defaults to the last epoch.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_epoch_to","defaultValue":""},{"name":"entity_scope","description":"Entity scope to filter games for, i.e. team games or individual games only","label":"optional","type":"EntityScope","longType":"vega.EntityScope","fullType":"vega.EntityScope","ismap":false,"isoneof":true,"oneofdecl":"_entity_scope","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListGamesResponse","longName":"ListGamesResponse","fullName":"datanode.api.v2.ListGamesResponse","description":"Response containing games data.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"games","description":"Page of games data and corresponding page information.","label":"","type":"GamesConnection","longType":"GamesConnection","fullType":"datanode.api.v2.GamesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListGovernanceDataRequest","longName":"ListGovernanceDataRequest","fullName":"datanode.api.v2.ListGovernanceDataRequest","description":"Request to list governance data","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"proposal_state","description":"Restrict proposals to those with the given state.","label":"optional","type":"State","longType":"vega.Proposal.State","fullType":"vega.Proposal.State","ismap":false,"isoneof":true,"oneofdecl":"_proposal_state","defaultValue":""},{"name":"proposal_type","description":"Restrict proposals to those with the given type.","label":"optional","type":"Type","longType":"ListGovernanceDataRequest.Type","fullType":"datanode.api.v2.ListGovernanceDataRequest.Type","ismap":false,"isoneof":true,"oneofdecl":"_proposal_type","defaultValue":""},{"name":"proposer_party_id","description":"Restrict proposals to those proposed by the given party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_proposer_party_id","defaultValue":""},{"name":"proposal_reference","description":"Restrict proposals to those with the given reference.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_proposal_reference","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListGovernanceDataResponse","longName":"ListGovernanceDataResponse","fullName":"datanode.api.v2.ListGovernanceDataResponse","description":"Response from listing governance data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"connection","description":"Page of governance data and corresponding page information.","label":"","type":"GovernanceDataConnection","longType":"GovernanceDataConnection","fullType":"datanode.api.v2.GovernanceDataConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListKeyRotationsRequest","longName":"ListKeyRotationsRequest","fullName":"datanode.api.v2.ListKeyRotationsRequest","description":"Request to list all key rotations","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"node_id","description":"Node ID to get key rotations for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_node_id","defaultValue":""},{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListKeyRotationsResponse","longName":"ListKeyRotationsResponse","fullName":"datanode.api.v2.ListKeyRotationsResponse","description":"Response message containing Vega key rotations","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"rotations","description":"Page of key rotations data and corresponding page information.","label":"","type":"KeyRotationConnection","longType":"KeyRotationConnection","fullType":"datanode.api.v2.KeyRotationConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListLatestMarketDataRequest","longName":"ListLatestMarketDataRequest","fullName":"datanode.api.v2.ListLatestMarketDataRequest","description":"Request that is sent when listing the latest market data for every market","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"ListLatestMarketDataResponse","longName":"ListLatestMarketDataResponse","fullName":"datanode.api.v2.ListLatestMarketDataResponse","description":"Response that is received when listing the latest market data for every market","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"markets_data","description":"","label":"repeated","type":"MarketData","longType":"vega.MarketData","fullType":"vega.MarketData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListLedgerEntriesRequest","longName":"ListLedgerEntriesRequest","fullName":"datanode.api.v2.ListLedgerEntriesRequest","description":"Request that is sent when listing ledger entries.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"filter","description":"Ledger entry filter that contains all values and conditions according to which\nthe listing of ledger entries is filtered.You must provide at least one party in\n'from' account filter, or 'to' account filter.","label":"","type":"LedgerEntryFilter","longType":"LedgerEntryFilter","fullType":"datanode.api.v2.LedgerEntryFilter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Optional pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"date_range","description":"Date range for which to list ledger entries.\nIf not set, the date range is restricted to the last 5 days.\nIf a start and end date is provided, but the range is more than 5 days, the end date will be restricted to 5 days from the start.\nIf a start date is provided, but no end date, the end date will be set to 5 days from the start.\nIf an end date is provided, but no start date, the start date will be set to 5 days before the end.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""}]},{"name":"ListLedgerEntriesResponse","longName":"ListLedgerEntriesResponse","fullName":"datanode.api.v2.ListLedgerEntriesResponse","description":"Response that is received when listing ledger entries","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ledger_entries","description":"Page of aggregated ledger entries data and corresponding page information.","label":"","type":"AggregatedLedgerEntriesConnection","longType":"AggregatedLedgerEntriesConnection","fullType":"datanode.api.v2.AggregatedLedgerEntriesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListLiquidityProvidersRequest","longName":"ListLiquidityProvidersRequest","fullName":"datanode.api.v2.ListLiquidityProvidersRequest","description":"Request for listing active liquidity providers for a given market.\nEither market ID or party ID or both, must be provided.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to retrieve liquidity providers for. If omitted, you must provide a party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"party_id","description":"Party ID to retrieve data for. If omitted, you must provide a market ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListLiquidityProvidersResponse","longName":"ListLiquidityProvidersResponse","fullName":"datanode.api.v2.ListLiquidityProvidersResponse","description":"Response for listing liquidity providers.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"liquidity_providers","description":"Page of liquidity providers and corresponding page information.","label":"","type":"LiquidityProviderConnection","longType":"LiquidityProviderConnection","fullType":"datanode.api.v2.LiquidityProviderConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListLiquidityProvisionsRequest","longName":"ListLiquidityProvisionsRequest","fullName":"datanode.api.v2.ListLiquidityProvisionsRequest","description":"Request for listing liquidity provisions","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Restrict liquidity provisions to those placed on the given market.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"party_id","description":"Restrict liquidity provisions to those placed by the given party.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"reference","description":"Restrict liquidity provisions to those with the given order reference.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_reference","defaultValue":""},{"name":"live","description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_live","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListLiquidityProvisionsResponse","longName":"ListLiquidityProvisionsResponse","fullName":"datanode.api.v2.ListLiquidityProvisionsResponse","description":"Response from listing liquidity provisions","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"liquidity_provisions","description":"Page of liquidity provisions data and corresponding page information.","label":"","type":"LiquidityProvisionsConnection","longType":"LiquidityProvisionsConnection","fullType":"datanode.api.v2.LiquidityProvisionsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListMarginLevelsRequest","longName":"ListMarginLevelsRequest","fullName":"datanode.api.v2.ListMarginLevelsRequest","description":"Request for listing margin levels","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID for which to list the margin levels","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID for which to list the margin levels","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination control","label":"","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListMarginLevelsResponse","longName":"ListMarginLevelsResponse","fullName":"datanode.api.v2.ListMarginLevelsResponse","description":"Response from listing margin levels","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"margin_levels","description":"Page of margin levels data and corresponding page information.","label":"","type":"MarginConnection","longType":"MarginConnection","fullType":"datanode.api.v2.MarginConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListMarketsRequest","longName":"ListMarketsRequest","fullName":"datanode.api.v2.ListMarketsRequest","description":"Request for listing markets","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pagination","description":"Pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"include_settled","description":"Whether to include settled markets. If not set, settled markets will be included.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_include_settled","defaultValue":""}]},{"name":"ListMarketsResponse","longName":"ListMarketsResponse","fullName":"datanode.api.v2.ListMarketsResponse","description":"Response from listing markets","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"markets","description":"Page of markets and corresponding page information.","label":"","type":"MarketConnection","longType":"MarketConnection","fullType":"datanode.api.v2.MarketConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListNetworkParametersRequest","longName":"ListNetworkParametersRequest","fullName":"datanode.api.v2.ListNetworkParametersRequest","description":"Message requesting for the list of all network parameters","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListNetworkParametersResponse","longName":"ListNetworkParametersResponse","fullName":"datanode.api.v2.ListNetworkParametersResponse","description":"Response containing all of the Vega network parameters","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"network_parameters","description":"Page of network parameters and corresponding page information.","label":"","type":"NetworkParameterConnection","longType":"NetworkParameterConnection","fullType":"datanode.api.v2.NetworkParameterConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListNodeSignaturesRequest","longName":"ListNodeSignaturesRequest","fullName":"datanode.api.v2.ListNodeSignaturesRequest","description":"Request to specify the ID of the resource to retrieve aggregated signatures for","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"id","description":"Resource ID to list signatures for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Optional pagination information to limit the data that is returned.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListNodeSignaturesResponse","longName":"ListNodeSignaturesResponse","fullName":"datanode.api.v2.ListNodeSignaturesResponse","description":"Response to specify the ID of the resource to retrieve aggregated signatures for","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"signatures","description":"Page of nodes signatures and corresponding page information.","label":"","type":"NodeSignaturesConnection","longType":"NodeSignaturesConnection","fullType":"datanode.api.v2.NodeSignaturesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListNodesRequest","longName":"ListNodesRequest","fullName":"datanode.api.v2.ListNodesRequest","description":"Request to list nodes","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"epoch_seq","description":"Return the node list for the given epoch. If not set, the node list for the current epoch will be returned.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_epoch_seq","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListNodesResponse","longName":"ListNodesResponse","fullName":"datanode.api.v2.ListNodesResponse","description":"Response from listing nodes","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"nodes","description":"Page of node data and corresponding page information.","label":"","type":"NodesConnection","longType":"NodesConnection","fullType":"datanode.api.v2.NodesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListOracleDataRequest","longName":"ListOracleDataRequest","fullName":"datanode.api.v2.ListOracleDataRequest","description":"Request to get all seen oracle data","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"oracle_spec_id","description":"Oracle spec ID to list data for.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_oracle_spec_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListOracleDataResponse","longName":"ListOracleDataResponse","fullName":"datanode.api.v2.ListOracleDataResponse","description":"Response to get all seen oracle data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"oracle_data","description":"Page of seen oracle data and corresponding page information.","label":"","type":"OracleDataConnection","longType":"OracleDataConnection","fullType":"datanode.api.v2.OracleDataConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListOracleSpecsRequest","longName":"ListOracleSpecsRequest","fullName":"datanode.api.v2.ListOracleSpecsRequest","description":"Request to get all active oracle specs","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListOracleSpecsResponse","longName":"ListOracleSpecsResponse","fullName":"datanode.api.v2.ListOracleSpecsResponse","description":"Response to get all active oracle specs","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"oracle_specs","description":"Page of active oracle specs and corresponding page information.","label":"","type":"OracleSpecsConnection","longType":"OracleSpecsConnection","fullType":"datanode.api.v2.OracleSpecsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListOrderVersionsRequest","longName":"ListOrderVersionsRequest","fullName":"datanode.api.v2.ListOrderVersionsRequest","description":"Request that is sent when listing possible order versions","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"order_id","description":"Order ID to list versions for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Optional pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListOrderVersionsResponse","longName":"ListOrderVersionsResponse","fullName":"datanode.api.v2.ListOrderVersionsResponse","description":"Response that is received when listing possible order versions","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"orders","description":"Page of order versions and corresponding page information.","label":"","type":"OrderConnection","longType":"OrderConnection","fullType":"datanode.api.v2.OrderConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListOrdersRequest","longName":"ListOrdersRequest","fullName":"datanode.api.v2.ListOrdersRequest","description":"Request that is sent when executing a query for a list of orders","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pagination","description":"Optional pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"filter","description":"Order filter contains all filtering conditions and values that are applied to the orders listing.","label":"optional","type":"OrderFilter","longType":"OrderFilter","fullType":"datanode.api.v2.OrderFilter","ismap":false,"isoneof":true,"oneofdecl":"_filter","defaultValue":""}]},{"name":"ListOrdersResponse","longName":"ListOrdersResponse","fullName":"datanode.api.v2.ListOrdersResponse","description":"Response that is received from the query to list orders","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"orders","description":"Page of orders data and corresponding page information.","label":"","type":"OrderConnection","longType":"OrderConnection","fullType":"datanode.api.v2.OrderConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPaidLiquidityFeesRequest","longName":"ListPaidLiquidityFeesRequest","fullName":"datanode.api.v2.ListPaidLiquidityFeesRequest","description":"Paid liquidity fees request.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Restrict fee data to those fees generated in the given market.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"asset_id","description":"Restrict fee statistics to those paid in the given asset.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"epoch_seq","description":"Epoch to get paid liquidity fee statistics for. If omitted, the last complete epoch is used.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_epoch_seq","defaultValue":""},{"name":"party_ids","description":"Restrict fee data to those fees paid to the given parties.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListPaidLiquidityFeesResponse","longName":"ListPaidLiquidityFeesResponse","fullName":"datanode.api.v2.ListPaidLiquidityFeesResponse","description":"Paid liquidity fees response.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"paid_liquidity_fees","description":"Page of paid liquidity fees and corresponding page information.","label":"","type":"PaidLiquidityFeesConnection","longType":"PaidLiquidityFeesConnection","fullType":"datanode.api.v2.PaidLiquidityFeesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartiesProfilesRequest","longName":"ListPartiesProfilesRequest","fullName":"datanode.api.v2.ListPartiesProfilesRequest","description":"Request to list profiles by party ID.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"parties","description":"Restrict the returned profiles to only the given party IDs. If not set,\nall parties' profiles will be returned.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination control.","label":"","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartiesProfilesResponse","longName":"ListPartiesProfilesResponse","fullName":"datanode.api.v2.ListPartiesProfilesResponse","description":"Response from listing parties' profiles.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"profiles","description":"Page of profile data and corresponding page information.","label":"","type":"PartiesProfilesConnection","longType":"PartiesProfilesConnection","fullType":"datanode.api.v2.PartiesProfilesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartiesRequest","longName":"ListPartiesRequest","fullName":"datanode.api.v2.ListPartiesRequest","description":"Request to list parties by ID","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Restrict the returned party to only the given party ID. If not set, all parties will be returned.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination control.","label":"","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartiesResponse","longName":"ListPartiesResponse","fullName":"datanode.api.v2.ListPartiesResponse","description":"Response from listing parties","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"parties","description":"Page of parties data and corresponding page information.","label":"","type":"PartyConnection","longType":"PartyConnection","fullType":"datanode.api.v2.PartyConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartyMarginModesRequest","longName":"ListPartyMarginModesRequest","fullName":"datanode.api.v2.ListPartyMarginModesRequest","description":"Request to retrieve party margin modes.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to filter for.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"party_id","description":"Party ID to filter for.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListPartyMarginModesResponse","longName":"ListPartyMarginModesResponse","fullName":"datanode.api.v2.ListPartyMarginModesResponse","description":"Response containing party margin modes.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_margin_modes","description":"Page of party margin modes data and corresponding page information.","label":"","type":"PartyMarginModesConnection","longType":"PartyMarginModesConnection","fullType":"datanode.api.v2.PartyMarginModesConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPositionsRequest","longName":"ListPositionsRequest","fullName":"datanode.api.v2.ListPositionsRequest","description":"Request used to list all positions for a party.\nOptionally, if a market ID is set, the results will be filtered for that market only.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party ID to list positions for, required field.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID to filter for. If empty, no markets will be filtered.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}],"options":{"deprecated":true}},{"name":"ListPositionsResponse","longName":"ListPositionsResponse","fullName":"datanode.api.v2.ListPositionsResponse","description":"Response for a list of positions for a party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"positions","description":"Page of positions data and corresponding page information.","label":"","type":"PositionConnection","longType":"PositionConnection","fullType":"datanode.api.v2.PositionConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}],"options":{"deprecated":true}},{"name":"ListProtocolUpgradeProposalsRequest","longName":"ListProtocolUpgradeProposalsRequest","fullName":"datanode.api.v2.ListProtocolUpgradeProposalsRequest","description":"Request type for ListProtocolUpgradeProposals; fetches a paginated list of protocol upgrade proposals","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"status","description":"Restrict protocol upgrade proposals to those with the given status.","label":"optional","type":"ProtocolUpgradeProposalStatus","longType":"vega.events.v1.ProtocolUpgradeProposalStatus","fullType":"vega.events.v1.ProtocolUpgradeProposalStatus","ismap":false,"isoneof":true,"oneofdecl":"_status","defaultValue":""},{"name":"approved_by","description":"Restrict protocol upgrade proposals to those approved by the given node ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_approved_by","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListProtocolUpgradeProposalsResponse","longName":"ListProtocolUpgradeProposalsResponse","fullName":"datanode.api.v2.ListProtocolUpgradeProposalsResponse","description":"Response type from a ListProtocolUpgradeProposals RPC call; a paginated list of protocol upgrade proposals","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"protocol_upgrade_proposals","description":"Page of protocol upgrade proposals and corresponding page information.","label":"","type":"ProtocolUpgradeProposalConnection","longType":"ProtocolUpgradeProposalConnection","fullType":"datanode.api.v2.ProtocolUpgradeProposalConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListReferralSetRefereesRequest","longName":"ListReferralSetRefereesRequest","fullName":"datanode.api.v2.ListReferralSetRefereesRequest","description":"Request to retrieve information about a referral set's referees","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"referral_set_id","description":"Referral set ID to retrieve information for","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referral_set_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"referrer","description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referrer","defaultValue":""},{"name":"referee","description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referee","defaultValue":""},{"name":"aggregation_epochs","description":"Epochs to aggregate party volume and rewards over. If omitted, 30 epochs will be used.","label":"optional","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":true,"oneofdecl":"_aggregation_epochs","defaultValue":""}]},{"name":"ListReferralSetRefereesResponse","longName":"ListReferralSetRefereesResponse","fullName":"datanode.api.v2.ListReferralSetRefereesResponse","description":"Response containing information about a referral set's referees","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"referral_set_referees","description":"Page of referral set referee data and corresponding page information.","label":"","type":"ReferralSetRefereeConnection","longType":"ReferralSetRefereeConnection","fullType":"datanode.api.v2.ReferralSetRefereeConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListReferralSetsRequest","longName":"ListReferralSetsRequest","fullName":"datanode.api.v2.ListReferralSetsRequest","description":"Request to retrieve information about a referral set or sets","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"referral_set_id","description":"Referral set ID to retrieve information for","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referral_set_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"referrer","description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referrer","defaultValue":""},{"name":"referee","description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_referee","defaultValue":""}]},{"name":"ListReferralSetsResponse","longName":"ListReferralSetsResponse","fullName":"datanode.api.v2.ListReferralSetsResponse","description":"Response containing information about a referral set or sets","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"referral_sets","description":"Page of referral set data and corresponding page information.","label":"","type":"ReferralSetConnection","longType":"ReferralSetConnection","fullType":"datanode.api.v2.ReferralSetConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListRewardSummariesRequest","longName":"ListRewardSummariesRequest","fullName":"datanode.api.v2.ListRewardSummariesRequest","description":"Request to get reward details for a party","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict the reward summary to rewards paid to the given parties.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"asset_id","description":"Restrict the reward summary to rewards paid in the given assets.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListRewardSummariesResponse","longName":"ListRewardSummariesResponse","fullName":"datanode.api.v2.ListRewardSummariesResponse","description":"Response from listing reward details in for a single party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"summaries","description":"Page of rewards details data and corresponding page information.","label":"repeated","type":"RewardSummary","longType":"vega.RewardSummary","fullType":"vega.RewardSummary","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListRewardsRequest","longName":"ListRewardsRequest","fullName":"datanode.api.v2.ListRewardsRequest","description":"Request to get reward details for a party","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict rewards data to those that were received by the given party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset_id","description":"Restrict rewards data to those that were paid with the given asset ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"pagination","description":"Pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"from_epoch","description":"Restrict rewards data to those that were paid after and including the given epoch ID.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_from_epoch","defaultValue":""},{"name":"to_epoch","description":"Restrict rewards data to those that were paid up to and including the given epoch ID.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_to_epoch","defaultValue":""},{"name":"team_id","description":"Filter for rewards paid if the party is a member of the given team","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_id","defaultValue":""},{"name":"game_id","description":"Filter for rewards paid if the party participated in the given game","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_game_id","defaultValue":""}]},{"name":"ListRewardsResponse","longName":"ListRewardsResponse","fullName":"datanode.api.v2.ListRewardsResponse","description":"Response for listing reward details for a single party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"rewards","description":"Page of rewards data and corresponding page information.","label":"","type":"RewardsConnection","longType":"RewardsConnection","fullType":"datanode.api.v2.RewardsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListStopOrdersRequest","longName":"ListStopOrdersRequest","fullName":"datanode.api.v2.ListStopOrdersRequest","description":"Request that is sent when executing a query for a list of stop orders.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pagination","description":"Optional pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"filter","description":"Order filter contains all filtering conditions and values that are applied to the orders listing.","label":"optional","type":"StopOrderFilter","longType":"StopOrderFilter","fullType":"datanode.api.v2.StopOrderFilter","ismap":false,"isoneof":true,"oneofdecl":"_filter","defaultValue":""}]},{"name":"ListStopOrdersResponse","longName":"ListStopOrdersResponse","fullName":"datanode.api.v2.ListStopOrdersResponse","description":"Response that is received from the query to list stop orders.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"orders","description":"Page of stop orders data and corresponding page information.","label":"","type":"StopOrderConnection","longType":"StopOrderConnection","fullType":"datanode.api.v2.StopOrderConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListSuccessorMarketsRequest","longName":"ListSuccessorMarketsRequest","fullName":"datanode.api.v2.ListSuccessorMarketsRequest","description":"Request for listing successor markets.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID that is a member of the succession line. This can be the original market\nor any subsequent child market that succeeded it.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"include_full_history","description":"Flag to indicate whether or not to include the full succession line, or only list\nthe children of the given market ID. If true, the full succession line is included.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination control.","label":"","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListSuccessorMarketsResponse","longName":"ListSuccessorMarketsResponse","fullName":"datanode.api.v2.ListSuccessorMarketsResponse","description":"Response from a list successor markets request.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"successor_markets","description":"List of markets in the succession line.","label":"","type":"SuccessorMarketConnection","longType":"SuccessorMarketConnection","fullType":"datanode.api.v2.SuccessorMarketConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTeamMembersStatisticsRequest","longName":"ListTeamMembersStatisticsRequest","fullName":"datanode.api.v2.ListTeamMembersStatisticsRequest","description":"Request to list all team members' statistics.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"team_id","description":"Restrict team statistics to those with the given team ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Restrict team members' statistics to those with the given party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"aggregation_epochs","description":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_aggregation_epochs","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListTeamMembersStatisticsResponse","longName":"ListTeamMembersStatisticsResponse","fullName":"datanode.api.v2.ListTeamMembersStatisticsResponse","description":"Response for the list team members' statistics request containing the statistics.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"statistics","description":"Page of team members' statistics data and corresponding page information.","label":"","type":"TeamMembersStatisticsConnection","longType":"TeamMembersStatisticsConnection","fullType":"datanode.api.v2.TeamMembersStatisticsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTeamRefereeHistoryRequest","longName":"ListTeamRefereeHistoryRequest","fullName":"datanode.api.v2.ListTeamRefereeHistoryRequest","description":"Request that is sent when listing the referee history for a given team.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"referee","description":"Party ID to list referee history for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListTeamRefereeHistoryResponse","longName":"ListTeamRefereeHistoryResponse","fullName":"datanode.api.v2.ListTeamRefereeHistoryResponse","description":"Response that is sent when listing the referee history for a given team.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team_referee_history","description":"Page of team referee history data and corresponding page information.","label":"","type":"TeamRefereeHistoryConnection","longType":"TeamRefereeHistoryConnection","fullType":"datanode.api.v2.TeamRefereeHistoryConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTeamRefereesRequest","longName":"ListTeamRefereesRequest","fullName":"datanode.api.v2.ListTeamRefereesRequest","description":"Request that is sent when listing the referees for a given team.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"team_id","description":"Team ID to list referees for.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListTeamRefereesResponse","longName":"ListTeamRefereesResponse","fullName":"datanode.api.v2.ListTeamRefereesResponse","description":"Response that is sent when listing the referees for a given team.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team_referees","description":"Page of team referee data and corresponding page information.","label":"","type":"TeamRefereeConnection","longType":"TeamRefereeConnection","fullType":"datanode.api.v2.TeamRefereeConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTeamsRequest","longName":"ListTeamsRequest","fullName":"datanode.api.v2.ListTeamsRequest","description":"Request to list all teams","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"team_id","description":"Restrict teams to those with the given team ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_id","defaultValue":""},{"name":"party_id","description":"Restrict teams to those where the given party is a referrer or a referee.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListTeamsResponse","longName":"ListTeamsResponse","fullName":"datanode.api.v2.ListTeamsResponse","description":"Response for the list teams request containing the team information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"teams","description":"Page of team data and corresponding page information.","label":"","type":"TeamConnection","longType":"TeamConnection","fullType":"datanode.api.v2.TeamConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTeamsStatisticsRequest","longName":"ListTeamsStatisticsRequest","fullName":"datanode.api.v2.ListTeamsStatisticsRequest","description":"Request to list all teams' statistics.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"team_id","description":"Restrict team statistics to those with the given team ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_id","defaultValue":""},{"name":"aggregation_epochs","description":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_aggregation_epochs","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListTeamsStatisticsResponse","longName":"ListTeamsStatisticsResponse","fullName":"datanode.api.v2.ListTeamsStatisticsResponse","description":"Response for the list teams' statistics request containing the statistics.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"statistics","description":"Page of teams' statistics data and corresponding page information.","label":"","type":"TeamsStatisticsConnection","longType":"TeamsStatisticsConnection","fullType":"datanode.api.v2.TeamsStatisticsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTradesRequest","longName":"ListTradesRequest","fullName":"datanode.api.v2.ListTradesRequest","description":"Request to list trades","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_ids","description":"Restrict trades to those that occurred on the given markets.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_ids","description":"Restrict trades to those that were caused by the given orders.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_ids","description":"Restrict trades to those that were caused by orders placed by the given parties.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"date_range","description":"Restrict trades to those made during the given date range. If not set, all trades will be returned.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""}]},{"name":"ListTradesResponse","longName":"ListTradesResponse","fullName":"datanode.api.v2.ListTradesResponse","description":"Response from listing trades","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"trades","description":"Page of trades data and corresponding page information.","label":"","type":"TradeConnection","longType":"TradeConnection","fullType":"datanode.api.v2.TradeConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListTransfersRequest","longName":"ListTransfersRequest","fullName":"datanode.api.v2.ListTransfersRequest","description":"Request that is sent to list transfers","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pubkey","description":"Restrict transfer to those where the given public key is a sender or receiver.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_pubkey","defaultValue":""},{"name":"direction","description":"Restrict transfers to those in the given direction from the supplied public key.\nWhen is_reward is true, and pubkey is set, then direction MUST be TRANSFER_DIRECTION_DIRECTION_FROM.","label":"","type":"TransferDirection","longType":"TransferDirection","fullType":"datanode.api.v2.TransferDirection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"is_reward","description":"Restrict transfers to those related to reward transfers.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_is_reward","defaultValue":""},{"name":"from_epoch","description":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_from_epoch","defaultValue":""},{"name":"to_epoch","description":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_to_epoch","defaultValue":""},{"name":"status","description":"Status to filter on.","label":"optional","type":"Status","longType":"vega.events.v1.Transfer.Status","fullType":"vega.events.v1.Transfer.Status","ismap":false,"isoneof":true,"oneofdecl":"_status","defaultValue":""},{"name":"scope","description":"Dispatch strategy's scope to filter for.","label":"optional","type":"Scope","longType":"ListTransfersRequest.Scope","fullType":"datanode.api.v2.ListTransfersRequest.Scope","ismap":false,"isoneof":true,"oneofdecl":"_scope","defaultValue":""}]},{"name":"ListTransfersResponse","longName":"ListTransfersResponse","fullName":"datanode.api.v2.ListTransfersResponse","description":"Response that is received when listing transfers","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transfers","description":"Page of transfers data and corresponding page information.","label":"","type":"TransferConnection","longType":"TransferConnection","fullType":"datanode.api.v2.TransferConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListVotesRequest","longName":"ListVotesRequest","fullName":"datanode.api.v2.ListVotesRequest","description":"Request that is used to list governance votes","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party for which the votes are requested.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"proposal_id","description":"Proposal ID to list votes for.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_proposal_id","defaultValue":""},{"name":"pagination","description":"Optional pagination control.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""}]},{"name":"ListVotesResponse","longName":"ListVotesResponse","fullName":"datanode.api.v2.ListVotesResponse","description":"Response that is received when listing Votes","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"votes","description":"Page of votes data received and corresponding page information.","label":"","type":"VoteConnection","longType":"VoteConnection","fullType":"datanode.api.v2.VoteConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListWithdrawalsRequest","longName":"ListWithdrawalsRequest","fullName":"datanode.api.v2.ListWithdrawalsRequest","description":"List all withdrawals for a given party","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict withdrawals to those made by this party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pagination","description":"Pagination controls.","label":"optional","type":"Pagination","longType":"Pagination","fullType":"datanode.api.v2.Pagination","ismap":false,"isoneof":true,"oneofdecl":"_pagination","defaultValue":""},{"name":"date_range","description":"Date range of the requested data, if provided.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""}]},{"name":"ListWithdrawalsResponse","longName":"ListWithdrawalsResponse","fullName":"datanode.api.v2.ListWithdrawalsResponse","description":"Response from listing withdrawals data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"withdrawals","description":"Page of withdrawals data and corresponding page information.","label":"","type":"WithdrawalsConnection","longType":"WithdrawalsConnection","fullType":"datanode.api.v2.WithdrawalsConnection","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarginConnection","longName":"MarginConnection","fullName":"datanode.api.v2.MarginConnection","description":"Page of margins data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of margins data and their corresponding cursors.","label":"repeated","type":"MarginEdge","longType":"MarginEdge","fullType":"datanode.api.v2.MarginEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarginEdge","longName":"MarginEdge","fullName":"datanode.api.v2.MarginEdge","description":"Margin data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Margin levels data that satisfy a list margin levels request.","label":"","type":"MarginLevels","longType":"vega.MarginLevels","fullType":"vega.MarginLevels","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarginEstimate","longName":"MarginEstimate","fullName":"datanode.api.v2.MarginEstimate","description":"Margin level estimate for both worst and best case possible.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"worst_case","description":"Margin level estimate assuming slippage cap is applied.","label":"","type":"MarginLevels","longType":"vega.MarginLevels","fullType":"vega.MarginLevels","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"best_case","description":"Margin level estimate assuming no slippage.","label":"","type":"MarginLevels","longType":"vega.MarginLevels","fullType":"vega.MarginLevels","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketConnection","longName":"MarketConnection","fullName":"datanode.api.v2.MarketConnection","description":"Page of markets and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of markets and their corresponding cursors.","label":"repeated","type":"MarketEdge","longType":"MarketEdge","fullType":"datanode.api.v2.MarketEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketDataConnection","longName":"MarketDataConnection","fullName":"datanode.api.v2.MarketDataConnection","description":"Page of market data items and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of market data items and their corresponding cursors.","label":"repeated","type":"MarketDataEdge","longType":"MarketDataEdge","fullType":"datanode.api.v2.MarketDataEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketDataEdge","longName":"MarketDataEdge","fullName":"datanode.api.v2.MarketDataEdge","description":"Market data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data generated by a market when open.","label":"","type":"MarketData","longType":"vega.MarketData","fullType":"vega.MarketData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"MarketEdge","longName":"MarketEdge","fullName":"datanode.api.v2.MarketEdge","description":"Market information with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Information about the market.","label":"","type":"Market","longType":"vega.Market","fullType":"vega.Market","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NetworkParameterConnection","longName":"NetworkParameterConnection","fullName":"datanode.api.v2.NetworkParameterConnection","description":"Page of network parameters and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of network parameters data and their corresponding cursors.","label":"repeated","type":"NetworkParameterEdge","longType":"NetworkParameterEdge","fullType":"datanode.api.v2.NetworkParameterEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NetworkParameterEdge","longName":"NetworkParameterEdge","fullName":"datanode.api.v2.NetworkParameterEdge","description":"Network parameter with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Name and associated value of a network parameter.","label":"","type":"NetworkParameter","longType":"vega.NetworkParameter","fullType":"vega.NetworkParameter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeBasic","longName":"NodeBasic","fullName":"datanode.api.v2.NodeBasic","description":"Represents a basic node without any epoch specific details like delegations, staking, rewards etc.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique ID identifying the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pub_key","description":"Node operator's public key.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tm_pub_key","description":"Tendermint public key of the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ethereum_address","description":"Ethereum public key of the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"info_url","description":"URL that provides more information about the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"location","description":"Country code for the location of the node.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Node status.","label":"","type":"NodeStatus","longType":"vega.NodeStatus","fullType":"vega.NodeStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Node name.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"avatar_url","description":"Avatar URL.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeEdge","longName":"NodeEdge","fullName":"datanode.api.v2.NodeEdge","description":"Node data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data specific to a single node on the Vega network.","label":"","type":"Node","longType":"vega.Node","fullType":"vega.Node","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeSignatureEdge","longName":"NodeSignatureEdge","fullName":"datanode.api.v2.NodeSignatureEdge","description":"Nodes signature edge with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Node signature data.","label":"","type":"NodeSignature","longType":"vega.commands.v1.NodeSignature","fullType":"vega.commands.v1.NodeSignature","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodeSignaturesConnection","longName":"NodeSignaturesConnection","fullName":"datanode.api.v2.NodeSignaturesConnection","description":"Page of node signatures and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of node signatures and their corresponding cursors.","label":"repeated","type":"NodeSignatureEdge","longType":"NodeSignatureEdge","fullType":"datanode.api.v2.NodeSignatureEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"NodesConnection","longName":"NodesConnection","fullName":"datanode.api.v2.NodesConnection","description":"Page of node data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of node data and their corresponding cursors.","label":"repeated","type":"NodeEdge","longType":"NodeEdge","fullType":"datanode.api.v2.NodeEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveAccountsRequest","longName":"ObserveAccountsRequest","fullName":"datanode.api.v2.ObserveAccountsRequest","description":"Request that is sent when getting a subscription to a stream of accounts.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_id","description":"Market ID to filter accounts by. If empty, no markets will be filtered.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID to filter accounts by. If empty, no parties will be filtered.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"Asset ID to filter accounts by. If empty, no assets will be filtered.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Account type to subscribe to, required field.","label":"","type":"AccountType","longType":"vega.AccountType","fullType":"vega.AccountType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveAccountsResponse","longName":"ObserveAccountsResponse","fullName":"datanode.api.v2.ObserveAccountsResponse","description":"Response that is received when subscribing to a stream of accounts.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"snapshot","description":"'Initial image' snapshot containing current account balances.","label":"","type":"AccountSnapshotPage","longType":"AccountSnapshotPage","fullType":"datanode.api.v2.AccountSnapshotPage","ismap":false,"isoneof":true,"oneofdecl":"response","defaultValue":""},{"name":"updates","description":"List of account updates in the last block.","label":"","type":"AccountUpdates","longType":"AccountUpdates","fullType":"datanode.api.v2.AccountUpdates","ismap":false,"isoneof":true,"oneofdecl":"response","defaultValue":""}]},{"name":"ObserveCandleDataRequest","longName":"ObserveCandleDataRequest","fullName":"datanode.api.v2.ObserveCandleDataRequest","description":"Request that is used to subscribe to a stream of candles","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"candle_id","description":"Unique ID for the candle.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveCandleDataResponse","longName":"ObserveCandleDataResponse","fullName":"datanode.api.v2.ObserveCandleDataResponse","description":"Response that is received when subscribing to a stream of candles","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"candle","description":"Candle data.","label":"","type":"Candle","longType":"Candle","fullType":"datanode.api.v2.Candle","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveDelegationsRequest","longName":"ObserveDelegationsRequest","fullName":"datanode.api.v2.ObserveDelegationsRequest","description":"Request to subscribe to all event related to delegations, with the given filters","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Party ID to get delegations for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"node_id","description":"Node ID to get delegations for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_node_id","defaultValue":""}]},{"name":"ObserveDelegationsResponse","longName":"ObserveDelegationsResponse","fullName":"datanode.api.v2.ObserveDelegationsResponse","description":"Response with all events related to delegations, with the given filters","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"delegation","description":"How much a party is delegating to a node and when.","label":"","type":"Delegation","longType":"vega.Delegation","fullType":"vega.Delegation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveEventBusRequest","longName":"ObserveEventBusRequest","fullName":"datanode.api.v2.ObserveEventBusRequest","description":"Request to subscribe to a stream of one or more event types from the Vega event bus","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"type","description":"One or more types of event, required field.","label":"repeated","type":"BusEventType","longType":"vega.events.v1.BusEventType","fullType":"vega.events.v1.BusEventType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID to filter for, optional field. If empty, no markets will be excluded from the stream.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID to filter for, optional field. If empty, no parties will be excluded from the stream.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"batch_size","description":"Batch size,\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveEventBusResponse","longName":"ObserveEventBusResponse","fullName":"datanode.api.v2.ObserveEventBusResponse","description":"Response to a subscribed stream of events from the Vega event bus","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"events","description":"List of events that occurred on the Vega event bus.","label":"repeated","type":"BusEvent","longType":"vega.events.v1.BusEvent","fullType":"vega.events.v1.BusEvent","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveGovernanceRequest","longName":"ObserveGovernanceRequest","fullName":"datanode.api.v2.ObserveGovernanceRequest","description":"Request for governance subscription","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict proposal updates to those proposed by the given party ID.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""}]},{"name":"ObserveGovernanceResponse","longName":"ObserveGovernanceResponse","fullName":"datanode.api.v2.ObserveGovernanceResponse","description":"Response from governance subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"data","description":"Governance data, i.e. proposal and votes for and against.","label":"","type":"GovernanceData","longType":"vega.GovernanceData","fullType":"vega.GovernanceData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveLedgerMovementsRequest","longName":"ObserveLedgerMovementsRequest","fullName":"datanode.api.v2.ObserveLedgerMovementsRequest","description":"Request to subscribe to ledger movements","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"ObserveLedgerMovementsResponse","longName":"ObserveLedgerMovementsResponse","fullName":"datanode.api.v2.ObserveLedgerMovementsResponse","description":"Response from ledger movements subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"ledger_movement","description":"Ledger movements data with list of ledger entries and and post-transfer balances.","label":"","type":"LedgerMovement","longType":"vega.LedgerMovement","fullType":"vega.LedgerMovement","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveLiquidityProvisionsRequest","longName":"ObserveLiquidityProvisionsRequest","fullName":"datanode.api.v2.ObserveLiquidityProvisionsRequest","description":"Request sent to subscribe to liquidity provisions","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Target market to observe for liquidity provisions.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""},{"name":"party_id","description":"Target party to observe for submitted liquidity provisions.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""}]},{"name":"ObserveLiquidityProvisionsResponse","longName":"ObserveLiquidityProvisionsResponse","fullName":"datanode.api.v2.ObserveLiquidityProvisionsResponse","description":"Response from liquidity provisions subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"liquidity_provisions","description":"","label":"repeated","type":"LiquidityProvision","longType":"vega.LiquidityProvision","fullType":"vega.LiquidityProvision","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveMarginLevelsRequest","longName":"ObserveMarginLevelsRequest","fullName":"datanode.api.v2.ObserveMarginLevelsRequest","description":"Request to subscribe to a stream of MarginLevels data.\nIf a party ID is provided, the stream will contain margin levels for that party only.\nOptionally, the list can be additionally filtered by market","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict margin level updates to those relating to the given party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Restrict margin level updates to those relating to the given market.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""}]},{"name":"ObserveMarginLevelsResponse","longName":"ObserveMarginLevelsResponse","fullName":"datanode.api.v2.ObserveMarginLevelsResponse","description":"Response from subscribing to margin levels data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"margin_levels","description":"Margin levels data that match the subscription request filters.","label":"","type":"MarginLevels","longType":"vega.MarginLevels","fullType":"vega.MarginLevels","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveMarketsDataRequest","longName":"ObserveMarketsDataRequest","fullName":"datanode.api.v2.ObserveMarketsDataRequest","description":"Request that is sent for market data subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_ids","description":"Restrict updates to market data by the given market IDs.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveMarketsDataResponse","longName":"ObserveMarketsDataResponse","fullName":"datanode.api.v2.ObserveMarketsDataResponse","description":"Response that is received for market data subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_data","description":"List of market data.","label":"repeated","type":"MarketData","longType":"vega.MarketData","fullType":"vega.MarketData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveMarketsDepthRequest","longName":"ObserveMarketsDepthRequest","fullName":"datanode.api.v2.ObserveMarketsDepthRequest","description":"Request that is sent to get market depth subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_ids","description":"Restrict market depth data by the given market IDs.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveMarketsDepthResponse","longName":"ObserveMarketsDepthResponse","fullName":"datanode.api.v2.ObserveMarketsDepthResponse","description":"Response that is received for MarketDepth subscription.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_depth","description":"List of market depth data.","label":"repeated","type":"MarketDepth","longType":"vega.MarketDepth","fullType":"vega.MarketDepth","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveMarketsDepthUpdatesRequest","longName":"ObserveMarketsDepthUpdatesRequest","fullName":"datanode.api.v2.ObserveMarketsDepthUpdatesRequest","description":"Request that is sent for market depth update subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_ids","description":"Restrict updates to market depth by the given market IDs.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveMarketsDepthUpdatesResponse","longName":"ObserveMarketsDepthUpdatesResponse","fullName":"datanode.api.v2.ObserveMarketsDepthUpdatesResponse","description":"Response that is received for market depth update subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"update","description":"List of market depth update data.","label":"repeated","type":"MarketDepthUpdate","longType":"vega.MarketDepthUpdate","fullType":"vega.MarketDepthUpdate","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveOrdersRequest","longName":"ObserveOrdersRequest","fullName":"datanode.api.v2.ObserveOrdersRequest","description":"Request to subscribe to a stream of orders.\n\nRequest fields market ID and party ID are both optional filters:\nIf omitted all orders, for all parties on all markets will be returned on the stream\nBoth filters can be combined","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_ids","description":"Restrict orders to those placed on the given markets.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_ids","description":"Restrict orders to those placed on the by the given parties.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"exclude_liquidity","description":"Whether liquidity orders should be excluded from the stream. If not set, liquidity orders will be included.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_exclude_liquidity","defaultValue":""}]},{"name":"ObserveOrdersResponse","longName":"ObserveOrdersResponse","fullName":"datanode.api.v2.ObserveOrdersResponse","description":"Response that is received from an orders subscription.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"snapshot","description":"An 'initial image' snapshot containing current live orders.","label":"","type":"OrderSnapshotPage","longType":"OrderSnapshotPage","fullType":"datanode.api.v2.OrderSnapshotPage","ismap":false,"isoneof":true,"oneofdecl":"response","defaultValue":""},{"name":"updates","description":"List of order updates in the last block.","label":"","type":"OrderUpdates","longType":"OrderUpdates","fullType":"datanode.api.v2.OrderUpdates","ismap":false,"isoneof":true,"oneofdecl":"response","defaultValue":""}]},{"name":"ObservePositionsRequest","longName":"ObservePositionsRequest","fullName":"datanode.api.v2.ObservePositionsRequest","description":"Request that is used to subscribe to a stream of positions","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict position updates to those related to the given parties.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"market_id","description":"Restrict position updates to those related to the given markets.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_market_id","defaultValue":""}]},{"name":"ObservePositionsResponse","longName":"ObservePositionsResponse","fullName":"datanode.api.v2.ObservePositionsResponse","description":"Response received from a positions subscription request","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"snapshot","description":"An 'initial image' snapshot containing current positions.","label":"","type":"PositionSnapshotPage","longType":"PositionSnapshotPage","fullType":"datanode.api.v2.PositionSnapshotPage","ismap":false,"isoneof":true,"oneofdecl":"response","defaultValue":""},{"name":"updates","description":"List of position updates in the last block.","label":"","type":"PositionUpdates","longType":"PositionUpdates","fullType":"datanode.api.v2.PositionUpdates","ismap":false,"isoneof":true,"oneofdecl":"response","defaultValue":""}]},{"name":"ObserveRewardsRequest","longName":"ObserveRewardsRequest","fullName":"datanode.api.v2.ObserveRewardsRequest","description":"Request sent for subscribing to rewards","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"asset_id","description":"Asset ID to get rewards data for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_asset_id","defaultValue":""},{"name":"party_id","description":"Party ID to get rewards data for, if provided.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""}]},{"name":"ObserveRewardsResponse","longName":"ObserveRewardsResponse","fullName":"datanode.api.v2.ObserveRewardsResponse","description":"Response that is received from subscribing to rewards data","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"reward","description":"Rewards data received.","label":"","type":"Reward","longType":"vega.Reward","fullType":"vega.Reward","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveTradesRequest","longName":"ObserveTradesRequest","fullName":"datanode.api.v2.ObserveTradesRequest","description":"Request to subscribe to a stream of trades\n\nRequest fields market ID and party ID are both optional filters:\nIf omitted all trades, for all parties on all markets will be returned on the stream\nIf market ID is given, trades from that market will be returned on the stream\nIf party ID is given, trades from that party will be returned on the stream\nBoth filters can be combined.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market_ids","description":"Restrict the trades streamed to those made on the given markets.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_ids","description":"Restrict the trades streamed to those made by the given parties.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveTradesResponse","longName":"ObserveTradesResponse","fullName":"datanode.api.v2.ObserveTradesResponse","description":"Stream of trades","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"trades","description":"List of 0 or more trades.","label":"repeated","type":"Trade","longType":"vega.Trade","fullType":"vega.Trade","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveTransactionResultsRequest","longName":"ObserveTransactionResultsRequest","fullName":"datanode.api.v2.ObserveTransactionResultsRequest","description":"Request to subscribe to a stream of users' transaction results\n\nRequest fields party ID, hash and status are all optional filters:\nIf omitted all transaction results, for all parties with all hashes and states will be returned on the stream\nIf party ID is given, transaction results from that party will be returned on the stream\nIf hash is given, transaction result with that hash will be returned on the stream\nIf status is given, transaction result with that status (true/false - success failure) will be returned on the stream\nAll filters can be combined.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_ids","description":"Restrict the transaction results streamed to those made by the given parties.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"hashes","description":"Restrict the transaction results streamed to those with given hashes.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Restrict the transaction results streamed to those with given status true/false (success/failure).","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_status","defaultValue":""}]},{"name":"ObserveTransactionResultsResponse","longName":"ObserveTransactionResultsResponse","fullName":"datanode.api.v2.ObserveTransactionResultsResponse","description":"Stream of transaction results","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transaction_results","description":"List of 0 or more transaction results.","label":"repeated","type":"TransactionResult","longType":"vega.events.v1.TransactionResult","fullType":"vega.events.v1.TransactionResult","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveVotesRequest","longName":"ObserveVotesRequest","fullName":"datanode.api.v2.ObserveVotesRequest","description":"Request that is sent to subscribe to votes","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"party_id","description":"Restrict vote updates to those made by the given party.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_party_id","defaultValue":""},{"name":"proposal_id","description":"Restrict vote updates to those made on the given proposal.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_proposal_id","defaultValue":""}]},{"name":"ObserveVotesResponse","longName":"ObserveVotesResponse","fullName":"datanode.api.v2.ObserveVotesResponse","description":"Response that is received from votes subscription","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"vote","description":"Data associated with governance votes that are published to the stream.","label":"","type":"Vote","longType":"vega.Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OracleDataConnection","longName":"OracleDataConnection","fullName":"datanode.api.v2.OracleDataConnection","description":"Page of oracle data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of oracle data and their corresponding cursors.","label":"repeated","type":"OracleDataEdge","longType":"OracleDataEdge","fullType":"datanode.api.v2.OracleDataEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OracleDataEdge","longName":"OracleDataEdge","fullName":"datanode.api.v2.OracleDataEdge","description":"Oracle data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data that was received from an external oracle.","label":"","type":"OracleData","longType":"vega.OracleData","fullType":"vega.OracleData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OracleSpecEdge","longName":"OracleSpecEdge","fullName":"datanode.api.v2.OracleSpecEdge","description":"Oracle specs data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"External spec data that satisfies the list request.","label":"","type":"OracleSpec","longType":"vega.OracleSpec","fullType":"vega.OracleSpec","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OracleSpecsConnection","longName":"OracleSpecsConnection","fullName":"datanode.api.v2.OracleSpecsConnection","description":"Page of oracle specs and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of oracle specs data and their corresponding cursors.","label":"repeated","type":"OracleSpecEdge","longType":"OracleSpecEdge","fullType":"datanode.api.v2.OracleSpecEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderConnection","longName":"OrderConnection","fullName":"datanode.api.v2.OrderConnection","description":"Page of orders data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of orders and their corresponding cursors.","label":"repeated","type":"OrderEdge","longType":"OrderEdge","fullType":"datanode.api.v2.OrderEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderEdge","longName":"OrderEdge","fullName":"datanode.api.v2.OrderEdge","description":"Order data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with an order submitted to a Vega node.","label":"","type":"Order","longType":"vega.Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderFilter","longName":"OrderFilter","fullName":"datanode.api.v2.OrderFilter","description":"Order filter that contains all filtering conditions and values that are applied to the orders listing","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"statuses","description":"Restrict orders to those with the given statuses.","label":"repeated","type":"Status","longType":"vega.Order.Status","fullType":"vega.Order.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"types","description":"Restrict orders to those with the given types.","label":"repeated","type":"Type","longType":"vega.Order.Type","fullType":"vega.Order.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"time_in_forces","description":"Restrict orders to those with the given Time In Force.","label":"repeated","type":"TimeInForce","longType":"vega.Order.TimeInForce","fullType":"vega.Order.TimeInForce","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"exclude_liquidity","description":"Indicator if liquidity provisions should be included or not in the list.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_ids","description":"Restrict orders to those placed by the given party IDs.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_ids","description":"Restrict orders to those placed on the given market IDs.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reference","description":"Restrict orders to those with the given reference.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_reference","defaultValue":""},{"name":"date_range","description":"Restrict orders to those placed during the given date range. If not set, all orders will be returned.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""},{"name":"live_only","description":"Restrict orders to those that are live. If not set, it is treated as being false.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_live_only","defaultValue":""}]},{"name":"OrderInfo","longName":"OrderInfo","fullName":"datanode.api.v2.OrderInfo","description":"Basic description of an order.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"side","description":"Side for the order, e.g. buy or sell.","label":"","type":"Side","longType":"vega.Side","fullType":"vega.Side","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"price","description":"Price for the order. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"remaining","description":"Size remaining.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"is_market_order","description":"Boolean that indicates if it is a market order.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderSnapshotPage","longName":"OrderSnapshotPage","fullName":"datanode.api.v2.OrderSnapshotPage","description":"'Initial image' of live orders, may be sent over multiple response messages.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"orders","description":"List of order data parts.","label":"repeated","type":"Order","longType":"vega.Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_page","description":"Indicator if the last page is reached or not.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"OrderUpdates","longName":"OrderUpdates","fullName":"datanode.api.v2.OrderUpdates","description":"List of order updates in the last block.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"orders","description":"List of orders data.","label":"repeated","type":"Order","longType":"vega.Order","fullType":"vega.Order","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PageInfo","longName":"PageInfo","fullName":"datanode.api.v2.PageInfo","description":"Page information for cursor based pagination","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"has_next_page","description":"Indicator if there is a next page.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"has_previous_page","description":"Indicator if there is a previous page.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"start_cursor","description":"Start cursor.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_cursor","description":"End cursor.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Pagination","longName":"Pagination","fullName":"datanode.api.v2.Pagination","description":"All data returned from the API is ordered in a well-defined manner.\nThe specific columns and the order in which the sorting is performed\ndepend on the API endpoint being called. However, the primary sorting\ncolumn is usually the timestamp of the block in which the data was last updated.\n\nTo prevent excessively large response messages and to avoid overloading\ndatabase resources, the API employs a cursor-based pagination mechanism.\n\nThis Pagination message can be optionally provided as part of the request to specify:\n- The starting point within the total result set for beginning the page\n- The size of the returned page\n- The ordering of the data within that page\n\nIf no Pagination message is provided, the API will return the first page of\ndata using the default page size. The default page size is 1000.\n\nTo retrieve subsequent pages, the caller must examine the PageInfo structure\nreturned in the response to find a cursor string that uniquely identifies the\nlast row of that page. This cursor should then be passed in the 'after' field\nof the Pagination message in a subsequent request.\n\nFor paging backward, take the cursor for the first row of the page from PageInfo\nand pass it in the 'before' field of the Pagination message.\n\nPagination message that uses both first/after and last/before is considered invalid.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"first","description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","label":"optional","type":"int32","longType":"int32","fullType":"int32","ismap":false,"isoneof":true,"oneofdecl":"_first","defaultValue":""},{"name":"after","description":"If paging forwards, the cursor string for the last row of the previous page.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_after","defaultValue":""},{"name":"last","description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","label":"optional","type":"int32","longType":"int32","fullType":"int32","ismap":false,"isoneof":true,"oneofdecl":"_last","defaultValue":""},{"name":"before","description":"If paging forwards, the cursor string for the first row of the previous page.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_before","defaultValue":""},{"name":"newest_first","description":"Whether to order the results with the newest records first. If not set, the default value is true.","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_newest_first","defaultValue":""}]},{"name":"PaidLiquidityFeesConnection","longName":"PaidLiquidityFeesConnection","fullName":"datanode.api.v2.PaidLiquidityFeesConnection","description":"Paid liquidity fees data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of paid liquidity fees data.","label":"repeated","type":"PaidLiquidityFeesEdge","longType":"PaidLiquidityFeesEdge","fullType":"datanode.api.v2.PaidLiquidityFeesEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PaidLiquidityFeesEdge","longName":"PaidLiquidityFeesEdge","fullName":"datanode.api.v2.PaidLiquidityFeesEdge","description":"Paid liquidity fees data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Paid liquidity fees data returned by the API.","label":"","type":"PaidLiquidityFeesStats","longType":"vega.events.v1.PaidLiquidityFeesStats","fullType":"vega.events.v1.PaidLiquidityFeesStats","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further data.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartiesProfilesConnection","longName":"PartiesProfilesConnection","fullName":"datanode.api.v2.PartiesProfilesConnection","description":"Page of profile data per party and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of profiles and their corresponding cursors.","label":"repeated","type":"PartyProfileEdge","longType":"PartyProfileEdge","fullType":"datanode.api.v2.PartyProfileEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyConnection","longName":"PartyConnection","fullName":"datanode.api.v2.PartyConnection","description":"Page of parties data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of parties and their corresponding cursors.","label":"repeated","type":"PartyEdge","longType":"PartyEdge","fullType":"datanode.api.v2.PartyEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyEdge","longName":"PartyEdge","fullName":"datanode.api.v2.PartyEdge","description":"Party data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with a party.","label":"","type":"Party","longType":"vega.Party","fullType":"vega.Party","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyMarginMode","longName":"PartyMarginMode","fullName":"datanode.api.v2.PartyMarginMode","description":"Margin mode selected for the given party and market.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"market_id","description":"Unique ID of the market.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Unique ID of the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_mode","description":"Selected margin mode.","label":"","type":"MarginMode","longType":"vega.MarginMode","fullType":"vega.MarginMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"margin_factor","description":"Margin factor for the market. Isolated mode only.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_margin_factor","defaultValue":""},{"name":"min_theoretical_margin_factor","description":"Minimum theoretical margin factor for the market. Isolated mode only.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_min_theoretical_margin_factor","defaultValue":""},{"name":"max_theoretical_leverage","description":"Maximum theoretical leverage for the market. Isolated mode only.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_max_theoretical_leverage","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the update happened.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyMarginModeEdge","longName":"PartyMarginModeEdge","fullName":"datanode.api.v2.PartyMarginModeEdge","description":"Party margin mode information and corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Party margin mode data.","label":"","type":"PartyMarginMode","longType":"PartyMarginMode","fullType":"datanode.api.v2.PartyMarginMode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyMarginModesConnection","longName":"PartyMarginModesConnection","fullName":"datanode.api.v2.PartyMarginModesConnection","description":"Page of party margin modes data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of party margin modes data and their corresponding cursors.","label":"repeated","type":"PartyMarginModeEdge","longType":"PartyMarginModeEdge","fullType":"datanode.api.v2.PartyMarginModeEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyProfileEdge","longName":"PartyProfileEdge","fullName":"datanode.api.v2.PartyProfileEdge","description":"Party's profile data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with a party's profile.","label":"","type":"PartyProfile","longType":"vega.PartyProfile","fullType":"vega.PartyProfile","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PingRequest","longName":"PingRequest","fullName":"datanode.api.v2.PingRequest","description":"Request to ping the data node","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"PingResponse","longName":"PingResponse","fullName":"datanode.api.v2.PingResponse","description":"Ping response from the data node","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"PositionConnection","longName":"PositionConnection","fullName":"datanode.api.v2.PositionConnection","description":"Page of positions and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of positions data and their corresponding cursors.","label":"repeated","type":"PositionEdge","longType":"PositionEdge","fullType":"datanode.api.v2.PositionEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PositionEdge","longName":"PositionEdge","fullName":"datanode.api.v2.PositionEdge","description":"Position data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Position data for a party on a market.","label":"","type":"Position","longType":"vega.Position","fullType":"vega.Position","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PositionSnapshotPage","longName":"PositionSnapshotPage","fullName":"datanode.api.v2.PositionSnapshotPage","description":"'Initial image' of current positions, may be sent over multiple response messages","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"positions","description":"List of positions data.","label":"repeated","type":"Position","longType":"vega.Position","fullType":"vega.Position","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"last_page","description":"Indicator if last page is reached or not.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PositionUpdates","longName":"PositionUpdates","fullName":"datanode.api.v2.PositionUpdates","description":"List of position updates in the last block","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"positions","description":"List of positions data.","label":"repeated","type":"Position","longType":"vega.Position","fullType":"vega.Position","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PositionsFilter","longName":"PositionsFilter","fullName":"datanode.api.v2.PositionsFilter","description":"Filter to apply to the ListAllPositionsRequest","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_ids","description":"Restrict positions to those related to the given parties.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_ids","description":"Restrict positions to those on the given markets.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProtocolUpgradeProposalConnection","longName":"ProtocolUpgradeProposalConnection","fullName":"datanode.api.v2.ProtocolUpgradeProposalConnection","description":"Page of protocol upgrade proposals and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of protocol upgrade proposals data and their corresponding cursors.","label":"repeated","type":"ProtocolUpgradeProposalEdge","longType":"ProtocolUpgradeProposalEdge","fullType":"datanode.api.v2.ProtocolUpgradeProposalEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ProtocolUpgradeProposalEdge","longName":"ProtocolUpgradeProposalEdge","fullName":"datanode.api.v2.ProtocolUpgradeProposalEdge","description":"Protocol upgrade proposal data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Protocol upgrade proposal data.","label":"","type":"ProtocolUpgradeEvent","longType":"vega.events.v1.ProtocolUpgradeEvent","fullType":"vega.events.v1.ProtocolUpgradeEvent","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"QuantumRewardsPerEpoch","longName":"QuantumRewardsPerEpoch","fullName":"datanode.api.v2.QuantumRewardsPerEpoch","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"epoch","description":"Epoch for which this information is valid.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_quantum_rewards","description":"Total rewards accumulated over the epoch period, expressed in quantum value.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralProgram","longName":"ReferralProgram","fullName":"datanode.api.v2.ReferralProgram","description":"Referral program details.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"version","description":"Incremental version of the program. It is incremented after each program\nupdate.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"id","description":"Unique ID generated from the proposal that created this program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"benefit_tiers","description":"Defined tiers in increasing order. First element will give Tier 1, second\nelement will give Tier 2, and so on.","label":"repeated","type":"BenefitTier","longType":"vega.BenefitTier","fullType":"vega.BenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_of_program_timestamp","description":"Timestamp in Unix nanoseconds, after which when the current epoch ends, the\nprogram will end and benefits will be disabled.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"window_length","description":"Number of epochs over which the referral set's running volume is evaluated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"staking_tiers","description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","label":"repeated","type":"StakingTier","longType":"vega.StakingTier","fullType":"vega.StakingTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ended_at","description":"Timestamp, in Unix nanoseconds, when the program ended.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_ended_at","defaultValue":""}]},{"name":"ReferralSet","longName":"ReferralSet","fullName":"datanode.api.v2.ReferralSet","description":"Data relating to a referral set.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"id","description":"Unique ID of the created set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referrer","description":"Party that created the set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_at","description":"Timestamp, in Unix nanoseconds, when the set was created.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"updated_at","description":"Timestamp, in Unix nanoseconds, when the set was updated.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetConnection","longName":"ReferralSetConnection","fullName":"datanode.api.v2.ReferralSetConnection","description":"Page of referral set data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of referral set data and their corresponding cursors.","label":"repeated","type":"ReferralSetEdge","longType":"ReferralSetEdge","fullType":"datanode.api.v2.ReferralSetEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetEdge","longName":"ReferralSetEdge","fullName":"datanode.api.v2.ReferralSetEdge","description":"Referral set data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Referral set data.","label":"","type":"ReferralSet","longType":"ReferralSet","fullType":"datanode.api.v2.ReferralSet","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetReferee","longName":"ReferralSetReferee","fullName":"datanode.api.v2.ReferralSetReferee","description":"Data relating to referees that have joined a referral set","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"referral_set_id","description":"Unique ID of the referral set the referee joined.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referee","description":"Party that joined the set.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"joined_at","description":"Timestamp, in Unix nanoseconds, when the party joined the set.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"at_epoch","description":"Epoch at which the party joined the set.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_referee_notional_taker_volume","description":"Total notional volume of the referee's aggressive trades over the aggregation period.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_referee_generated_rewards","description":"Total rewards generated by the referee over the aggregation period.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetRefereeConnection","longName":"ReferralSetRefereeConnection","fullName":"datanode.api.v2.ReferralSetRefereeConnection","description":"Page of data about the referral set's referees and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of referral set referee data and their corresponding cursors.","label":"repeated","type":"ReferralSetRefereeEdge","longType":"ReferralSetRefereeEdge","fullType":"datanode.api.v2.ReferralSetRefereeEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetRefereeEdge","longName":"ReferralSetRefereeEdge","fullName":"datanode.api.v2.ReferralSetRefereeEdge","description":"Data about the Referral set's referees with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Referral set referee data.","label":"","type":"ReferralSetReferee","longType":"ReferralSetReferee","fullType":"datanode.api.v2.ReferralSetReferee","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetStats","longName":"ReferralSetStats","fullName":"datanode.api.v2.ReferralSetStats","description":"Referral set statistics for a given epoch for a party.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"at_epoch","description":"Epoch at which the set's statistics were updated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referral_set_running_notional_taker_volume","description":"Running volume for the set based on the window length of the current\nreferral program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"discount_factor","description":"Discount factor applied to the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_factor","description":"Reward factor applied to the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_notional_taker_volume","description":"Current referee notional taker volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rewards_multiplier","description":"Multiplier applied to the referral reward factor when calculating referral rewards due to the referrer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rewards_factor_multiplier","description":"Proportion of the referee's taker fees to be rewarded to the referrer.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"was_eligible","description":"Indicates if the referral set was eligible to be part of the referral program.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referrer_taker_volume","description":"Referrer's taker volume","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetStatsConnection","longName":"ReferralSetStatsConnection","fullName":"datanode.api.v2.ReferralSetStatsConnection","description":"Page of volume discount stats data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of volume discount statistics data and their corresponding cursors.","label":"repeated","type":"ReferralSetStatsEdge","longType":"ReferralSetStatsEdge","fullType":"datanode.api.v2.ReferralSetStatsEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ReferralSetStatsEdge","longName":"ReferralSetStatsEdge","fullName":"datanode.api.v2.ReferralSetStatsEdge","description":"Referral set stats data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Referral set stats data.","label":"","type":"ReferralSetStats","longType":"ReferralSetStats","fullType":"datanode.api.v2.ReferralSetStats","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RewardEdge","longName":"RewardEdge","fullName":"datanode.api.v2.RewardEdge","description":"Rewards data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Details for a single reward payment.","label":"","type":"Reward","longType":"vega.Reward","fullType":"vega.Reward","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"RewardSummaryFilter","longName":"RewardSummaryFilter","fullName":"datanode.api.v2.RewardSummaryFilter","description":"Filter to restrict the results returned by the ListEpochRewardSummaries","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"asset_ids","description":"Restrict reward summaries to those connected to the assets in the given list.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_ids","description":"Restrict reward summaries to those connected to the markets in the given list.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"from_epoch","description":"Restrict rewards summaries to those that were paid after and including the given epoch ID.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_from_epoch","defaultValue":""},{"name":"to_epoch","description":"Restrict rewards summaries to those that were paid up to and including the given epoch ID.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_to_epoch","defaultValue":""}]},{"name":"RewardsConnection","longName":"RewardsConnection","fullName":"datanode.api.v2.RewardsConnection","description":"Page of rewards data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of rewards data items and their corresponding cursors.","label":"repeated","type":"RewardEdge","longType":"RewardEdge","fullType":"datanode.api.v2.RewardEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StakeLinkingEdge","longName":"StakeLinkingEdge","fullName":"datanode.api.v2.StakeLinkingEdge","description":"Stake linking data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Stake linking represent the intent from a party to deposit.","label":"","type":"StakeLinking","longType":"vega.events.v1.StakeLinking","fullType":"vega.events.v1.StakeLinking","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StakesConnection","longName":"StakesConnection","fullName":"datanode.api.v2.StakesConnection","description":"Page of stake data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of stake data and their corresponding cursors.","label":"repeated","type":"StakeLinkingEdge","longType":"StakeLinkingEdge","fullType":"datanode.api.v2.StakeLinkingEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StopOrderConnection","longName":"StopOrderConnection","fullName":"datanode.api.v2.StopOrderConnection","description":"Page of stop orders data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of stop orders and their corresponding cursors.","label":"repeated","type":"StopOrderEdge","longType":"StopOrderEdge","fullType":"datanode.api.v2.StopOrderEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StopOrderEdge","longName":"StopOrderEdge","fullName":"datanode.api.v2.StopOrderEdge","description":"Order data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with an order submitted to a Vega node.","label":"","type":"StopOrderEvent","longType":"vega.events.v1.StopOrderEvent","fullType":"vega.events.v1.StopOrderEvent","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StopOrderFilter","longName":"StopOrderFilter","fullName":"datanode.api.v2.StopOrderFilter","description":"Stop order filter\n\nStop order filter that contains all filtering conditions and values that are applied to the stop orders listing.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"statuses","description":"Restrict orders to those with the given statuses.","label":"repeated","type":"Status","longType":"vega.StopOrder.Status","fullType":"vega.StopOrder.Status","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expiry_strategies","description":"Restrict orders to those with the given expiry strategies.","label":"repeated","type":"ExpiryStrategy","longType":"vega.StopOrder.ExpiryStrategy","fullType":"vega.StopOrder.ExpiryStrategy","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"date_range","description":"Restrict orders to those placed during the given date range. If not set, all orders will be returned.","label":"optional","type":"DateRange","longType":"DateRange","fullType":"datanode.api.v2.DateRange","ismap":false,"isoneof":true,"oneofdecl":"_date_range","defaultValue":""},{"name":"party_ids","description":"Restrict orders to those placed by the given party IDs.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_ids","description":"Restrict orders to those placed on the given market IDs.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"live_only","description":"Live stop orders only","label":"optional","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":true,"oneofdecl":"_live_only","defaultValue":""}]},{"name":"SuccessorMarket","longName":"SuccessorMarket","fullName":"datanode.api.v2.SuccessorMarket","description":"Successor market information includes the market that is a member of the succession line\nand any governance data that is associated with proposals for child markets\nwhether enacted or not.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market","description":"The market that is a member of the succession line.","label":"","type":"Market","longType":"vega.Market","fullType":"vega.Market","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proposals","description":"All proposals for child markets that have the market as a parent.","label":"repeated","type":"GovernanceData","longType":"vega.GovernanceData","fullType":"vega.GovernanceData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SuccessorMarketConnection","longName":"SuccessorMarketConnection","fullName":"datanode.api.v2.SuccessorMarketConnection","description":"Page of successor market records and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of successor markets and their cursors.","label":"repeated","type":"SuccessorMarketEdge","longType":"SuccessorMarketEdge","fullType":"datanode.api.v2.SuccessorMarketEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information for pagination control.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SuccessorMarketEdge","longName":"SuccessorMarketEdge","fullName":"datanode.api.v2.SuccessorMarketEdge","description":"Successor market record with the corresponding cursor for paginated results","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Successor market record.","label":"","type":"SuccessorMarket","longType":"SuccessorMarket","fullType":"datanode.api.v2.SuccessorMarket","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor identifying the record for pagination control.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Team","longName":"Team","fullName":"datanode.api.v2.Team","description":"Team record containing the team information.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"team_id","description":"ID of the created team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referrer","description":"Party ID that created the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"name","description":"Name of the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"team_url","description":"Link to the team's homepage.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_team_url","defaultValue":""},{"name":"avatar_url","description":"Link to an image of the team's avatar.","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_avatar_url","defaultValue":""},{"name":"created_at","description":"Timestamp in Unix nanoseconds when the team was created.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"closed","description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"created_at_epoch","description":"Epoch at which the team was created.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"allow_list","description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamConnection","longName":"TeamConnection","fullName":"datanode.api.v2.TeamConnection","description":"Page of team data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of team data and their corresponding cursors.","label":"repeated","type":"TeamEdge","longType":"TeamEdge","fullType":"datanode.api.v2.TeamEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamEdge","longName":"TeamEdge","fullName":"datanode.api.v2.TeamEdge","description":"Team data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Team data.","label":"","type":"Team","longType":"Team","fullType":"datanode.api.v2.Team","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamGameEntities","longName":"TeamGameEntities","fullName":"datanode.api.v2.TeamGameEntities","description":"List of teams that are participating in a game","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team","description":"List of teams, the participant members of a team, and the metrics associated with each participant.","label":"repeated","type":"TeamGameEntity","longType":"TeamGameEntity","fullType":"datanode.api.v2.TeamGameEntity","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamGameEntity","longName":"TeamGameEntity","fullName":"datanode.api.v2.TeamGameEntity","description":"Data relating to a team participating in a game.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team","description":"Team participation breakdown","label":"","type":"TeamGameParticipation","longType":"TeamGameParticipation","fullType":"datanode.api.v2.TeamGameParticipation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"rank","description":"Rank of the team in the game","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"volume","description":"Volume traded by the team","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_metric","description":"Reward metric applied to the team","label":"","type":"DispatchMetric","longType":"vega.DispatchMetric","fullType":"vega.DispatchMetric","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"reward_earned","description":"Reward earned by the team","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_rewards_earned","description":"Total rewards earned by the individual for the team","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamGameParticipation","longName":"TeamGameParticipation","fullName":"datanode.api.v2.TeamGameParticipation","description":"Breakdown of a team's participation in a game.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team_id","description":"ID of the team participating","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"members_participating","description":"Individual team member metrics for their participation in the game","label":"repeated","type":"IndividualGameEntity","longType":"IndividualGameEntity","fullType":"datanode.api.v2.IndividualGameEntity","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamMemberStatistics","longName":"TeamMemberStatistics","fullName":"datanode.api.v2.TeamMemberStatistics","description":"Team member's statistics record containing the team member's information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID the statistics are related to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_quantum_volume","description":"Total of volume accumulated over the requested epoch period, expressed in\nquantum value.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_quantum_rewards","description":"Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum_rewards","description":"List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.","label":"repeated","type":"QuantumRewardsPerEpoch","longType":"QuantumRewardsPerEpoch","fullType":"datanode.api.v2.QuantumRewardsPerEpoch","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_games_played","description":"Total number of games played.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"games_played","description":"List of games played over the requested epoch period.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamMemberStatisticsEdge","longName":"TeamMemberStatisticsEdge","fullName":"datanode.api.v2.TeamMemberStatisticsEdge","description":"Team member data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Team member's statistics data.","label":"","type":"TeamMemberStatistics","longType":"TeamMemberStatistics","fullType":"datanode.api.v2.TeamMemberStatistics","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamMembersStatisticsConnection","longName":"TeamMembersStatisticsConnection","fullName":"datanode.api.v2.TeamMembersStatisticsConnection","description":"Page of team members' statistics and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of team member data and their corresponding cursors.","label":"repeated","type":"TeamMemberStatisticsEdge","longType":"TeamMemberStatisticsEdge","fullType":"datanode.api.v2.TeamMemberStatisticsEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamReferee","longName":"TeamReferee","fullName":"datanode.api.v2.TeamReferee","description":"A team's referee info","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team_id","description":"ID of the team the referee joined.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"referee","description":"Party that joined the team.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"joined_at","description":"Timestamp in Unix nanoseconds when the party joined the team.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"joined_at_epoch","description":"Epoch at which the party joined the team.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamRefereeConnection","longName":"TeamRefereeConnection","fullName":"datanode.api.v2.TeamRefereeConnection","description":"Page of team referee data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of team referee data and their corresponding cursors.","label":"repeated","type":"TeamRefereeEdge","longType":"TeamRefereeEdge","fullType":"datanode.api.v2.TeamRefereeEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamRefereeEdge","longName":"TeamRefereeEdge","fullName":"datanode.api.v2.TeamRefereeEdge","description":"Team referee data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Team referee data.","label":"","type":"TeamReferee","longType":"TeamReferee","fullType":"datanode.api.v2.TeamReferee","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamRefereeHistory","longName":"TeamRefereeHistory","fullName":"datanode.api.v2.TeamRefereeHistory","description":"A referee's team change information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team_id","description":"ID of the team the referee joined.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"joined_at","description":"Timestamp in Unix nanoseconds when the party joined the team.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"joined_at_epoch","description":"Epoch at which the party joined the team.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamRefereeHistoryConnection","longName":"TeamRefereeHistoryConnection","fullName":"datanode.api.v2.TeamRefereeHistoryConnection","description":"Page of history data about a referee's team membership and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of team referee history data and their corresponding cursors.","label":"repeated","type":"TeamRefereeHistoryEdge","longType":"TeamRefereeHistoryEdge","fullType":"datanode.api.v2.TeamRefereeHistoryEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamRefereeHistoryEdge","longName":"TeamRefereeHistoryEdge","fullName":"datanode.api.v2.TeamRefereeHistoryEdge","description":"Team referee history data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Team referee data.","label":"","type":"TeamRefereeHistory","longType":"TeamRefereeHistory","fullType":"datanode.api.v2.TeamRefereeHistory","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamStatistics","longName":"TeamStatistics","fullName":"datanode.api.v2.TeamStatistics","description":"Team's statistics record containing the team information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"team_id","description":"Team ID the statistics are related to.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_quantum_volume","description":"Total of volume accumulated over the requested epoch period, expressed in\nquantum value.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_quantum_rewards","description":"Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"quantum_rewards","description":"List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.","label":"repeated","type":"QuantumRewardsPerEpoch","longType":"QuantumRewardsPerEpoch","fullType":"datanode.api.v2.QuantumRewardsPerEpoch","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_games_played","description":"Total of games played.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"games_played","description":"List of games played over the requested epoch period.","label":"repeated","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamStatisticsEdge","longName":"TeamStatisticsEdge","fullName":"datanode.api.v2.TeamStatisticsEdge","description":"Team data item with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Team's statistics data.","label":"","type":"TeamStatistics","longType":"TeamStatistics","fullType":"datanode.api.v2.TeamStatistics","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TeamsStatisticsConnection","longName":"TeamsStatisticsConnection","fullName":"datanode.api.v2.TeamsStatisticsConnection","description":"Page of teams' statistics and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of team data and their corresponding cursors.","label":"repeated","type":"TeamStatisticsEdge","longType":"TeamStatisticsEdge","fullType":"datanode.api.v2.TeamStatisticsEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TradeConnection","longName":"TradeConnection","fullName":"datanode.api.v2.TradeConnection","description":"Page of trades and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of trades and their corresponding cursors.","label":"repeated","type":"TradeEdge","longType":"TradeEdge","fullType":"datanode.api.v2.TradeEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TradeEdge","longName":"TradeEdge","fullName":"datanode.api.v2.TradeEdge","description":"Trade data item with the corresponding cursor..","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with a trade that has been executed.","label":"","type":"Trade","longType":"vega.Trade","fullType":"vega.Trade","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TransferConnection","longName":"TransferConnection","fullName":"datanode.api.v2.TransferConnection","description":"Page of transfers data items and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of transfers data and their corresponding cursors.","label":"repeated","type":"TransferEdge","longType":"TransferEdge","fullType":"datanode.api.v2.TransferEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TransferEdge","longName":"TransferEdge","fullName":"datanode.api.v2.TransferEdge","description":"Transfers data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data relating to a transfer that has been made.","label":"","type":"TransferNode","longType":"TransferNode","fullType":"datanode.api.v2.TransferNode","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"TransferNode","longName":"TransferNode","fullName":"datanode.api.v2.TransferNode","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"transfer","description":"Data relating to a transfer that has been made.","label":"","type":"Transfer","longType":"vega.events.v1.Transfer","fullType":"vega.events.v1.Transfer","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"fees","description":"Fees paid for this transfer.","label":"repeated","type":"TransferFees","longType":"vega.events.v1.TransferFees","fullType":"vega.events.v1.TransferFees","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountProgram","longName":"VolumeDiscountProgram","fullName":"datanode.api.v2.VolumeDiscountProgram","description":"Volume discount program details.","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"version","description":"Incremental version of the program. It is incremented after each program\nupdate.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"id","description":"Unique ID generated from the proposal that created this program.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"benefit_tiers","description":"Defined benefit tiers ordered by increasing discounts. Determines the level of\nbenefit a party can expect based on performance criteria.","label":"repeated","type":"VolumeBenefitTier","longType":"vega.VolumeBenefitTier","fullType":"vega.VolumeBenefitTier","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"end_of_program_timestamp","description":"Timestamp in Unix nanoseconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"window_length","description":"Number of epochs over which a volume discount statistics' running volume is evaluated.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"ended_at","description":"Timestamp in Unix nanoseconds, at which the program ended.","label":"optional","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":true,"oneofdecl":"_ended_at","defaultValue":""}]},{"name":"VolumeDiscountStats","longName":"VolumeDiscountStats","fullName":"datanode.api.v2.VolumeDiscountStats","description":"Volume discount statistics for a given epoch for all parties.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"at_epoch","description":"Epoch at which the statistics apply.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID for which the statistics apply.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"discount_factor","description":"Discount factor applied given the party's running volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"running_volume","description":"The party's running volume.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountStatsConnection","longName":"VolumeDiscountStatsConnection","fullName":"datanode.api.v2.VolumeDiscountStatsConnection","description":"Page of volume discount stats data and corresponding page information.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of volume discount statistics data and their corresponding cursors.","label":"repeated","type":"VolumeDiscountStatsEdge","longType":"VolumeDiscountStatsEdge","fullType":"datanode.api.v2.VolumeDiscountStatsEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VolumeDiscountStatsEdge","longName":"VolumeDiscountStatsEdge","fullName":"datanode.api.v2.VolumeDiscountStatsEdge","description":"Volume discount stats data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Volume discount stats data.","label":"","type":"VolumeDiscountStats","longType":"VolumeDiscountStats","fullType":"datanode.api.v2.VolumeDiscountStats","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VoteConnection","longName":"VoteConnection","fullName":"datanode.api.v2.VoteConnection","description":"Page of vote data items and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of vote data and their corresponding cursors.","label":"repeated","type":"VoteEdge","longType":"VoteEdge","fullType":"datanode.api.v2.VoteEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VoteEdge","longName":"VoteEdge","fullName":"datanode.api.v2.VoteEdge","description":"Votes data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with a governance vote.","label":"","type":"Vote","longType":"vega.Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"WithdrawalEdge","longName":"WithdrawalEdge","fullName":"datanode.api.v2.WithdrawalEdge","description":"Withdrawals data with the corresponding cursor.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"node","description":"Data associated with a single withdrawal made from the Vega network.","label":"","type":"Withdrawal","longType":"vega.Withdrawal","fullType":"vega.Withdrawal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"cursor","description":"Cursor that can be used to fetch further pages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"WithdrawalsConnection","longName":"WithdrawalsConnection","fullName":"datanode.api.v2.WithdrawalsConnection","description":"Page of withdrawals data and corresponding page information","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"edges","description":"Page of withdrawals data and their corresponding cursors.","label":"repeated","type":"WithdrawalEdge","longType":"WithdrawalEdge","fullType":"datanode.api.v2.WithdrawalEdge","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"page_info","description":"Page information that is used for fetching further pages.","label":"","type":"PageInfo","longType":"PageInfo","fullType":"datanode.api.v2.PageInfo","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[{"name":"TradingDataService","longName":"TradingDataService","fullName":"datanode.api.v2.TradingDataService","description":"","methods":[{"name":"ListAccounts","description":"List accounts\n\nGet a list of accounts matching the supplied filter, including their current balances.\nIf a given account has never had a balance, it will be absent from the list.","requestType":"ListAccountsRequest","requestLongType":"ListAccountsRequest","requestFullType":"datanode.api.v2.ListAccountsRequest","requestStreaming":false,"responseType":"ListAccountsResponse","responseLongType":"ListAccountsResponse","responseFullType":"datanode.api.v2.ListAccountsResponse","responseStreaming":false},{"name":"ObserveAccounts","description":"Accounts subscription\n\nSubscribe to a stream of accounts","requestType":"ObserveAccountsRequest","requestLongType":"ObserveAccountsRequest","requestFullType":"datanode.api.v2.ObserveAccountsRequest","requestStreaming":false,"responseType":"ObserveAccountsResponse","responseLongType":"ObserveAccountsResponse","responseFullType":"datanode.api.v2.ObserveAccountsResponse","responseStreaming":true},{"name":"Info","description":"Data node information\n\nGet information about the data node.\nResponse contains a semver formatted version of the data node and the commit hash, from which the data node was built","requestType":"InfoRequest","requestLongType":"InfoRequest","requestFullType":"datanode.api.v2.InfoRequest","requestStreaming":false,"responseType":"InfoResponse","responseLongType":"InfoResponse","responseFullType":"datanode.api.v2.InfoResponse","responseStreaming":false},{"name":"GetOrder","description":"Get order\n\nGet an order by its ID. An order's ID will be the SHA3-256 hash of the signature that the order was submitted with","requestType":"GetOrderRequest","requestLongType":"GetOrderRequest","requestFullType":"datanode.api.v2.GetOrderRequest","requestStreaming":false,"responseType":"GetOrderResponse","responseLongType":"GetOrderResponse","responseFullType":"datanode.api.v2.GetOrderResponse","responseStreaming":false},{"name":"ListOrders","description":"List orders\n\nGet a list of orders that match the given filters","requestType":"ListOrdersRequest","requestLongType":"ListOrdersRequest","requestFullType":"datanode.api.v2.ListOrdersRequest","requestStreaming":false,"responseType":"ListOrdersResponse","responseLongType":"ListOrdersResponse","responseFullType":"datanode.api.v2.ListOrdersResponse","responseStreaming":false},{"name":"ListOrderVersions","description":"List order versions\n\nGet a list of all versions of an order in the order history","requestType":"ListOrderVersionsRequest","requestLongType":"ListOrderVersionsRequest","requestFullType":"datanode.api.v2.ListOrderVersionsRequest","requestStreaming":false,"responseType":"ListOrderVersionsResponse","responseLongType":"ListOrderVersionsResponse","responseFullType":"datanode.api.v2.ListOrderVersionsResponse","responseStreaming":false},{"name":"ObserveOrders","description":"Observe orders\n\nSubscribe to a stream of orders","requestType":"ObserveOrdersRequest","requestLongType":"ObserveOrdersRequest","requestFullType":"datanode.api.v2.ObserveOrdersRequest","requestStreaming":false,"responseType":"ObserveOrdersResponse","responseLongType":"ObserveOrdersResponse","responseFullType":"datanode.api.v2.ObserveOrdersResponse","responseStreaming":true},{"name":"GetStopOrder","description":"Get stop order\n\nGet a stop order by its ID. A stop order's ID will be the SHA3-256 hash of the signature that the order was submitted with.\nA stop order's ID is likely to be different from the ID of the order that will be submitted when the stop is triggered.","requestType":"GetStopOrderRequest","requestLongType":"GetStopOrderRequest","requestFullType":"datanode.api.v2.GetStopOrderRequest","requestStreaming":false,"responseType":"GetStopOrderResponse","responseLongType":"GetStopOrderResponse","responseFullType":"datanode.api.v2.GetStopOrderResponse","responseStreaming":false},{"name":"ListStopOrders","description":"List stop orders\n\nGet a list of stop orders that match the given filters","requestType":"ListStopOrdersRequest","requestLongType":"ListStopOrdersRequest","requestFullType":"datanode.api.v2.ListStopOrdersRequest","requestStreaming":false,"responseType":"ListStopOrdersResponse","responseLongType":"ListStopOrdersResponse","responseFullType":"datanode.api.v2.ListStopOrdersResponse","responseStreaming":false},{"name":"ListPositions","description":"Deprecated: List positions\n\nGet a list of positions by party's public key using cursor based pagination\nDeprecated: use ListAllPositions instead","requestType":"ListPositionsRequest","requestLongType":"ListPositionsRequest","requestFullType":"datanode.api.v2.ListPositionsRequest","requestStreaming":false,"responseType":"ListPositionsResponse","responseLongType":"ListPositionsResponse","responseFullType":"datanode.api.v2.ListPositionsResponse","responseStreaming":false,"options":{"deprecated":true}},{"name":"ListAllPositions","description":"List positions\n\nGet a list of all of a party's positions","requestType":"ListAllPositionsRequest","requestLongType":"ListAllPositionsRequest","requestFullType":"datanode.api.v2.ListAllPositionsRequest","requestStreaming":false,"responseType":"ListAllPositionsResponse","responseLongType":"ListAllPositionsResponse","responseFullType":"datanode.api.v2.ListAllPositionsResponse","responseStreaming":false},{"name":"ObservePositions","description":"Observe positions\n\nSubscribe to a stream of position updates. The first messages sent through the stream will contain\ninformation about current positions, followed by updates to those positions.","requestType":"ObservePositionsRequest","requestLongType":"ObservePositionsRequest","requestFullType":"datanode.api.v2.ObservePositionsRequest","requestStreaming":false,"responseType":"ObservePositionsResponse","responseLongType":"ObservePositionsResponse","responseFullType":"datanode.api.v2.ObservePositionsResponse","responseStreaming":true},{"name":"ListLedgerEntries","description":"List ledger entries\n\nGet a list of ledger entries within the given date range. The date range is restricted to a maximum of 5 days.\nThis query requests and sums the number of ledger entries from a given subset of accounts, specified via the 'filter' argument.\nIt returns a time series - implemented as a list of AggregateLedgerEntry structs - with a row for every time\nthe summed ledger entries of the set of specified accounts changes.\nEach account filter must contain no more than one party ID.\nAt least one party ID must be specified in the from or to account filter.\n\nEntries can be filtered by:\n - the sending account (market ID, asset ID, account type)\n - receiving account (market ID, asset ID, account type)\n - sending AND receiving account\n - transfer type either in addition to the above filters or as a standalone option\nNote: The date range is restricted to any 5 days.\n If no start or end date is provided, only ledger entries from the last 5 days will be returned.\n If a start and end date are provided, but the end date is more than 5 days after the start date, only data up to 5 days after the start date will be returned.\n If a start date is provided but no end date, the end date will be set to 5 days after the start date.\n If no start date is provided, but the end date is, the start date will be set to 5 days before the end date.","requestType":"ListLedgerEntriesRequest","requestLongType":"ListLedgerEntriesRequest","requestFullType":"datanode.api.v2.ListLedgerEntriesRequest","requestStreaming":false,"responseType":"ListLedgerEntriesResponse","responseLongType":"ListLedgerEntriesResponse","responseFullType":"datanode.api.v2.ListLedgerEntriesResponse","responseStreaming":false},{"name":"ExportLedgerEntries","description":"Export ledger entries\n\nExport ledger entries records ledger entries to a csv file.\nMay or may not contain a date range - if no date range is provided, list all records for all times.\n\nLedger entries can be exported by:\n - export ledger entries for a single party for a given asset within a given time range\n - export ledger entries for a single party for a given asset for all times\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","requestType":"ExportLedgerEntriesRequest","requestLongType":"ExportLedgerEntriesRequest","requestFullType":"datanode.api.v2.ExportLedgerEntriesRequest","requestStreaming":false,"responseType":"HttpBody","responseLongType":".google.api.HttpBody","responseFullType":"google.api.HttpBody","responseStreaming":true},{"name":"ListBalanceChanges","description":"List balance changes\n\nGet a list of the changes in account balances over a period of time.","requestType":"ListBalanceChangesRequest","requestLongType":"ListBalanceChangesRequest","requestFullType":"datanode.api.v2.ListBalanceChangesRequest","requestStreaming":false,"responseType":"ListBalanceChangesResponse","responseLongType":"ListBalanceChangesResponse","responseFullType":"datanode.api.v2.ListBalanceChangesResponse","responseStreaming":false},{"name":"GetLatestMarketData","description":"Get latest market data\n\nGet the latest market data for a given market","requestType":"GetLatestMarketDataRequest","requestLongType":"GetLatestMarketDataRequest","requestFullType":"datanode.api.v2.GetLatestMarketDataRequest","requestStreaming":false,"responseType":"GetLatestMarketDataResponse","responseLongType":"GetLatestMarketDataResponse","responseFullType":"datanode.api.v2.GetLatestMarketDataResponse","responseStreaming":false},{"name":"ListLatestMarketData","description":"List latest market data\n\nGet a list of the latest market data for every market","requestType":"ListLatestMarketDataRequest","requestLongType":"ListLatestMarketDataRequest","requestFullType":"datanode.api.v2.ListLatestMarketDataRequest","requestStreaming":false,"responseType":"ListLatestMarketDataResponse","responseLongType":"ListLatestMarketDataResponse","responseFullType":"datanode.api.v2.ListLatestMarketDataResponse","responseStreaming":false},{"name":"GetLatestMarketDepth","description":"Get latest market depth\n\nGet the latest market depth for a given market","requestType":"GetLatestMarketDepthRequest","requestLongType":"GetLatestMarketDepthRequest","requestFullType":"datanode.api.v2.GetLatestMarketDepthRequest","requestStreaming":false,"responseType":"GetLatestMarketDepthResponse","responseLongType":"GetLatestMarketDepthResponse","responseFullType":"datanode.api.v2.GetLatestMarketDepthResponse","responseStreaming":false},{"name":"ObserveMarketsDepth","description":"Observe markets depth\n\nSubscribe to a stream of the latest market depth for a given market","requestType":"ObserveMarketsDepthRequest","requestLongType":"ObserveMarketsDepthRequest","requestFullType":"datanode.api.v2.ObserveMarketsDepthRequest","requestStreaming":false,"responseType":"ObserveMarketsDepthResponse","responseLongType":"ObserveMarketsDepthResponse","responseFullType":"datanode.api.v2.ObserveMarketsDepthResponse","responseStreaming":true},{"name":"ObserveMarketsDepthUpdates","description":"Observe markets depth updates\n\nSubscribe to a stream of updates on market depth for a given market","requestType":"ObserveMarketsDepthUpdatesRequest","requestLongType":"ObserveMarketsDepthUpdatesRequest","requestFullType":"datanode.api.v2.ObserveMarketsDepthUpdatesRequest","requestStreaming":false,"responseType":"ObserveMarketsDepthUpdatesResponse","responseLongType":"ObserveMarketsDepthUpdatesResponse","responseFullType":"datanode.api.v2.ObserveMarketsDepthUpdatesResponse","responseStreaming":true},{"name":"ObserveMarketsData","description":"Observe markets data\n\nSubscribe to a stream of data about a given market","requestType":"ObserveMarketsDataRequest","requestLongType":"ObserveMarketsDataRequest","requestFullType":"datanode.api.v2.ObserveMarketsDataRequest","requestStreaming":false,"responseType":"ObserveMarketsDataResponse","responseLongType":"ObserveMarketsDataResponse","responseFullType":"datanode.api.v2.ObserveMarketsDataResponse","responseStreaming":true},{"name":"GetMarketDataHistoryByID","description":"Get market data history\n\nGet market data history for a market ID from between a given date range","requestType":"GetMarketDataHistoryByIDRequest","requestLongType":"GetMarketDataHistoryByIDRequest","requestFullType":"datanode.api.v2.GetMarketDataHistoryByIDRequest","requestStreaming":false,"responseType":"GetMarketDataHistoryByIDResponse","responseLongType":"GetMarketDataHistoryByIDResponse","responseFullType":"datanode.api.v2.GetMarketDataHistoryByIDResponse","responseStreaming":false},{"name":"ListTransfers","description":"List transfers\n\nGet a list of transfers between public keys. A valid value for public key can be one of:\n- a party ID\n- \"network\"\n- \"0000000000000000000000000000000000000000000000000000000000000000\", the public key for the global rewards account","requestType":"ListTransfersRequest","requestLongType":"ListTransfersRequest","requestFullType":"datanode.api.v2.ListTransfersRequest","requestStreaming":false,"responseType":"ListTransfersResponse","responseLongType":"ListTransfersResponse","responseFullType":"datanode.api.v2.ListTransfersResponse","responseStreaming":false},{"name":"GetTransfer","description":"Get transfer by ID\n\nGet a specific transfer by ID","requestType":"GetTransferRequest","requestLongType":"GetTransferRequest","requestFullType":"datanode.api.v2.GetTransferRequest","requestStreaming":false,"responseType":"GetTransferResponse","responseLongType":"GetTransferResponse","responseFullType":"datanode.api.v2.GetTransferResponse","responseStreaming":false},{"name":"GetNetworkLimits","description":"Get network limits\n\nGet the network limits relating to asset and market creation","requestType":"GetNetworkLimitsRequest","requestLongType":"GetNetworkLimitsRequest","requestFullType":"datanode.api.v2.GetNetworkLimitsRequest","requestStreaming":false,"responseType":"GetNetworkLimitsResponse","responseLongType":"GetNetworkLimitsResponse","responseFullType":"datanode.api.v2.GetNetworkLimitsResponse","responseStreaming":false},{"name":"ListCandleData","description":"List candle data\n\nGet a list of candle data for a given candle ID. Candle IDs can be obtained by calling list-candle-intervals","requestType":"ListCandleDataRequest","requestLongType":"ListCandleDataRequest","requestFullType":"datanode.api.v2.ListCandleDataRequest","requestStreaming":false,"responseType":"ListCandleDataResponse","responseLongType":"ListCandleDataResponse","responseFullType":"datanode.api.v2.ListCandleDataResponse","responseStreaming":false},{"name":"ObserveCandleData","description":"Observe candle data\n\nSubscribe to a stream of candle updates","requestType":"ObserveCandleDataRequest","requestLongType":"ObserveCandleDataRequest","requestFullType":"datanode.api.v2.ObserveCandleDataRequest","requestStreaming":false,"responseType":"ObserveCandleDataResponse","responseLongType":"ObserveCandleDataResponse","responseFullType":"datanode.api.v2.ObserveCandleDataResponse","responseStreaming":true},{"name":"ListCandleIntervals","description":"List candle intervals\n\nGet a list of all available intervals for a given market along with the corresponding candle ID","requestType":"ListCandleIntervalsRequest","requestLongType":"ListCandleIntervalsRequest","requestFullType":"datanode.api.v2.ListCandleIntervalsRequest","requestStreaming":false,"responseType":"ListCandleIntervalsResponse","responseLongType":"ListCandleIntervalsResponse","responseFullType":"datanode.api.v2.ListCandleIntervalsResponse","responseStreaming":false},{"name":"ListVotes","description":"List votes\n\nGet a list of votes. A party ID or a proposal ID must be provided.","requestType":"ListVotesRequest","requestLongType":"ListVotesRequest","requestFullType":"datanode.api.v2.ListVotesRequest","requestStreaming":false,"responseType":"ListVotesResponse","responseLongType":"ListVotesResponse","responseFullType":"datanode.api.v2.ListVotesResponse","responseStreaming":false},{"name":"ObserveVotes","description":"Observe votes\n\nSubscribe to a stream of votes cast on a given proposal, or by all votes made by a given party","requestType":"ObserveVotesRequest","requestLongType":"ObserveVotesRequest","requestFullType":"datanode.api.v2.ObserveVotesRequest","requestStreaming":false,"responseType":"ObserveVotesResponse","responseLongType":"ObserveVotesResponse","responseFullType":"datanode.api.v2.ObserveVotesResponse","responseStreaming":true},{"name":"ListERC20MultiSigSignerAddedBundles","description":"List ERC20 multi-sig signer added bundles\n\nGet a list of the signature bundles to add a particular validator to the signer list of the multisig contract","requestType":"ListERC20MultiSigSignerAddedBundlesRequest","requestLongType":"ListERC20MultiSigSignerAddedBundlesRequest","requestFullType":"datanode.api.v2.ListERC20MultiSigSignerAddedBundlesRequest","requestStreaming":false,"responseType":"ListERC20MultiSigSignerAddedBundlesResponse","responseLongType":"ListERC20MultiSigSignerAddedBundlesResponse","responseFullType":"datanode.api.v2.ListERC20MultiSigSignerAddedBundlesResponse","responseStreaming":false},{"name":"ListERC20MultiSigSignerRemovedBundles","description":"List ERC20 multi-sig signer removed bundles\n\nGet a list of the signature bundles to remove a particular validator from signer list of the multisig contract","requestType":"ListERC20MultiSigSignerRemovedBundlesRequest","requestLongType":"ListERC20MultiSigSignerRemovedBundlesRequest","requestFullType":"datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesRequest","requestStreaming":false,"responseType":"ListERC20MultiSigSignerRemovedBundlesResponse","responseLongType":"ListERC20MultiSigSignerRemovedBundlesResponse","responseFullType":"datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesResponse","responseStreaming":false},{"name":"GetERC20ListAssetBundle","description":"Get ERC20 list asset bundle\n\nGet the signatures bundle to allowlist an ERC20 token in the collateral bridge","requestType":"GetERC20ListAssetBundleRequest","requestLongType":"GetERC20ListAssetBundleRequest","requestFullType":"datanode.api.v2.GetERC20ListAssetBundleRequest","requestStreaming":false,"responseType":"GetERC20ListAssetBundleResponse","responseLongType":"GetERC20ListAssetBundleResponse","responseFullType":"datanode.api.v2.GetERC20ListAssetBundleResponse","responseStreaming":false},{"name":"GetERC20SetAssetLimitsBundle","description":"Get ERC20 set asset limits bundle\n\nGet the signature bundle to update the token limits. These are `maxLifetimeDeposit` and `withdrawThreshold` for a given ERC20 token that is\nalready allowlisted in the collateral bridge.","requestType":"GetERC20SetAssetLimitsBundleRequest","requestLongType":"GetERC20SetAssetLimitsBundleRequest","requestFullType":"datanode.api.v2.GetERC20SetAssetLimitsBundleRequest","requestStreaming":false,"responseType":"GetERC20SetAssetLimitsBundleResponse","responseLongType":"GetERC20SetAssetLimitsBundleResponse","responseFullType":"datanode.api.v2.GetERC20SetAssetLimitsBundleResponse","responseStreaming":false},{"name":"GetERC20WithdrawalApproval","description":"Get ERC20 withdrawal approval\n\nGet the signature bundle to finalise a withdrawal on Ethereum","requestType":"GetERC20WithdrawalApprovalRequest","requestLongType":"GetERC20WithdrawalApprovalRequest","requestFullType":"datanode.api.v2.GetERC20WithdrawalApprovalRequest","requestStreaming":false,"responseType":"GetERC20WithdrawalApprovalResponse","responseLongType":"GetERC20WithdrawalApprovalResponse","responseFullType":"datanode.api.v2.GetERC20WithdrawalApprovalResponse","responseStreaming":false},{"name":"GetLastTrade","description":"Get last trade\n\nGet the last trade made for a given market.","requestType":"GetLastTradeRequest","requestLongType":"GetLastTradeRequest","requestFullType":"datanode.api.v2.GetLastTradeRequest","requestStreaming":false,"responseType":"GetLastTradeResponse","responseLongType":"GetLastTradeResponse","responseFullType":"datanode.api.v2.GetLastTradeResponse","responseStreaming":false},{"name":"ListTrades","description":"List trades\n\nGet a list of all trades, optionally filtered by party/market/order","requestType":"ListTradesRequest","requestLongType":"ListTradesRequest","requestFullType":"datanode.api.v2.ListTradesRequest","requestStreaming":false,"responseType":"ListTradesResponse","responseLongType":"ListTradesResponse","responseFullType":"datanode.api.v2.ListTradesResponse","responseStreaming":false},{"name":"ObserveTrades","description":"Observe trades\n\nSubscribe to a stream of trades, optionally filtered by party/market","requestType":"ObserveTradesRequest","requestLongType":"ObserveTradesRequest","requestFullType":"datanode.api.v2.ObserveTradesRequest","requestStreaming":false,"responseType":"ObserveTradesResponse","responseLongType":"ObserveTradesResponse","responseFullType":"datanode.api.v2.ObserveTradesResponse","responseStreaming":true},{"name":"GetOracleSpec","description":"Get oracle spec\n\nGet an oracle spec by ID. Oracle spec IDs can be found by querying markets that use them as a data source","requestType":"GetOracleSpecRequest","requestLongType":"GetOracleSpecRequest","requestFullType":"datanode.api.v2.GetOracleSpecRequest","requestStreaming":false,"responseType":"GetOracleSpecResponse","responseLongType":"GetOracleSpecResponse","responseFullType":"datanode.api.v2.GetOracleSpecResponse","responseStreaming":false},{"name":"ListOracleSpecs","description":"List oracle specs\n\nGet a list of all oracles specs that are defined against all markets","requestType":"ListOracleSpecsRequest","requestLongType":"ListOracleSpecsRequest","requestFullType":"datanode.api.v2.ListOracleSpecsRequest","requestStreaming":false,"responseType":"ListOracleSpecsResponse","responseLongType":"ListOracleSpecsResponse","responseFullType":"datanode.api.v2.ListOracleSpecsResponse","responseStreaming":false},{"name":"ListOracleData","description":"List oracle data\n\nGet a list of all oracle data that have been broadcast to any market","requestType":"ListOracleDataRequest","requestLongType":"ListOracleDataRequest","requestFullType":"datanode.api.v2.ListOracleDataRequest","requestStreaming":false,"responseType":"ListOracleDataResponse","responseLongType":"ListOracleDataResponse","responseFullType":"datanode.api.v2.ListOracleDataResponse","responseStreaming":false},{"name":"GetMarket","description":"Get market\n\nGet information about a specific market using its ID. A market's ID will be the same as the ID of the proposal that\ngenerated it","requestType":"GetMarketRequest","requestLongType":"GetMarketRequest","requestFullType":"datanode.api.v2.GetMarketRequest","requestStreaming":false,"responseType":"GetMarketResponse","responseLongType":"GetMarketResponse","responseFullType":"datanode.api.v2.GetMarketResponse","responseStreaming":false},{"name":"ListMarkets","description":"List markets\n\nGet a list of markets","requestType":"ListMarketsRequest","requestLongType":"ListMarketsRequest","requestFullType":"datanode.api.v2.ListMarketsRequest","requestStreaming":false,"responseType":"ListMarketsResponse","responseLongType":"ListMarketsResponse","responseFullType":"datanode.api.v2.ListMarketsResponse","responseStreaming":false},{"name":"ListSuccessorMarkets","description":"List successor markets\n\nGiven a market ID, return the full lineage of markets since inception, or all successor markets since and including\nthe given market ID. The markets will be returned in succession order, i.e. the market at position i will be the parent\nof the market at position i+1.","requestType":"ListSuccessorMarketsRequest","requestLongType":"ListSuccessorMarketsRequest","requestFullType":"datanode.api.v2.ListSuccessorMarketsRequest","requestStreaming":false,"responseType":"ListSuccessorMarketsResponse","responseLongType":"ListSuccessorMarketsResponse","responseFullType":"datanode.api.v2.ListSuccessorMarketsResponse","responseStreaming":false},{"name":"GetParty","description":"Get party\n\nGet a single party","requestType":"GetPartyRequest","requestLongType":"GetPartyRequest","requestFullType":"datanode.api.v2.GetPartyRequest","requestStreaming":false,"responseType":"GetPartyResponse","responseLongType":"GetPartyResponse","responseFullType":"datanode.api.v2.GetPartyResponse","responseStreaming":false},{"name":"ListParties","description":"List parties\n\nGet a list of parties","requestType":"ListPartiesRequest","requestLongType":"ListPartiesRequest","requestFullType":"datanode.api.v2.ListPartiesRequest","requestStreaming":false,"responseType":"ListPartiesResponse","responseLongType":"ListPartiesResponse","responseFullType":"datanode.api.v2.ListPartiesResponse","responseStreaming":false},{"name":"ListPartiesProfiles","description":"List parties' profiles\n\nGet a list of profiles for multiple parties","requestType":"ListPartiesProfilesRequest","requestLongType":"ListPartiesProfilesRequest","requestFullType":"datanode.api.v2.ListPartiesProfilesRequest","requestStreaming":false,"responseType":"ListPartiesProfilesResponse","responseLongType":"ListPartiesProfilesResponse","responseFullType":"datanode.api.v2.ListPartiesProfilesResponse","responseStreaming":false},{"name":"ListMarginLevels","description":"List margin levels\n\nGet a list margin levels that match the provided criteria. If no filter is provided, all margin levels will be returned.","requestType":"ListMarginLevelsRequest","requestLongType":"ListMarginLevelsRequest","requestFullType":"datanode.api.v2.ListMarginLevelsRequest","requestStreaming":false,"responseType":"ListMarginLevelsResponse","responseLongType":"ListMarginLevelsResponse","responseFullType":"datanode.api.v2.ListMarginLevelsResponse","responseStreaming":false},{"name":"ObserveMarginLevels","description":"Observe margin levels\n\nSubscribe to a stream of margin levels updates","requestType":"ObserveMarginLevelsRequest","requestLongType":"ObserveMarginLevelsRequest","requestFullType":"datanode.api.v2.ObserveMarginLevelsRequest","requestStreaming":false,"responseType":"ObserveMarginLevelsResponse","responseLongType":"ObserveMarginLevelsResponse","responseFullType":"datanode.api.v2.ObserveMarginLevelsResponse","responseStreaming":true},{"name":"ListRewards","description":"List rewards\n\nGet a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned.","requestType":"ListRewardsRequest","requestLongType":"ListRewardsRequest","requestFullType":"datanode.api.v2.ListRewardsRequest","requestStreaming":false,"responseType":"ListRewardsResponse","responseLongType":"ListRewardsResponse","responseFullType":"datanode.api.v2.ListRewardsResponse","responseStreaming":false},{"name":"ListRewardSummaries","description":"List reward summaries\n\nGet a list of reward summaries where the reward amount is the total rewards received over all epochs\nper party ID and asset ID.\nRequest parameters are optional party ID and asset ID.\nIf no data is provided, all reward summaries will be returned grouped by party and asset ID.","requestType":"ListRewardSummariesRequest","requestLongType":"ListRewardSummariesRequest","requestFullType":"datanode.api.v2.ListRewardSummariesRequest","requestStreaming":false,"responseType":"ListRewardSummariesResponse","responseLongType":"ListRewardSummariesResponse","responseFullType":"datanode.api.v2.ListRewardSummariesResponse","responseStreaming":false},{"name":"ListEpochRewardSummaries","description":"List epoch reward summaries\n\nGet a list of reward summaries by epoch for a given range of epochs.\nThe result is filtered by list of asset IDs, market IDs and starting and ending epochs, for which to return rewards.\nIf no data is provided, all reward summaries will be returned, grouped by epochs, market IDs, asset IDs and reward type.","requestType":"ListEpochRewardSummariesRequest","requestLongType":"ListEpochRewardSummariesRequest","requestFullType":"datanode.api.v2.ListEpochRewardSummariesRequest","requestStreaming":false,"responseType":"ListEpochRewardSummariesResponse","responseLongType":"ListEpochRewardSummariesResponse","responseFullType":"datanode.api.v2.ListEpochRewardSummariesResponse","responseStreaming":false},{"name":"GetDeposit","description":"Get deposit\n\nGet a deposit by its ID","requestType":"GetDepositRequest","requestLongType":"GetDepositRequest","requestFullType":"datanode.api.v2.GetDepositRequest","requestStreaming":false,"responseType":"GetDepositResponse","responseLongType":"GetDepositResponse","responseFullType":"datanode.api.v2.GetDepositResponse","responseStreaming":false},{"name":"ListDeposits","description":"List deposits\n\nGet a list of deposits for a given party.\nIf a date range is provided, filtering will be based on the last time the deposit\nhas been updated in Vega time.","requestType":"ListDepositsRequest","requestLongType":"ListDepositsRequest","requestFullType":"datanode.api.v2.ListDepositsRequest","requestStreaming":false,"responseType":"ListDepositsResponse","responseLongType":"ListDepositsResponse","responseFullType":"datanode.api.v2.ListDepositsResponse","responseStreaming":false},{"name":"GetWithdrawal","description":"Get withdrawal\n\nGet a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 hash of the signature that the withdrawal was submitted with","requestType":"GetWithdrawalRequest","requestLongType":"GetWithdrawalRequest","requestFullType":"datanode.api.v2.GetWithdrawalRequest","requestStreaming":false,"responseType":"GetWithdrawalResponse","responseLongType":"GetWithdrawalResponse","responseFullType":"datanode.api.v2.GetWithdrawalResponse","responseStreaming":false},{"name":"ListWithdrawals","description":"List withdrawals\n\nGet a list of withdrawals for a given party","requestType":"ListWithdrawalsRequest","requestLongType":"ListWithdrawalsRequest","requestFullType":"datanode.api.v2.ListWithdrawalsRequest","requestStreaming":false,"responseType":"ListWithdrawalsResponse","responseLongType":"ListWithdrawalsResponse","responseFullType":"datanode.api.v2.ListWithdrawalsResponse","responseStreaming":false},{"name":"GetAsset","description":"Get asset\n\nGet a single asset using its ID. Use the assets list query to get an asset's ID","requestType":"GetAssetRequest","requestLongType":"GetAssetRequest","requestFullType":"datanode.api.v2.GetAssetRequest","requestStreaming":false,"responseType":"GetAssetResponse","responseLongType":"GetAssetResponse","responseFullType":"datanode.api.v2.GetAssetResponse","responseStreaming":false},{"name":"ListAssets","description":"List assets\n\nGet a list of assets available on the Vega network","requestType":"ListAssetsRequest","requestLongType":"ListAssetsRequest","requestFullType":"datanode.api.v2.ListAssetsRequest","requestStreaming":false,"responseType":"ListAssetsResponse","responseLongType":"ListAssetsResponse","responseFullType":"datanode.api.v2.ListAssetsResponse","responseStreaming":false},{"name":"ListLiquidityProvisions","description":"List liquidity provisions\n\nDEPRECATED: When a liquidity provider amends a provision, and it's accepted by the network, the pending\nprovision is returned by the API instead of the provision that is currently active.\nUse ListAllLiquidityProvisions instead.","requestType":"ListLiquidityProvisionsRequest","requestLongType":"ListLiquidityProvisionsRequest","requestFullType":"datanode.api.v2.ListLiquidityProvisionsRequest","requestStreaming":false,"responseType":"ListLiquidityProvisionsResponse","responseLongType":"ListLiquidityProvisionsResponse","responseFullType":"datanode.api.v2.ListLiquidityProvisionsResponse","responseStreaming":false,"options":{"deprecated":true}},{"name":"ListAllLiquidityProvisions","description":"List liquidity provisions\n\nGet a list of liquidity provisions for a given market. This API returns a current and pending liquidity provision\nin the event that a provision has been updated by the provider but the updated provision will not be active until the next epoch.","requestType":"ListAllLiquidityProvisionsRequest","requestLongType":"ListAllLiquidityProvisionsRequest","requestFullType":"datanode.api.v2.ListAllLiquidityProvisionsRequest","requestStreaming":false,"responseType":"ListAllLiquidityProvisionsResponse","responseLongType":"ListAllLiquidityProvisionsResponse","responseFullType":"datanode.api.v2.ListAllLiquidityProvisionsResponse","responseStreaming":false},{"name":"ObserveLiquidityProvisions","description":"Observe liquidity provisions\n\nSubscribe to a stream of liquidity provision events for a given market and party","requestType":"ObserveLiquidityProvisionsRequest","requestLongType":"ObserveLiquidityProvisionsRequest","requestFullType":"datanode.api.v2.ObserveLiquidityProvisionsRequest","requestStreaming":false,"responseType":"ObserveLiquidityProvisionsResponse","responseLongType":"ObserveLiquidityProvisionsResponse","responseFullType":"datanode.api.v2.ObserveLiquidityProvisionsResponse","responseStreaming":true},{"name":"ListLiquidityProviders","description":"List liquidity providers data\n\nList information about active liquidity provider(s) for a given market, or liquidity provider's party ID.","requestType":"ListLiquidityProvidersRequest","requestLongType":"ListLiquidityProvidersRequest","requestFullType":"datanode.api.v2.ListLiquidityProvidersRequest","requestStreaming":false,"responseType":"ListLiquidityProvidersResponse","responseLongType":"ListLiquidityProvidersResponse","responseFullType":"datanode.api.v2.ListLiquidityProvidersResponse","responseStreaming":false},{"name":"ListPaidLiquidityFees","description":"List paid liquidity fees data\n\nList information about paid liquidity fees for a given market, or asset ID.","requestType":"ListPaidLiquidityFeesRequest","requestLongType":"ListPaidLiquidityFeesRequest","requestFullType":"datanode.api.v2.ListPaidLiquidityFeesRequest","requestStreaming":false,"responseType":"ListPaidLiquidityFeesResponse","responseLongType":"ListPaidLiquidityFeesResponse","responseFullType":"datanode.api.v2.ListPaidLiquidityFeesResponse","responseStreaming":false},{"name":"GetGovernanceData","description":"Get governance data\n\nGet a single proposal's details either by proposal ID or by reference","requestType":"GetGovernanceDataRequest","requestLongType":"GetGovernanceDataRequest","requestFullType":"datanode.api.v2.GetGovernanceDataRequest","requestStreaming":false,"responseType":"GetGovernanceDataResponse","responseLongType":"GetGovernanceDataResponse","responseFullType":"datanode.api.v2.GetGovernanceDataResponse","responseStreaming":false},{"name":"ListGovernanceData","description":"List governance data\n\nGet a list of proposals","requestType":"ListGovernanceDataRequest","requestLongType":"ListGovernanceDataRequest","requestFullType":"datanode.api.v2.ListGovernanceDataRequest","requestStreaming":false,"responseType":"ListGovernanceDataResponse","responseLongType":"ListGovernanceDataResponse","responseFullType":"datanode.api.v2.ListGovernanceDataResponse","responseStreaming":false},{"name":"ObserveGovernance","description":"Observe governance\n\nSubscribe to a stream of updates to governance proposals","requestType":"ObserveGovernanceRequest","requestLongType":"ObserveGovernanceRequest","requestFullType":"datanode.api.v2.ObserveGovernanceRequest","requestStreaming":false,"responseType":"ObserveGovernanceResponse","responseLongType":"ObserveGovernanceResponse","responseFullType":"datanode.api.v2.ObserveGovernanceResponse","responseStreaming":true},{"name":"ListDelegations","description":"List delegations\n\nGet a list of the token delegations on the network","requestType":"ListDelegationsRequest","requestLongType":"ListDelegationsRequest","requestFullType":"datanode.api.v2.ListDelegationsRequest","requestStreaming":false,"responseType":"ListDelegationsResponse","responseLongType":"ListDelegationsResponse","responseFullType":"datanode.api.v2.ListDelegationsResponse","responseStreaming":false},{"name":"GetNetworkData","description":"Get network data\n\nGet data regarding the nodes of the network","requestType":"GetNetworkDataRequest","requestLongType":"GetNetworkDataRequest","requestFullType":"datanode.api.v2.GetNetworkDataRequest","requestStreaming":false,"responseType":"GetNetworkDataResponse","responseLongType":"GetNetworkDataResponse","responseFullType":"datanode.api.v2.GetNetworkDataResponse","responseStreaming":false},{"name":"GetNode","description":"Get node\n\nGet information about a given node","requestType":"GetNodeRequest","requestLongType":"GetNodeRequest","requestFullType":"datanode.api.v2.GetNodeRequest","requestStreaming":false,"responseType":"GetNodeResponse","responseLongType":"GetNodeResponse","responseFullType":"datanode.api.v2.GetNodeResponse","responseStreaming":false},{"name":"ListNodes","description":"List nodes\n\nGet a list of the nodes on the network along with the related information.","requestType":"ListNodesRequest","requestLongType":"ListNodesRequest","requestFullType":"datanode.api.v2.ListNodesRequest","requestStreaming":false,"responseType":"ListNodesResponse","responseLongType":"ListNodesResponse","responseFullType":"datanode.api.v2.ListNodesResponse","responseStreaming":false},{"name":"ListNodeSignatures","description":"List node signatures\n\nGet a list of aggregate signatures from all the nodes of the network","requestType":"ListNodeSignaturesRequest","requestLongType":"ListNodeSignaturesRequest","requestFullType":"datanode.api.v2.ListNodeSignaturesRequest","requestStreaming":false,"responseType":"ListNodeSignaturesResponse","responseLongType":"ListNodeSignaturesResponse","responseFullType":"datanode.api.v2.ListNodeSignaturesResponse","responseStreaming":false},{"name":"GetEpoch","description":"Get epoch\n\nGet data for a specific epoch, if ID is omitted, it retrieves the current epoch","requestType":"GetEpochRequest","requestLongType":"GetEpochRequest","requestFullType":"datanode.api.v2.GetEpochRequest","requestStreaming":false,"responseType":"GetEpochResponse","responseLongType":"GetEpochResponse","responseFullType":"datanode.api.v2.GetEpochResponse","responseStreaming":false},{"name":"EstimateFee","description":"Estimate fee\n\nEstimate the fee that would be incurred for submitting an order\nwith the specified price and size on the market.","requestType":"EstimateFeeRequest","requestLongType":"EstimateFeeRequest","requestFullType":"datanode.api.v2.EstimateFeeRequest","requestStreaming":false,"responseType":"EstimateFeeResponse","responseLongType":"EstimateFeeResponse","responseFullType":"datanode.api.v2.EstimateFeeResponse","responseStreaming":false},{"name":"EstimateMargin","description":"Estimate margin\n\nEstimate the margin that would be required for submitting this order","requestType":"EstimateMarginRequest","requestLongType":"EstimateMarginRequest","requestFullType":"datanode.api.v2.EstimateMarginRequest","requestStreaming":false,"responseType":"EstimateMarginResponse","responseLongType":"EstimateMarginResponse","responseFullType":"datanode.api.v2.EstimateMarginResponse","responseStreaming":false},{"name":"EstimatePosition","description":"Estimate position\n\nEstimate the margin that would be required for maintaining the specified position, collateral increase needed to open the specified position and the liquidation price estimate.\nMargin estimates are scaled to asset decimal places.\nLiquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request.","requestType":"EstimatePositionRequest","requestLongType":"EstimatePositionRequest","requestFullType":"datanode.api.v2.EstimatePositionRequest","requestStreaming":false,"responseType":"EstimatePositionResponse","responseLongType":"EstimatePositionResponse","responseFullType":"datanode.api.v2.EstimatePositionResponse","responseStreaming":false},{"name":"ListNetworkParameters","description":"List network parameters\n\nGet a list of the network parameter keys and their values","requestType":"ListNetworkParametersRequest","requestLongType":"ListNetworkParametersRequest","requestFullType":"datanode.api.v2.ListNetworkParametersRequest","requestStreaming":false,"responseType":"ListNetworkParametersResponse","responseLongType":"ListNetworkParametersResponse","responseFullType":"datanode.api.v2.ListNetworkParametersResponse","responseStreaming":false},{"name":"GetNetworkParameter","description":"Get network parameter\n\nGet a network parameter's value by its key","requestType":"GetNetworkParameterRequest","requestLongType":"GetNetworkParameterRequest","requestFullType":"datanode.api.v2.GetNetworkParameterRequest","requestStreaming":false,"responseType":"GetNetworkParameterResponse","responseLongType":"GetNetworkParameterResponse","responseFullType":"datanode.api.v2.GetNetworkParameterResponse","responseStreaming":false},{"name":"ListCheckpoints","description":"List checkpoints\n\nGet a list of information about checkpoints generated by the network","requestType":"ListCheckpointsRequest","requestLongType":"ListCheckpointsRequest","requestFullType":"datanode.api.v2.ListCheckpointsRequest","requestStreaming":false,"responseType":"ListCheckpointsResponse","responseLongType":"ListCheckpointsResponse","responseFullType":"datanode.api.v2.ListCheckpointsResponse","responseStreaming":false},{"name":"GetStake","description":"Get stake\n\nGet staking information for a given party","requestType":"GetStakeRequest","requestLongType":"GetStakeRequest","requestFullType":"datanode.api.v2.GetStakeRequest","requestStreaming":false,"responseType":"GetStakeResponse","responseLongType":"GetStakeResponse","responseFullType":"datanode.api.v2.GetStakeResponse","responseStreaming":false},{"name":"GetRiskFactors","description":"Get risk factors\n\nGet risk factor data for a given market","requestType":"GetRiskFactorsRequest","requestLongType":"GetRiskFactorsRequest","requestFullType":"datanode.api.v2.GetRiskFactorsRequest","requestStreaming":false,"responseType":"GetRiskFactorsResponse","responseLongType":"GetRiskFactorsResponse","responseFullType":"datanode.api.v2.GetRiskFactorsResponse","responseStreaming":false},{"name":"ObserveEventBus","description":"Observe event bus\n\nSubscribe to a stream of events from the core","requestType":"ObserveEventBusRequest","requestLongType":"ObserveEventBusRequest","requestFullType":"datanode.api.v2.ObserveEventBusRequest","requestStreaming":true,"responseType":"ObserveEventBusResponse","responseLongType":"ObserveEventBusResponse","responseFullType":"datanode.api.v2.ObserveEventBusResponse","responseStreaming":true},{"name":"ObserveLedgerMovements","description":"Observe ledger movements\n\nSubscribe to a stream of transfer responses","requestType":"ObserveLedgerMovementsRequest","requestLongType":"ObserveLedgerMovementsRequest","requestFullType":"datanode.api.v2.ObserveLedgerMovementsRequest","requestStreaming":false,"responseType":"ObserveLedgerMovementsResponse","responseLongType":"ObserveLedgerMovementsResponse","responseFullType":"datanode.api.v2.ObserveLedgerMovementsResponse","responseStreaming":true},{"name":"ListKeyRotations","description":"List key rotations\n\nGet a list of information about Vega key rotations that have been performed by validator nodes","requestType":"ListKeyRotationsRequest","requestLongType":"ListKeyRotationsRequest","requestFullType":"datanode.api.v2.ListKeyRotationsRequest","requestStreaming":false,"responseType":"ListKeyRotationsResponse","responseLongType":"ListKeyRotationsResponse","responseFullType":"datanode.api.v2.ListKeyRotationsResponse","responseStreaming":false},{"name":"ListEthereumKeyRotations","description":"List Ethereum key rotations\n\nGet a list of information about Ethereum key rotations that have been performed by validator nodes","requestType":"ListEthereumKeyRotationsRequest","requestLongType":"ListEthereumKeyRotationsRequest","requestFullType":"datanode.api.v2.ListEthereumKeyRotationsRequest","requestStreaming":false,"responseType":"ListEthereumKeyRotationsResponse","responseLongType":"ListEthereumKeyRotationsResponse","responseFullType":"datanode.api.v2.ListEthereumKeyRotationsResponse","responseStreaming":false},{"name":"GetVegaTime","description":"Get Vega time\n\nGet the current time of the network in Unix nanoseconds","requestType":"GetVegaTimeRequest","requestLongType":"GetVegaTimeRequest","requestFullType":"datanode.api.v2.GetVegaTimeRequest","requestStreaming":false,"responseType":"GetVegaTimeResponse","responseLongType":"GetVegaTimeResponse","responseFullType":"datanode.api.v2.GetVegaTimeResponse","responseStreaming":false},{"name":"GetProtocolUpgradeStatus","description":"Get protocol upgrade status\n\nGet status of a protocol upgrade","requestType":"GetProtocolUpgradeStatusRequest","requestLongType":"GetProtocolUpgradeStatusRequest","requestFullType":"datanode.api.v2.GetProtocolUpgradeStatusRequest","requestStreaming":false,"responseType":"GetProtocolUpgradeStatusResponse","responseLongType":"GetProtocolUpgradeStatusResponse","responseFullType":"datanode.api.v2.GetProtocolUpgradeStatusResponse","responseStreaming":false},{"name":"ListProtocolUpgradeProposals","description":"List protocol upgrade proposals\n\nGet a list of protocol upgrade proposals, optionally filtering on status or approver.","requestType":"ListProtocolUpgradeProposalsRequest","requestLongType":"ListProtocolUpgradeProposalsRequest","requestFullType":"datanode.api.v2.ListProtocolUpgradeProposalsRequest","requestStreaming":false,"responseType":"ListProtocolUpgradeProposalsResponse","responseLongType":"ListProtocolUpgradeProposalsResponse","responseFullType":"datanode.api.v2.ListProtocolUpgradeProposalsResponse","responseStreaming":false},{"name":"ListCoreSnapshots","description":"List snapshots\n\nGet a list of core snapshots taken","requestType":"ListCoreSnapshotsRequest","requestLongType":"ListCoreSnapshotsRequest","requestFullType":"datanode.api.v2.ListCoreSnapshotsRequest","requestStreaming":false,"responseType":"ListCoreSnapshotsResponse","responseLongType":"ListCoreSnapshotsResponse","responseFullType":"datanode.api.v2.ListCoreSnapshotsResponse","responseStreaming":false},{"name":"GetMostRecentNetworkHistorySegment","description":"Get most recent network history segment\n\nGet the network's most recently history segment","requestType":"GetMostRecentNetworkHistorySegmentRequest","requestLongType":"GetMostRecentNetworkHistorySegmentRequest","requestFullType":"datanode.api.v2.GetMostRecentNetworkHistorySegmentRequest","requestStreaming":false,"responseType":"GetMostRecentNetworkHistorySegmentResponse","responseLongType":"GetMostRecentNetworkHistorySegmentResponse","responseFullType":"datanode.api.v2.GetMostRecentNetworkHistorySegmentResponse","responseStreaming":false},{"name":"ListAllNetworkHistorySegments","description":"List all network history segments\n\nGet a list of all history segments stored by the data node currently connected to","requestType":"ListAllNetworkHistorySegmentsRequest","requestLongType":"ListAllNetworkHistorySegmentsRequest","requestFullType":"datanode.api.v2.ListAllNetworkHistorySegmentsRequest","requestStreaming":false,"responseType":"ListAllNetworkHistorySegmentsResponse","responseLongType":"ListAllNetworkHistorySegmentsResponse","responseFullType":"datanode.api.v2.ListAllNetworkHistorySegmentsResponse","responseStreaming":false},{"name":"GetActiveNetworkHistoryPeerAddresses","description":"Get active network history peer addresses\n\nGet a list of the addresses of all active network history peers","requestType":"GetActiveNetworkHistoryPeerAddressesRequest","requestLongType":"GetActiveNetworkHistoryPeerAddressesRequest","requestFullType":"datanode.api.v2.GetActiveNetworkHistoryPeerAddressesRequest","requestStreaming":false,"responseType":"GetActiveNetworkHistoryPeerAddressesResponse","responseLongType":"GetActiveNetworkHistoryPeerAddressesResponse","responseFullType":"datanode.api.v2.GetActiveNetworkHistoryPeerAddressesResponse","responseStreaming":false},{"name":"GetNetworkHistoryStatus","description":"Network history status\n\nGet information about the current state of network history's IPFS swarm","requestType":"GetNetworkHistoryStatusRequest","requestLongType":"GetNetworkHistoryStatusRequest","requestFullType":"datanode.api.v2.GetNetworkHistoryStatusRequest","requestStreaming":false,"responseType":"GetNetworkHistoryStatusResponse","responseLongType":"GetNetworkHistoryStatusResponse","responseFullType":"datanode.api.v2.GetNetworkHistoryStatusResponse","responseStreaming":false},{"name":"GetNetworkHistoryBootstrapPeers","description":"Network history bootstrap peers\n\nGet a list of IPFS peers that can be used to initialise a new data node with network history","requestType":"GetNetworkHistoryBootstrapPeersRequest","requestLongType":"GetNetworkHistoryBootstrapPeersRequest","requestFullType":"datanode.api.v2.GetNetworkHistoryBootstrapPeersRequest","requestStreaming":false,"responseType":"GetNetworkHistoryBootstrapPeersResponse","responseLongType":"GetNetworkHistoryBootstrapPeersResponse","responseFullType":"datanode.api.v2.GetNetworkHistoryBootstrapPeersResponse","responseStreaming":false},{"name":"ListEntities","description":"List entities\n\nGet a list of all entities created by transaction hash","requestType":"ListEntitiesRequest","requestLongType":"ListEntitiesRequest","requestFullType":"datanode.api.v2.ListEntitiesRequest","requestStreaming":false,"responseType":"ListEntitiesResponse","responseLongType":"ListEntitiesResponse","responseFullType":"datanode.api.v2.ListEntitiesResponse","responseStreaming":false},{"name":"ListFundingPeriods","description":"List funding periods\n\nGet a list of funding periods for a perpetual market.","requestType":"ListFundingPeriodsRequest","requestLongType":"ListFundingPeriodsRequest","requestFullType":"datanode.api.v2.ListFundingPeriodsRequest","requestStreaming":false,"responseType":"ListFundingPeriodsResponse","responseLongType":"ListFundingPeriodsResponse","responseFullType":"datanode.api.v2.ListFundingPeriodsResponse","responseStreaming":false},{"name":"ListFundingPeriodDataPoints","description":"List funding period data points\n\nGet a list of data points for a perpetual market's funding periods.","requestType":"ListFundingPeriodDataPointsRequest","requestLongType":"ListFundingPeriodDataPointsRequest","requestFullType":"datanode.api.v2.ListFundingPeriodDataPointsRequest","requestStreaming":false,"responseType":"ListFundingPeriodDataPointsResponse","responseLongType":"ListFundingPeriodDataPointsResponse","responseFullType":"datanode.api.v2.ListFundingPeriodDataPointsResponse","responseStreaming":false},{"name":"ListFundingPayments","description":"List funding payments\n\nGet a list of funding payment gains and losses for a party as a result of their position on a perpetual market when a funding\nperiod ends.","requestType":"ListFundingPaymentsRequest","requestLongType":"ListFundingPaymentsRequest","requestFullType":"datanode.api.v2.ListFundingPaymentsRequest","requestStreaming":false,"responseType":"ListFundingPaymentsResponse","responseLongType":"ListFundingPaymentsResponse","responseFullType":"datanode.api.v2.ListFundingPaymentsResponse","responseStreaming":false},{"name":"GetPartyActivityStreak","description":"List party activity streak\n\nGet a party's activity across epochs.","requestType":"GetPartyActivityStreakRequest","requestLongType":"GetPartyActivityStreakRequest","requestFullType":"datanode.api.v2.GetPartyActivityStreakRequest","requestStreaming":false,"responseType":"GetPartyActivityStreakResponse","responseLongType":"GetPartyActivityStreakResponse","responseFullType":"datanode.api.v2.GetPartyActivityStreakResponse","responseStreaming":false},{"name":"GetCurrentReferralProgram","description":"Get current referral program\n\nGet the current referral program for the network. This program may not be active if it has ended\nand has not been replaced by another.","requestType":"GetCurrentReferralProgramRequest","requestLongType":"GetCurrentReferralProgramRequest","requestFullType":"datanode.api.v2.GetCurrentReferralProgramRequest","requestStreaming":false,"responseType":"GetCurrentReferralProgramResponse","responseLongType":"GetCurrentReferralProgramResponse","responseFullType":"datanode.api.v2.GetCurrentReferralProgramResponse","responseStreaming":false},{"name":"ListReferralSets","description":"List referral sets\n\nList all referral sets, or a specific referral set if you know its ID.","requestType":"ListReferralSetsRequest","requestLongType":"ListReferralSetsRequest","requestFullType":"datanode.api.v2.ListReferralSetsRequest","requestStreaming":false,"responseType":"ListReferralSetsResponse","responseLongType":"ListReferralSetsResponse","responseFullType":"datanode.api.v2.ListReferralSetsResponse","responseStreaming":false},{"name":"ListReferralSetReferees","description":"List referral set referees\n\nList all referees that belong to a referral set.","requestType":"ListReferralSetRefereesRequest","requestLongType":"ListReferralSetRefereesRequest","requestFullType":"datanode.api.v2.ListReferralSetRefereesRequest","requestStreaming":false,"responseType":"ListReferralSetRefereesResponse","responseLongType":"ListReferralSetRefereesResponse","responseFullType":"datanode.api.v2.ListReferralSetRefereesResponse","responseStreaming":false},{"name":"GetReferralSetStats","description":"Get referral set statistics\n\nGet the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set\nat the latest or a specific epoch. You can also optionally filter for a specific referee's statistics.","requestType":"GetReferralSetStatsRequest","requestLongType":"GetReferralSetStatsRequest","requestFullType":"datanode.api.v2.GetReferralSetStatsRequest","requestStreaming":false,"responseType":"GetReferralSetStatsResponse","responseLongType":"GetReferralSetStatsResponse","responseFullType":"datanode.api.v2.GetReferralSetStatsResponse","responseStreaming":false},{"name":"ListTeams","description":"List teams\n\nGet a list of all teams, or for a specific team by using team ID, or party ID of a referrer or referee","requestType":"ListTeamsRequest","requestLongType":"ListTeamsRequest","requestFullType":"datanode.api.v2.ListTeamsRequest","requestStreaming":false,"responseType":"ListTeamsResponse","responseLongType":"ListTeamsResponse","responseFullType":"datanode.api.v2.ListTeamsResponse","responseStreaming":false},{"name":"ListTeamsStatistics","description":"List teams statistics\n\nGet the statistics of all teams, or for a specific team by using team ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","requestType":"ListTeamsStatisticsRequest","requestLongType":"ListTeamsStatisticsRequest","requestFullType":"datanode.api.v2.ListTeamsStatisticsRequest","requestStreaming":false,"responseType":"ListTeamsStatisticsResponse","responseLongType":"ListTeamsStatisticsResponse","responseFullType":"datanode.api.v2.ListTeamsStatisticsResponse","responseStreaming":false},{"name":"ListTeamMembersStatistics","description":"List team members' statistics\n\nGet the statistics for all members of a given team, or for a specific member by using party ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","requestType":"ListTeamMembersStatisticsRequest","requestLongType":"ListTeamMembersStatisticsRequest","requestFullType":"datanode.api.v2.ListTeamMembersStatisticsRequest","requestStreaming":false,"responseType":"ListTeamMembersStatisticsResponse","responseLongType":"ListTeamMembersStatisticsResponse","responseFullType":"datanode.api.v2.ListTeamMembersStatisticsResponse","responseStreaming":false},{"name":"ListTeamReferees","description":"List team referees\n\nGet a list of all referees for a given team ID","requestType":"ListTeamRefereesRequest","requestLongType":"ListTeamRefereesRequest","requestFullType":"datanode.api.v2.ListTeamRefereesRequest","requestStreaming":false,"responseType":"ListTeamRefereesResponse","responseLongType":"ListTeamRefereesResponse","responseFullType":"datanode.api.v2.ListTeamRefereesResponse","responseStreaming":false},{"name":"ListTeamRefereeHistory","description":"List referee team history\n\nGet a list of a referee's team history, i.e. the teams that a referee has been a member of and transferred from/to.","requestType":"ListTeamRefereeHistoryRequest","requestLongType":"ListTeamRefereeHistoryRequest","requestFullType":"datanode.api.v2.ListTeamRefereeHistoryRequest","requestStreaming":false,"responseType":"ListTeamRefereeHistoryResponse","responseLongType":"ListTeamRefereeHistoryResponse","responseFullType":"datanode.api.v2.ListTeamRefereeHistoryResponse","responseStreaming":false},{"name":"GetFeesStats","description":"Get fees statistics\n\nGet accumulated fees, rewards, and applied discount information. Either a market or an asset must be supplied as filter.","requestType":"GetFeesStatsRequest","requestLongType":"GetFeesStatsRequest","requestFullType":"datanode.api.v2.GetFeesStatsRequest","requestStreaming":false,"responseType":"GetFeesStatsResponse","responseLongType":"GetFeesStatsResponse","responseFullType":"datanode.api.v2.GetFeesStatsResponse","responseStreaming":false},{"name":"GetFeesStatsForParty","description":"Get fees statistics for a party\n\nGet accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter.","requestType":"GetFeesStatsForPartyRequest","requestLongType":"GetFeesStatsForPartyRequest","requestFullType":"datanode.api.v2.GetFeesStatsForPartyRequest","requestStreaming":false,"responseType":"GetFeesStatsForPartyResponse","responseLongType":"GetFeesStatsForPartyResponse","responseFullType":"datanode.api.v2.GetFeesStatsForPartyResponse","responseStreaming":false},{"name":"GetCurrentVolumeDiscountProgram","description":"Get current volume discount program\n\nGet the current volume discount program for the network. This program may not be active if it has ended\nand has not been replaced by another.","requestType":"GetCurrentVolumeDiscountProgramRequest","requestLongType":"GetCurrentVolumeDiscountProgramRequest","requestFullType":"datanode.api.v2.GetCurrentVolumeDiscountProgramRequest","requestStreaming":false,"responseType":"GetCurrentVolumeDiscountProgramResponse","responseLongType":"GetCurrentVolumeDiscountProgramResponse","responseFullType":"datanode.api.v2.GetCurrentVolumeDiscountProgramResponse","responseStreaming":false},{"name":"GetVolumeDiscountStats","description":"Get volume discount statistics\n\nGet the information about a party's running traded volume, and the discount factor it earns them.","requestType":"GetVolumeDiscountStatsRequest","requestLongType":"GetVolumeDiscountStatsRequest","requestFullType":"datanode.api.v2.GetVolumeDiscountStatsRequest","requestStreaming":false,"responseType":"GetVolumeDiscountStatsResponse","responseLongType":"GetVolumeDiscountStatsResponse","responseFullType":"datanode.api.v2.GetVolumeDiscountStatsResponse","responseStreaming":false},{"name":"GetVestingBalancesSummary","description":"Get vesting balances summary\n\nGet information about a party's vesting and locked balances","requestType":"GetVestingBalancesSummaryRequest","requestLongType":"GetVestingBalancesSummaryRequest","requestFullType":"datanode.api.v2.GetVestingBalancesSummaryRequest","requestStreaming":false,"responseType":"GetVestingBalancesSummaryResponse","responseLongType":"GetVestingBalancesSummaryResponse","responseFullType":"datanode.api.v2.GetVestingBalancesSummaryResponse","responseStreaming":false},{"name":"GetPartyVestingStats","description":"Get vesting balance statistics\n\nGet information about a party's vesting rewards","requestType":"GetPartyVestingStatsRequest","requestLongType":"GetPartyVestingStatsRequest","requestFullType":"datanode.api.v2.GetPartyVestingStatsRequest","requestStreaming":false,"responseType":"GetPartyVestingStatsResponse","responseLongType":"GetPartyVestingStatsResponse","responseFullType":"datanode.api.v2.GetPartyVestingStatsResponse","responseStreaming":false},{"name":"ObserveTransactionResults","description":"Observe transaction results\n\nSubscribe to a stream of transaction results, optionally filtered by party/hash/status","requestType":"ObserveTransactionResultsRequest","requestLongType":"ObserveTransactionResultsRequest","requestFullType":"datanode.api.v2.ObserveTransactionResultsRequest","requestStreaming":false,"responseType":"ObserveTransactionResultsResponse","responseLongType":"ObserveTransactionResultsResponse","responseFullType":"datanode.api.v2.ObserveTransactionResultsResponse","responseStreaming":true},{"name":"EstimateTransferFee","description":"Estimate transfer fee costs\n\nEstimate transfer fee costs with potential discount applied","requestType":"EstimateTransferFeeRequest","requestLongType":"EstimateTransferFeeRequest","requestFullType":"datanode.api.v2.EstimateTransferFeeRequest","requestStreaming":false,"responseType":"EstimateTransferFeeResponse","responseLongType":"EstimateTransferFeeResponse","responseFullType":"datanode.api.v2.EstimateTransferFeeResponse","responseStreaming":false},{"name":"GetTotalTransferFeeDiscount","description":"Available transfer fee discount\n\nReturns available per party per asset transfer discount","requestType":"GetTotalTransferFeeDiscountRequest","requestLongType":"GetTotalTransferFeeDiscountRequest","requestFullType":"datanode.api.v2.GetTotalTransferFeeDiscountRequest","requestStreaming":false,"responseType":"GetTotalTransferFeeDiscountResponse","responseLongType":"GetTotalTransferFeeDiscountResponse","responseFullType":"datanode.api.v2.GetTotalTransferFeeDiscountResponse","responseStreaming":false},{"name":"ListGames","description":"List games\n\nGet a list of games and corresponding game data, given the provided filters","requestType":"ListGamesRequest","requestLongType":"ListGamesRequest","requestFullType":"datanode.api.v2.ListGamesRequest","requestStreaming":false,"responseType":"ListGamesResponse","responseLongType":"ListGamesResponse","responseFullType":"datanode.api.v2.ListGamesResponse","responseStreaming":false},{"name":"ListPartyMarginModes","description":"List margin modes per party per market\n\nGet a list of all margin modes, or for a specific market ID, or party ID.","requestType":"ListPartyMarginModesRequest","requestLongType":"ListPartyMarginModesRequest","requestFullType":"datanode.api.v2.ListPartyMarginModesRequest","requestStreaming":false,"responseType":"ListPartyMarginModesResponse","responseLongType":"ListPartyMarginModesResponse","responseFullType":"datanode.api.v2.ListPartyMarginModesResponse","responseStreaming":false},{"name":"ExportNetworkHistory","description":"Export network history as CSV\n\nExport CSV table data from network history between two block heights.\n\nThe requested block heights must fall on network history segment boundaries, which can\nbe discovered by calling the API to list all network history segments. By default\nsegments contain 1000 blocks. In that case ranges such as (1, 1000), (1001, 2000), (1, 3000)\nwould all fall on segment boundaries and be valid.\n\nThe generated CSV file is compressed into a ZIP file and returned, with the file name\nin the following format: `[chain id]-[table name]-[start block]-[end block].zip`\n\nIn gRPC, results are returned in a chunked stream of base64 encoded data.\n\nThrough the REST gateway, the base64 data chunks are decoded and streamed as a\n`content-type: application/zip` HTTP response.\n\nThe CSV exported data uses a comma as a DELIMITER between fields, and \" for QUOTE-ing fields.\n\nIf a value contains any of: DELIMITER, QUOTE, carriage return, or line feed then the whole\nvalue is prefixed and suffixed by the QUOTE character and any occurrence within\nthe value of a QUOTE character preceded by another QUOTE.\n\nA NULL is output as the NULL parameter string and is not quoted, while a non-NULL value\nmatching the NULL parameter string is quoted.\n\nFor example, with the default settings, a NULL is written as an unquoted empty string,\nwhile an empty string data value is written with double quotes.\n\nNote that CSV files produced may contain quoted values containing embedded carriage returns and line feeds.\nThus the files are not strictly one line per table row like text-format files.\n\nThe first row of the CSV file is a header that describes the contents of each column\nin subsequent rows.\n\nUsually the ZIP file will contain only a single CSV file. However it is possible that\nthe (from_block, to_block) request spans over a range of blocks in which the underlying\nschema of the database changes. For example, a column may have been added, removed, or renamed.\n\nIf this happens, the CSV file will be split at the point of the schema change and the zip\nfile will contain multiple CSV files, with a potentially different set of headers. The\n'version' number of the database schema is part of the in the CSV filename:\n\n `[chain id]-[table name]-[schema version]-[start block]-[end block].zip`\n\nFor example, a zip file might be called mainnet-sometable-000001-003000.zip\n\nAnd contain two CSV files: `mainnet-sometable-1-000001-002000.csv`:\n\ntimestamp, value\n1, foo\n2, bar\n\nAnd `mainnet-sometable-2-002001-003000.csv`:\n\ntimestamp, value, extra_value\n3, baz, apple\n\nIt is worth noting that the schema will not change within a single network history segment.\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","requestType":"ExportNetworkHistoryRequest","requestLongType":"ExportNetworkHistoryRequest","requestFullType":"datanode.api.v2.ExportNetworkHistoryRequest","requestStreaming":false,"responseType":"HttpBody","responseLongType":".google.api.HttpBody","responseFullType":"google.api.HttpBody","responseStreaming":true},{"name":"Ping","description":"Ping\n\nPing the data node","requestType":"PingRequest","requestLongType":"PingRequest","requestFullType":"datanode.api.v2.PingRequest","requestStreaming":false,"responseType":"PingResponse","responseLongType":"PingResponse","responseFullType":"datanode.api.v2.PingResponse","responseStreaming":false}]}]},{"name":"vega/api/v1/core.proto","description":"","package":"vega.api.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":true,"enums":[{"name":"Type","longName":"SubmitRawTransactionRequest.Type","fullName":"vega.api.v1.SubmitRawTransactionRequest.Type","description":"Blockchain transaction type","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":""},{"name":"TYPE_ASYNC","number":"1","description":"Transaction will be submitted without waiting for response"},{"name":"TYPE_SYNC","number":"2","description":"Transaction will be submitted, and blocking until the\ntendermint mempool returns a response"},{"name":"TYPE_COMMIT","number":"3","description":"Transaction will be submitted, and blocking until the tendermint\nnetwork has committed it into a block. Used only for debugging,\nnot for submitting transactions"}]},{"name":"Type","longName":"SubmitTransactionRequest.Type","fullName":"vega.api.v1.SubmitTransactionRequest.Type","description":"Blockchain transaction type.","values":[{"name":"TYPE_UNSPECIFIED","number":"0","description":""},{"name":"TYPE_ASYNC","number":"1","description":"Transaction will be submitted without waiting for a response."},{"name":"TYPE_SYNC","number":"2","description":"Transaction will be submitted, and blocking until the mempool returns a response."},{"name":"TYPE_COMMIT","number":"3","description":"Transaction will be submitted, and blocking until the network has committed it into a block.\nUsed only for debugging local network, not for submitting transactions."}]}],"extensions":[],"messages":[{"name":"CheckRawTransactionRequest","longName":"CheckRawTransactionRequest","fullName":"vega.api.v1.CheckRawTransactionRequest","description":"Request for checking a version agnostic transaction on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tx","description":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that would be submitted to the Vega blockchain","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CheckRawTransactionResponse","longName":"CheckRawTransactionResponse","fullName":"vega.api.v1.CheckRawTransactionResponse","description":"Response for checking a version agnostic transaction on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"success","description":"Whether or not the transaction passed the submission checks.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"code","description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"gas_wanted","description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"gas_used","description":"Unused.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data","description":"Further details for why the transaction was not successfully checked.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log","description":"Further details for the underlying consensus layer of the result of the transaction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"info","description":"Unused","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CheckTransactionRequest","longName":"CheckTransactionRequest","fullName":"vega.api.v1.CheckTransactionRequest","description":"Request for checking a transaction v2 on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tx","description":"Transaction containing a command to be checked on the network, and not added to the chain's mempool.","label":"","type":"Transaction","longType":"vega.commands.v1.Transaction","fullType":"vega.commands.v1.Transaction","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"CheckTransactionResponse","longName":"CheckTransactionResponse","fullName":"vega.api.v1.CheckTransactionResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"success","description":"Whether or not the transaction passed the submission checks.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"code","description":"Error code to indicate the category of failure if the transaction was not successfully checked.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"gas_wanted","description":"Amount of space in a block that the transaction will fill. This does not relate to any monetary cost for submitting the transaction.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"gas_used","description":"Unused.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data","description":"Further details for why the transaction was not successfully submitted.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log","description":"Further details for the underlying consensus layer of the result of the transaction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"info","description":"Unused.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetSpamStatisticsRequest","longName":"GetSpamStatisticsRequest","fullName":"vega.api.v1.GetSpamStatisticsRequest","description":"Request to retrieve the spam statistics of a party for the given epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party_id","description":"Party ID whose statistics are requested","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetSpamStatisticsResponse","longName":"GetSpamStatisticsResponse","fullName":"vega.api.v1.GetSpamStatisticsResponse","description":"Response containing all the spam statistics of a party for the current epoch","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"chain_id","description":"Chain ID for which the statistics are captured.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"statistics","description":"Spam statistics for the party","label":"","type":"SpamStatistics","longType":"SpamStatistics","fullType":"vega.api.v1.SpamStatistics","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"GetVegaTimeRequest","longName":"GetVegaTimeRequest","fullName":"vega.api.v1.GetVegaTimeRequest","description":"Request for the current time of the Vega network","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"GetVegaTimeResponse","longName":"GetVegaTimeResponse","fullName":"vega.api.v1.GetVegaTimeResponse","description":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"timestamp","description":"Timestamp representation of current VegaTime as represented in\nUnix nanoseconds, for example `1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"LastBlockHeightRequest","longName":"LastBlockHeightRequest","fullName":"vega.api.v1.LastBlockHeightRequest","description":"Request to get the height of the very last block processed\nby tendermint","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"LastBlockHeightResponse","longName":"LastBlockHeightResponse","fullName":"vega.api.v1.LastBlockHeightResponse","description":"Response with the height of the last block processed by\ntendermint","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"height","description":"Last block height","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"hash","description":"Last block hash","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"spam_pow_hash_function","description":"Supported proof of work hash function","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"spam_pow_difficulty","description":"Difficulty of the proof of work, i.e. the target number of zeros","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"spam_pow_number_of_past_blocks","description":"Supported proof of work number of blocks behind current height allowed","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"spam_pow_number_of_tx_per_block","description":"Allowed number of transactions per block","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"spam_pow_increasing_difficulty","description":"Boolean indicating whether increasing difficulty is allowed for using the\nsame height for more than `spam_pow_number_of_past_blocks` transactions","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_id","description":"Network chain id from which the block comes from","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveEventBusRequest","longName":"ObserveEventBusRequest","fullName":"vega.api.v1.ObserveEventBusRequest","description":"Request to subscribe to a stream of one or more event types from the Vega event bus","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"type","description":"One or more types of event, required field","label":"repeated","type":"BusEventType","longType":"vega.events.v1.BusEventType","fullType":"vega.events.v1.BusEventType","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_id","description":"Market ID to filter events for, optional field. If omitted, no markets will be filtered out.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party_id","description":"Party ID to filter events for, optional field. If omitted, no parties will be filtered out.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"batch_size","description":"Batch size, optional field -\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ObserveEventBusResponse","longName":"ObserveEventBusResponse","fullName":"vega.api.v1.ObserveEventBusResponse","description":"Response to a subscribed stream of events from the Vega event bus","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"events","description":"One or more events that match the subscription request criteria.","label":"repeated","type":"BusEvent","longType":"vega.events.v1.BusEvent","fullType":"vega.events.v1.BusEvent","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PoWBlockState","longName":"PoWBlockState","fullName":"vega.api.v1.PoWBlockState","description":"Proof of Work state for a given block","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"block_height","description":"Block height for the current Proof of Work state statistics","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_hash","description":"Hash of the current block","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transactions_seen","description":"Total number of transactions seen in the block","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"expected_difficulty","description":"This is the minimum required difficulty for the next transaction submitted on this block\nif it is possible to submit more transactions on this block, otherwise nil.","label":"optional","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":true,"oneofdecl":"_expected_difficulty","defaultValue":""},{"name":"hash_function","description":"Hashing function used to calculate the block hash","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"difficulty","description":"Base difficulty for this block for when transactions seen < tx_per_block","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_per_block","description":"Number of transactions that can have their proof-of-work calculated with this block hash before\neither the difficulty increases, or no more transactions can use this block hash","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"increasing_difficulty","description":"Whether or not this block allows for increasing proof-of-work difficulty if the\ntx-per-block-hash limit has been reached","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PoWStatistic","longName":"PoWStatistic","fullName":"vega.api.v1.PoWStatistic","description":"Proof of work statistics for a party","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"block_states","description":"Block state for each block in scope for PoW calculation","label":"repeated","type":"PoWBlockState","longType":"PoWBlockState","fullType":"vega.api.v1.PoWBlockState","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"banned_until","description":"PoW banned until timestamp as RFC3339Nano","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_banned_until","defaultValue":""},{"name":"number_of_past_blocks","description":"Number of block behind the current block whose hash can be used for proof-of-work calculations","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PropagateChainEventRequest","longName":"PropagateChainEventRequest","fullName":"vega.api.v1.PropagateChainEventRequest","description":"Request for a new event sent by the blockchain queue to be propagated on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"event","description":"Chain event to propagate.","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pub_key","description":"Public key of the key pair used to sign messages.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"signature","description":"Signature generated by the private key associated with the public key.","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PropagateChainEventResponse","longName":"PropagateChainEventResponse","fullName":"vega.api.v1.PropagateChainEventResponse","description":"Response for a new event sent by the blockchain queue to be propagated on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"success","description":"Success will be true if the event was accepted by the node,\n**Important** - success does not mean that the event is confirmed by consensus","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SpamStatistic","longName":"SpamStatistic","fullName":"vega.api.v1.SpamStatistic","description":"Statistics for a given spam policy","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"count_for_epoch","description":"Current transaction count received from the party during this epoch for this policy","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_for_epoch","description":"Maximum number of transactions allowed for this policy in an epoch","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"banned_until","description":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_banned_until","defaultValue":""},{"name":"min_tokens_required","description":"Effective minimum number of tokens required to submit a transaction of this type","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SpamStatistics","longName":"SpamStatistics","fullName":"vega.api.v1.SpamStatistics","description":"Complete spam statistics captured for a given party","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposals","description":"Statistics for proposal transactions made by the party.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"delegations","description":"Statistics for delegation transactions made by the party.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"transfers","description":"Statistics for transfer transactions made by the party.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"node_announcements","description":"Statistics for node announcement transactions made by the party.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"votes","description":"Statistics for proposal votes made by the party.","label":"","type":"VoteSpamStatistics","longType":"VoteSpamStatistics","fullType":"vega.api.v1.VoteSpamStatistics","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"pow","description":"Statistics for proof of work difficulty observed per block for the party.","label":"","type":"PoWStatistic","longType":"PoWStatistic","fullType":"vega.api.v1.PoWStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"issue_signatures","description":"Statistics for multisig signatures issued for the party.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Epoch in which these statistics apply to.","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"create_referral_set","description":"Statistics for transactions made by the party to create referral sets.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"update_referral_set","description":"Statistics for transactions made by the party to update referral sets.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"apply_referral_code","description":"Statistics for transactions made by the party to apply referral codes.","label":"","type":"SpamStatistic","longType":"SpamStatistic","fullType":"vega.api.v1.SpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"Statistics","longName":"Statistics","fullName":"vega.api.v1.Statistics","description":"Vega domain specific statistics as reported by the node the caller is connected to","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"block_height","description":"Current block height as reported by the Vega blockchain","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"backlog_length","description":"Current backlog length i.e., number of transactions, that are waiting to be included in a block","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_peers","description":"Total number of connected peers to this node","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"genesis_time","description":"Genesis block date and time formatted in ISO-8601 datetime format with nanosecond precision","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"current_time","description":"Current system date and time formatted in ISO-8601 datetime format with nanosecond precision","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"vega_time","description":"Current Vega date and time formatted in ISO-8601 datetime format with nanosecond precision","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"status","description":"Status of the connection to the Vega blockchain","label":"","type":"ChainStatus","longType":"vega.ChainStatus","fullType":"vega.ChainStatus","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_per_block","description":"Transactions per block","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"average_tx_bytes","description":"Average transaction size in bytes","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"average_orders_per_block","description":"Average orders per block","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trades_per_second","description":"Trades emitted per second","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"orders_per_second","description":"Orders processed per second","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_markets","description":"Total markets on this Vega network","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_amend_order","description":"Total number of order amendments since genesis across all markets","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_cancel_order","description":"Total number of order cancellations since genesis across all markets","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_create_order","description":"Total number of order submissions since genesis across all markets","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_orders","description":"Total number of orders processed since genesis across all markets","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"total_trades","description":"Total number of trades emitted since genesis across all markets","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_subscriptions","description":"Current number of stream subscribers to order data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"trade_subscriptions","description":"Current number of stream subscribers to trade data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"candle_subscriptions","description":"Current number of stream subscribers to candlestick data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_depth_subscriptions","description":"Current number of stream subscribers to market depth data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"positions_subscriptions","description":"Current number of stream subscribers to positions data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"account_subscriptions","description":"Current number of stream subscribers to account data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_data_subscriptions","description":"Current number of stream subscribers to market data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"app_version_hash","description":"Version hash of the Vega node software","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"app_version","description":"Version of the Vega node software","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_version","description":"Version of the underlying Vega blockchain","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_duration","description":"Current block duration, in nanoseconds","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"uptime","description":"Total uptime for this node formatted in ISO-8601 datetime format with nanosecond precision","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"chain_id","description":"Unique ID for the underlying Vega blockchain","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market_depth_updates_subscriptions","description":"Current number of stream subscribers to market depth update data","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"block_hash","description":"Current block hash","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"Current epoch","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_start_time","description":"Epoch start time","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_expiry_time","description":"Epoch expected end time","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"event_count","description":"Number of events in the last block","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"events_per_second","description":"Rate of events per second in the last block","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"StatisticsRequest","longName":"StatisticsRequest","fullName":"vega.api.v1.StatisticsRequest","description":"Request for statistics about the Vega network","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"StatisticsResponse","longName":"StatisticsResponse","fullName":"vega.api.v1.StatisticsResponse","description":"Response containing statistics about the Vega network","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"statistics","description":"","label":"","type":"Statistics","longType":"Statistics","fullType":"vega.api.v1.Statistics","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SubmitRawTransactionRequest","longName":"SubmitRawTransactionRequest","fullName":"vega.api.v1.SubmitRawTransactionRequest","description":"Request for submitting a version agnostic transaction on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tx","description":"Bundle of signed payload and signature marshalled into a byte array, to form a transaction that will be submitted to the Vega blockchain","label":"","type":"bytes","longType":"bytes","fullType":"bytes","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Type of transaction request, for example ASYNC, meaning the transaction will be submitted and not block on a response","label":"","type":"Type","longType":"SubmitRawTransactionRequest.Type","fullType":"vega.api.v1.SubmitRawTransactionRequest.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SubmitRawTransactionResponse","longName":"SubmitRawTransactionResponse","fullName":"vega.api.v1.SubmitRawTransactionResponse","description":"Response for submitting a version agnostic transaction on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"success","description":"Whether or not the transaction was validated and submitted to the chain's mempool.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"code","description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data","description":"Further details for why the transaction was not successfully submitted.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log","description":"Further details for the underlying consensus layer of the result of the transaction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"height","description":"Unused.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SubmitTransactionRequest","longName":"SubmitTransactionRequest","fullName":"vega.api.v1.SubmitTransactionRequest","description":"Request for submitting a transaction v2 on Vega","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"tx","description":"Transaction containing a command to execute on the network, and a signature to provide authentication.","label":"","type":"Transaction","longType":"vega.commands.v1.Transaction","fullType":"vega.commands.v1.Transaction","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"Method of submission.","label":"","type":"Type","longType":"SubmitTransactionRequest.Type","fullType":"vega.api.v1.SubmitTransactionRequest.Type","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"SubmitTransactionResponse","longName":"SubmitTransactionResponse","fullName":"vega.api.v1.SubmitTransactionResponse","description":"Response for submitting a transaction on the network.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"success","description":"Whether or not the transaction was validated and submitted to the chain's mempool.","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"tx_hash","description":"Hash of the transaction, which can be used to identify the transaction in a node's event stream.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"code","description":"Error code to indicate the category of failure if the transaction was not successfully submitted.","label":"","type":"uint32","longType":"uint32","fullType":"uint32","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"data","description":"Further details for why the transaction was not successfully submitted.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"log","description":"Further details for the underlying consensus layer of the result of the transaction.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"height","description":"Unused.","label":"","type":"int64","longType":"int64","fullType":"int64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VoteSpamStatistic","longName":"VoteSpamStatistic","fullName":"vega.api.v1.VoteSpamStatistic","description":"Vote statistics for the voting spam policies\nwhich are calculated as a ratio of the total votes\nthat have been rejected.","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposal","description":"Unique ID of the proposal being voted on by the party.","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"count_for_epoch","description":"Current vote count received from the party for the given proposal during this epoch","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"min_tokens_required","description":"Effective minimum number of tokens required to vote on the proposal","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"VoteSpamStatistics","longName":"VoteSpamStatistics","fullName":"vega.api.v1.VoteSpamStatistics","description":"Voting statistics by proposal for a given party for the current epoch","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"statistics","description":"List of statistics for proposals voted on by the party","label":"repeated","type":"VoteSpamStatistic","longType":"VoteSpamStatistic","fullType":"vega.api.v1.VoteSpamStatistic","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"max_for_epoch","description":"Maximum number of votes per proposal allowed in an epoch","label":"","type":"uint64","longType":"uint64","fullType":"uint64","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"banned_until","description":"If blocked the timestamp when the party will be unblocked as RFC3339Nano","label":"optional","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":true,"oneofdecl":"_banned_until","defaultValue":""}]}],"services":[{"name":"CoreService","longName":"CoreService","fullName":"vega.api.v1.CoreService","description":"","methods":[{"name":"SubmitTransaction","description":"Submit transaction\n\nSubmit a signed transaction to the network containing a command to be executed such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","requestType":"SubmitTransactionRequest","requestLongType":"SubmitTransactionRequest","requestFullType":"vega.api.v1.SubmitTransactionRequest","requestStreaming":false,"responseType":"SubmitTransactionResponse","responseLongType":"SubmitTransactionResponse","responseFullType":"vega.api.v1.SubmitTransactionResponse","responseStreaming":false},{"name":"PropagateChainEvent","description":"Chain event\n\nPropagate a chain event","requestType":"PropagateChainEventRequest","requestLongType":"PropagateChainEventRequest","requestFullType":"vega.api.v1.PropagateChainEventRequest","requestStreaming":false,"responseType":"PropagateChainEventResponse","responseLongType":"PropagateChainEventResponse","responseFullType":"vega.api.v1.PropagateChainEventResponse","responseStreaming":false},{"name":"Statistics","description":"Statistics\n\nGet statistics on Vega","requestType":"StatisticsRequest","requestLongType":"StatisticsRequest","requestFullType":"vega.api.v1.StatisticsRequest","requestStreaming":false,"responseType":"StatisticsResponse","responseLongType":"StatisticsResponse","responseFullType":"vega.api.v1.StatisticsResponse","responseStreaming":false},{"name":"LastBlockHeight","description":"Blockchain height\n\nGet the height of the last tendermint block","requestType":"LastBlockHeightRequest","requestLongType":"LastBlockHeightRequest","requestFullType":"vega.api.v1.LastBlockHeightRequest","requestStreaming":false,"responseType":"LastBlockHeightResponse","responseLongType":"LastBlockHeightResponse","responseFullType":"vega.api.v1.LastBlockHeightResponse","responseStreaming":false},{"name":"GetVegaTime","description":"Vega time\n\nGet current Vega time","requestType":"GetVegaTimeRequest","requestLongType":"GetVegaTimeRequest","requestFullType":"vega.api.v1.GetVegaTimeRequest","requestStreaming":false,"responseType":"GetVegaTimeResponse","responseLongType":"GetVegaTimeResponse","responseFullType":"vega.api.v1.GetVegaTimeResponse","responseStreaming":false},{"name":"ObserveEventBus","description":"Events subscription\n\nSubscribe to a stream of events from the core","requestType":"ObserveEventBusRequest","requestLongType":"ObserveEventBusRequest","requestFullType":"vega.api.v1.ObserveEventBusRequest","requestStreaming":true,"responseType":"ObserveEventBusResponse","responseLongType":"ObserveEventBusResponse","responseFullType":"vega.api.v1.ObserveEventBusResponse","responseStreaming":true},{"name":"SubmitRawTransaction","description":"Submit raw transaction\n\nSubmit a pre-serialised signed transaction containing a command to the network to be executed, such that if the submission is successful then it will be included in the chain's mempool.\nThe network will then attempt to execute the transaction in the next available block, where the results of its execution can be seen on the EventBus.","requestType":"SubmitRawTransactionRequest","requestLongType":"SubmitRawTransactionRequest","requestFullType":"vega.api.v1.SubmitRawTransactionRequest","requestStreaming":false,"responseType":"SubmitRawTransactionResponse","responseLongType":"SubmitRawTransactionResponse","responseFullType":"vega.api.v1.SubmitRawTransactionResponse","responseStreaming":false},{"name":"CheckTransaction","description":"Check transaction\n\nSend a signed transaction containing a command to the network to be checked, but not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","requestType":"CheckTransactionRequest","requestLongType":"CheckTransactionRequest","requestFullType":"vega.api.v1.CheckTransactionRequest","requestStreaming":false,"responseType":"CheckTransactionResponse","responseLongType":"CheckTransactionResponse","responseFullType":"vega.api.v1.CheckTransactionResponse","responseStreaming":false},{"name":"CheckRawTransaction","description":"Check raw transaction\n\nSend a pre-serialised transaction containing a command to the network to be checked, but then not added to the chain's mempool.\nThis is useful for checking the validity of a potential transaction before submitting it.","requestType":"CheckRawTransactionRequest","requestLongType":"CheckRawTransactionRequest","requestFullType":"vega.api.v1.CheckRawTransactionRequest","requestStreaming":false,"responseType":"CheckRawTransactionResponse","responseLongType":"CheckRawTransactionResponse","responseFullType":"vega.api.v1.CheckRawTransactionResponse","responseStreaming":false},{"name":"GetSpamStatistics","description":"Get Spam statistics\n\nGet the spam statistics for a given party.","requestType":"GetSpamStatisticsRequest","requestLongType":"GetSpamStatisticsRequest","requestFullType":"vega.api.v1.GetSpamStatisticsRequest","requestStreaming":false,"responseType":"GetSpamStatisticsResponse","responseLongType":"GetSpamStatisticsResponse","responseFullType":"vega.api.v1.GetSpamStatisticsResponse","responseStreaming":false}]}]},{"name":"vega/api/v1/corestate.proto","description":"","package":"vega.api.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":true,"enums":[],"extensions":[],"messages":[{"name":"Account","longName":"Account","fullName":"vega.api.v1.Account","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"balance","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"asset","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"type","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAccountsRequest","longName":"ListAccountsRequest","fullName":"vega.api.v1.ListAccountsRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"market","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAccountsResponse","longName":"ListAccountsResponse","fullName":"vega.api.v1.ListAccountsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"accounts","description":"","label":"repeated","type":"Account","longType":"Account","fullType":"vega.api.v1.Account","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAssetsRequest","longName":"ListAssetsRequest","fullName":"vega.api.v1.ListAssetsRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"asset","description":"optional ID","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListAssetsResponse","longName":"ListAssetsResponse","fullName":"vega.api.v1.ListAssetsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"assets","description":"","label":"repeated","type":"Asset","longType":"vega.Asset","fullType":"vega.Asset","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListDelegationsRequest","longName":"ListDelegationsRequest","fullName":"vega.api.v1.ListDelegationsRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"node","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"epoch_seq","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListDelegationsResponse","longName":"ListDelegationsResponse","fullName":"vega.api.v1.ListDelegationsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"delegations","description":"","label":"repeated","type":"Delegation","longType":"vega.Delegation","fullType":"vega.Delegation","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListMarketsDataRequest","longName":"ListMarketsDataRequest","fullName":"vega.api.v1.ListMarketsDataRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListMarketsDataResponse","longName":"ListMarketsDataResponse","fullName":"vega.api.v1.ListMarketsDataResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"markets_data","description":"","label":"repeated","type":"MarketData","longType":"vega.MarketData","fullType":"vega.MarketData","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListMarketsRequest","longName":"ListMarketsRequest","fullName":"vega.api.v1.ListMarketsRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"market","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListMarketsResponse","longName":"ListMarketsResponse","fullName":"vega.api.v1.ListMarketsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"markets","description":"","label":"repeated","type":"Market","longType":"vega.Market","fullType":"vega.Market","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListNetworkLimitsRequest","longName":"ListNetworkLimitsRequest","fullName":"vega.api.v1.ListNetworkLimitsRequest","description":"","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"ListNetworkLimitsResponse","longName":"ListNetworkLimitsResponse","fullName":"vega.api.v1.ListNetworkLimitsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"network_limits","description":"","label":"","type":"NetworkLimits","longType":"vega.NetworkLimits","fullType":"vega.NetworkLimits","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListNetworkParametersRequest","longName":"ListNetworkParametersRequest","fullName":"vega.api.v1.ListNetworkParametersRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"network_parameter_key","description":"optional parameter key","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListNetworkParametersResponse","longName":"ListNetworkParametersResponse","fullName":"vega.api.v1.ListNetworkParametersResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"network_parameters","description":"","label":"repeated","type":"NetworkParameter","longType":"vega.NetworkParameter","fullType":"vega.NetworkParameter","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartiesRequest","longName":"ListPartiesRequest","fullName":"vega.api.v1.ListPartiesRequest","description":"","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"ListPartiesResponse","longName":"ListPartiesResponse","fullName":"vega.api.v1.ListPartiesResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"parties","description":"","label":"repeated","type":"Party","longType":"vega.Party","fullType":"vega.Party","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartiesStakeRequest","longName":"ListPartiesStakeRequest","fullName":"vega.api.v1.ListPartiesStakeRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListPartiesStakeResponse","longName":"ListPartiesStakeResponse","fullName":"vega.api.v1.ListPartiesStakeResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"parties_stake","description":"","label":"repeated","type":"PartyStake","longType":"PartyStake","fullType":"vega.api.v1.PartyStake","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListProposalsRequest","longName":"ListProposalsRequest","fullName":"vega.api.v1.ListProposalsRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposal","description":"optional ID","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"proposer","description":"optional party","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListProposalsResponse","longName":"ListProposalsResponse","fullName":"vega.api.v1.ListProposalsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposals","description":"","label":"repeated","type":"Proposal","longType":"vega.Proposal","fullType":"vega.Proposal","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListValidatorsRequest","longName":"ListValidatorsRequest","fullName":"vega.api.v1.ListValidatorsRequest","description":"","hasExtensions":false,"hasFields":false,"hasOneofs":false,"extensions":[],"fields":[]},{"name":"ListValidatorsResponse","longName":"ListValidatorsResponse","fullName":"vega.api.v1.ListValidatorsResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"validators","description":"","label":"repeated","type":"ValidatorUpdate","longType":"vega.events.v1.ValidatorUpdate","fullType":"vega.events.v1.ValidatorUpdate","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListVotesRequest","longName":"ListVotesRequest","fullName":"vega.api.v1.ListVotesRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"proposal","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"ListVotesResponse","longName":"ListVotesResponse","fullName":"vega.api.v1.ListVotesResponse","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"votes","description":"","label":"repeated","type":"Vote","longType":"vega.Vote","fullType":"vega.Vote","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]},{"name":"PartyStake","longName":"PartyStake","fullName":"vega.api.v1.PartyStake","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":false,"extensions":[],"fields":[{"name":"party","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"current_stake_available","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"stake_linkings","description":"","label":"repeated","type":"StakeLinking","longType":"vega.events.v1.StakeLinking","fullType":"vega.events.v1.StakeLinking","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""}]}],"services":[{"name":"CoreStateService","longName":"CoreStateService","fullName":"vega.api.v1.CoreStateService","description":"","methods":[{"name":"ListAccounts","description":"Accounts list\n\nGet a list of accounts. This endpoint may not be exposed by mainnet nodes.","requestType":"ListAccountsRequest","requestLongType":"ListAccountsRequest","requestFullType":"vega.api.v1.ListAccountsRequest","requestStreaming":false,"responseType":"ListAccountsResponse","responseLongType":"ListAccountsResponse","responseFullType":"vega.api.v1.ListAccountsResponse","responseStreaming":false},{"name":"ListAssets","description":"Assets list\n\nGet a list of assets. This endpoint may not be exposed by mainnet nodes.","requestType":"ListAssetsRequest","requestLongType":"ListAssetsRequest","requestFullType":"vega.api.v1.ListAssetsRequest","requestStreaming":false,"responseType":"ListAssetsResponse","responseLongType":"ListAssetsResponse","responseFullType":"vega.api.v1.ListAssetsResponse","responseStreaming":false},{"name":"ListNetworkParameters","description":"Network parameters list\n\nGet a list of network parameters. This endpoint may not be exposed by mainnet nodes.","requestType":"ListNetworkParametersRequest","requestLongType":"ListNetworkParametersRequest","requestFullType":"vega.api.v1.ListNetworkParametersRequest","requestStreaming":false,"responseType":"ListNetworkParametersResponse","responseLongType":"ListNetworkParametersResponse","responseFullType":"vega.api.v1.ListNetworkParametersResponse","responseStreaming":false},{"name":"ListNetworkLimits","description":"Network limits list\n\nGet a list of network limits. This endpoint may not be exposed by mainnet nodes.","requestType":"ListNetworkLimitsRequest","requestLongType":"ListNetworkLimitsRequest","requestFullType":"vega.api.v1.ListNetworkLimitsRequest","requestStreaming":false,"responseType":"ListNetworkLimitsResponse","responseLongType":"ListNetworkLimitsResponse","responseFullType":"vega.api.v1.ListNetworkLimitsResponse","responseStreaming":false},{"name":"ListParties","description":"Parties list\n\nGet a list of parties. This endpoint may not be exposed by mainnet nodes.","requestType":"ListPartiesRequest","requestLongType":"ListPartiesRequest","requestFullType":"vega.api.v1.ListPartiesRequest","requestStreaming":false,"responseType":"ListPartiesResponse","responseLongType":"ListPartiesResponse","responseFullType":"vega.api.v1.ListPartiesResponse","responseStreaming":false},{"name":"ListValidators","description":"Validators list\n\nGet a list of validators. This endpoint may not be exposed by mainnet nodes.","requestType":"ListValidatorsRequest","requestLongType":"ListValidatorsRequest","requestFullType":"vega.api.v1.ListValidatorsRequest","requestStreaming":false,"responseType":"ListValidatorsResponse","responseLongType":"ListValidatorsResponse","responseFullType":"vega.api.v1.ListValidatorsResponse","responseStreaming":false},{"name":"ListMarkets","description":"Markets list\n\nGet a list of markets. This endpoint may not be exposed by mainnet nodes.","requestType":"ListMarketsRequest","requestLongType":"ListMarketsRequest","requestFullType":"vega.api.v1.ListMarketsRequest","requestStreaming":false,"responseType":"ListMarketsResponse","responseLongType":"ListMarketsResponse","responseFullType":"vega.api.v1.ListMarketsResponse","responseStreaming":false},{"name":"ListProposals","description":"Proposals list\n\nGet a list of proposals. This endpoint may not be exposed by mainnet nodes.","requestType":"ListProposalsRequest","requestLongType":"ListProposalsRequest","requestFullType":"vega.api.v1.ListProposalsRequest","requestStreaming":false,"responseType":"ListProposalsResponse","responseLongType":"ListProposalsResponse","responseFullType":"vega.api.v1.ListProposalsResponse","responseStreaming":false},{"name":"ListMarketsData","description":"Markets data list\n\nGet a list of markets' data. This endpoint may not be exposed by mainnet nodes.","requestType":"ListMarketsDataRequest","requestLongType":"ListMarketsDataRequest","requestFullType":"vega.api.v1.ListMarketsDataRequest","requestStreaming":false,"responseType":"ListMarketsDataResponse","responseLongType":"ListMarketsDataResponse","responseFullType":"vega.api.v1.ListMarketsDataResponse","responseStreaming":false},{"name":"ListVotes","description":"Votes list\n\nGet a list of votes. This endpoint may not be exposed by mainnet nodes.","requestType":"ListVotesRequest","requestLongType":"ListVotesRequest","requestFullType":"vega.api.v1.ListVotesRequest","requestStreaming":false,"responseType":"ListVotesResponse","responseLongType":"ListVotesResponse","responseFullType":"vega.api.v1.ListVotesResponse","responseStreaming":false},{"name":"ListPartiesStake","description":"Parties stake list\n\nGet a list of parties' stake. This endpoint may not be exposed by mainnet nodes.","requestType":"ListPartiesStakeRequest","requestLongType":"ListPartiesStakeRequest","requestFullType":"vega.api.v1.ListPartiesStakeRequest","requestStreaming":false,"responseType":"ListPartiesStakeResponse","responseLongType":"ListPartiesStakeResponse","responseFullType":"vega.api.v1.ListPartiesStakeResponse","responseStreaming":false},{"name":"ListDelegations","description":"Delegations list\n\nGet a list of delegations. This endpoint may not be exposed by mainnet nodes.","requestType":"ListDelegationsRequest","requestLongType":"ListDelegationsRequest","requestFullType":"vega.api.v1.ListDelegationsRequest","requestStreaming":false,"responseType":"ListDelegationsResponse","responseLongType":"ListDelegationsResponse","responseFullType":"vega.api.v1.ListDelegationsResponse","responseStreaming":false}]}]},{"name":"vega/wallet/v1/wallet.proto","description":"","package":"vega.wallet.v1","hasEnums":false,"hasExtensions":false,"hasMessages":true,"hasServices":false,"enums":[],"extensions":[],"messages":[{"name":"SubmitTransactionRequest","longName":"SubmitTransactionRequest","fullName":"vega.wallet.v1.SubmitTransactionRequest","description":"","hasExtensions":false,"hasFields":true,"hasOneofs":true,"extensions":[],"fields":[{"name":"pub_key","description":"","label":"","type":"string","longType":"string","fullType":"string","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"propagate","description":"","label":"","type":"bool","longType":"bool","fullType":"bool","ismap":false,"isoneof":false,"oneofdecl":"","defaultValue":""},{"name":"order_submission","description":"User commands","label":"","type":"OrderSubmission","longType":"vega.commands.v1.OrderSubmission","fullType":"vega.commands.v1.OrderSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"order_cancellation","description":"","label":"","type":"OrderCancellation","longType":"vega.commands.v1.OrderCancellation","fullType":"vega.commands.v1.OrderCancellation","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"order_amendment","description":"","label":"","type":"OrderAmendment","longType":"vega.commands.v1.OrderAmendment","fullType":"vega.commands.v1.OrderAmendment","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"withdraw_submission","description":"","label":"","type":"WithdrawSubmission","longType":"vega.commands.v1.WithdrawSubmission","fullType":"vega.commands.v1.WithdrawSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"proposal_submission","description":"","label":"","type":"ProposalSubmission","longType":"vega.commands.v1.ProposalSubmission","fullType":"vega.commands.v1.ProposalSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"vote_submission","description":"","label":"","type":"VoteSubmission","longType":"vega.commands.v1.VoteSubmission","fullType":"vega.commands.v1.VoteSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"liquidity_provision_submission","description":"","label":"","type":"LiquidityProvisionSubmission","longType":"vega.commands.v1.LiquidityProvisionSubmission","fullType":"vega.commands.v1.LiquidityProvisionSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"delegate_submission","description":"","label":"","type":"DelegateSubmission","longType":"vega.commands.v1.DelegateSubmission","fullType":"vega.commands.v1.DelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"undelegate_submission","description":"","label":"","type":"UndelegateSubmission","longType":"vega.commands.v1.UndelegateSubmission","fullType":"vega.commands.v1.UndelegateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"liquidity_provision_cancellation","description":"","label":"","type":"LiquidityProvisionCancellation","longType":"vega.commands.v1.LiquidityProvisionCancellation","fullType":"vega.commands.v1.LiquidityProvisionCancellation","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"liquidity_provision_amendment","description":"","label":"","type":"LiquidityProvisionAmendment","longType":"vega.commands.v1.LiquidityProvisionAmendment","fullType":"vega.commands.v1.LiquidityProvisionAmendment","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"transfer","description":"","label":"","type":"Transfer","longType":"vega.commands.v1.Transfer","fullType":"vega.commands.v1.Transfer","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"cancel_transfer","description":"","label":"","type":"CancelTransfer","longType":"vega.commands.v1.CancelTransfer","fullType":"vega.commands.v1.CancelTransfer","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"announce_node","description":"","label":"","type":"AnnounceNode","longType":"vega.commands.v1.AnnounceNode","fullType":"vega.commands.v1.AnnounceNode","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"batch_market_instructions","description":"","label":"","type":"BatchMarketInstructions","longType":"vega.commands.v1.BatchMarketInstructions","fullType":"vega.commands.v1.BatchMarketInstructions","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"stop_orders_submission","description":"","label":"","type":"StopOrdersSubmission","longType":"vega.commands.v1.StopOrdersSubmission","fullType":"vega.commands.v1.StopOrdersSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"stop_orders_cancellation","description":"","label":"","type":"StopOrdersCancellation","longType":"vega.commands.v1.StopOrdersCancellation","fullType":"vega.commands.v1.StopOrdersCancellation","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"create_referral_set","description":"","label":"","type":"CreateReferralSet","longType":"vega.commands.v1.CreateReferralSet","fullType":"vega.commands.v1.CreateReferralSet","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"update_referral_set","description":"","label":"","type":"UpdateReferralSet","longType":"vega.commands.v1.UpdateReferralSet","fullType":"vega.commands.v1.UpdateReferralSet","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"apply_referral_code","description":"","label":"","type":"ApplyReferralCode","longType":"vega.commands.v1.ApplyReferralCode","fullType":"vega.commands.v1.ApplyReferralCode","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"update_margin_mode","description":"","label":"","type":"UpdateMarginMode","longType":"vega.commands.v1.UpdateMarginMode","fullType":"vega.commands.v1.UpdateMarginMode","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"join_team","description":"","label":"","type":"JoinTeam","longType":"vega.commands.v1.JoinTeam","fullType":"vega.commands.v1.JoinTeam","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"batch_proposal_submission","description":"","label":"","type":"BatchProposalSubmission","longType":"vega.commands.v1.BatchProposalSubmission","fullType":"vega.commands.v1.BatchProposalSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"update_party_profile","description":"","label":"","type":"UpdatePartyProfile","longType":"vega.commands.v1.UpdatePartyProfile","fullType":"vega.commands.v1.UpdatePartyProfile","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"node_vote","description":"Validator commands","label":"","type":"NodeVote","longType":"vega.commands.v1.NodeVote","fullType":"vega.commands.v1.NodeVote","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"node_signature","description":"","label":"","type":"NodeSignature","longType":"vega.commands.v1.NodeSignature","fullType":"vega.commands.v1.NodeSignature","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"chain_event","description":"","label":"","type":"ChainEvent","longType":"vega.commands.v1.ChainEvent","fullType":"vega.commands.v1.ChainEvent","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"key_rotate_submission","description":"","label":"","type":"KeyRotateSubmission","longType":"vega.commands.v1.KeyRotateSubmission","fullType":"vega.commands.v1.KeyRotateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"state_variable_proposal","description":"","label":"","type":"StateVariableProposal","longType":"vega.commands.v1.StateVariableProposal","fullType":"vega.commands.v1.StateVariableProposal","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"validator_heartbeat","description":"","label":"","type":"ValidatorHeartbeat","longType":"vega.commands.v1.ValidatorHeartbeat","fullType":"vega.commands.v1.ValidatorHeartbeat","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"ethereum_key_rotate_submission","description":"","label":"","type":"EthereumKeyRotateSubmission","longType":"vega.commands.v1.EthereumKeyRotateSubmission","fullType":"vega.commands.v1.EthereumKeyRotateSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"protocol_upgrade_proposal","description":"","label":"","type":"ProtocolUpgradeProposal","longType":"vega.commands.v1.ProtocolUpgradeProposal","fullType":"vega.commands.v1.ProtocolUpgradeProposal","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"issue_signatures","description":"","label":"","type":"IssueSignatures","longType":"vega.commands.v1.IssueSignatures","fullType":"vega.commands.v1.IssueSignatures","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""},{"name":"oracle_data_submission","description":"Oracle commands","label":"","type":"OracleDataSubmission","longType":"vega.commands.v1.OracleDataSubmission","fullType":"vega.commands.v1.OracleDataSubmission","ismap":false,"isoneof":true,"oneofdecl":"command","defaultValue":""}]}],"services":[]}]} \ No newline at end of file diff --git a/specs/v0.74.0-preview.6/datanode-schema.graphql b/specs/v0.74.0/schema.graphql similarity index 100% rename from specs/v0.74.0-preview.6/datanode-schema.graphql rename to specs/v0.74.0/schema.graphql diff --git a/specs/v0.74.0/trading_data_v2.openapi.json b/specs/v0.74.0/trading_data_v2.openapi.json new file mode 100644 index 000000000..1a040dded --- /dev/null +++ b/specs/v0.74.0/trading_data_v2.openapi.json @@ -0,0 +1 @@ +{"openapi":"3.0.0","info":{"title":"Vega data node APIs","version":"v0.74.0-preview.6"},"servers":[{"url":"https://api.n00.testnet.vega.rocks","description":"n00 (data node)"},{"url":"https://api.n06.testnet.vega.rocks","description":"n06 (data node)"},{"url":"https://api.n07.testnet.vega.rocks","description":"n07 (data node)"},{"url":"https://api.n08.testnet.vega.rocks","description":"n08 (data node)"}],"paths":{"/api/v2/accounts":{"get":{"parameters":[{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListAccountsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Get a list of accounts matching the supplied filter, including their current balances.\nIf a given account has never had a balance, it will be absent from the list.","operationId":"TradingDataService_ListAccounts","summary":"List accounts"}},"/api/v2/asset/{assetId}":{"get":{"parameters":[{"description":"Asset ID to get data for.","in":"path","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetAssetResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a single asset using its ID. Use the assets list query to get an asset's ID","operationId":"TradingDataService_GetAsset","summary":"Get asset"}},"/api/v2/assets":{"get":{"parameters":[{"description":"Optional asset ID to list data for.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListAssetsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of assets available on the Vega network","operationId":"TradingDataService_ListAssets","summary":"List assets"}},"/api/v2/balance/changes":{"get":{"parameters":[{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListBalanceChangesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Get a list of the changes in account balances over a period of time.","operationId":"TradingDataService_ListBalanceChanges","summary":"List balance changes"}},"/api/v2/candle":{"get":{"parameters":[{"description":"Candle ID to retrieve candle data for.","in":"query","name":"candleId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds to retrieve candles from.","in":"query","name":"fromTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds to retrieve candles to.","in":"query","name":"toTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListCandleDataResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Get a list of candle data for a given candle ID. Candle IDs can be obtained by calling list-candle-intervals","operationId":"TradingDataService_ListCandleData","summary":"List candle data"}},"/api/v2/candle/intervals":{"get":{"parameters":[{"description":"Unique ID for the market to list candle intervals for.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListCandleIntervalsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Get a list of all available intervals for a given market along with the corresponding candle ID","operationId":"TradingDataService_ListCandleIntervals","summary":"List candle intervals"}},"/api/v2/checkpoints":{"get":{"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListCheckpointsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about checkpoints generated by the network","operationId":"TradingDataService_ListCheckpoints","summary":"List checkpoints"}},"/api/v2/delegations":{"get":{"parameters":[{"description":"Restrict delegations to those made by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict delegations to those made to the given node ID.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Return delegations made in the given epoch. If not set, delegations for the current epoch will be returned.","in":"query","name":"epochId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListDelegationsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the token delegations on the network","operationId":"TradingDataService_ListDelegations","summary":"List delegations"}},"/api/v2/deposit/{id}":{"get":{"parameters":[{"description":"Deposit ID to return data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetDepositResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a deposit by its ID","operationId":"TradingDataService_GetDeposit","summary":"Get deposit"}},"/api/v2/deposits":{"get":{"parameters":[{"description":"Restrict deposits to those made by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListDepositsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of deposits for a given party.\nIf a date range is provided, filtering will be based on the last time the deposit\nhas been updated in Vega time.","operationId":"TradingDataService_ListDeposits","summary":"List deposits"}},"/api/v2/epoch":{"get":{"parameters":[{"description":"Epoch ID. If provided, returns the epoch with the given ID.","in":"query","name":"id","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Block height. If provided, returns the epoch that the given block is in.","in":"query","name":"block","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetEpochResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get data for a specific epoch, if ID is omitted, it retrieves the current epoch","operationId":"TradingDataService_GetEpoch","summary":"Get epoch"}},"/api/v2/erc20/asset/limits/bundle":{"get":{"parameters":[{"description":"Proposal ID of the asset update proposal.","in":"query","name":"proposalId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetERC20SetAssetLimitsBundleResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signature bundle to update the token limits. These are `maxLifetimeDeposit` and `withdrawThreshold` for a given ERC20 token that is\nalready allowlisted in the collateral bridge.","operationId":"TradingDataService_GetERC20SetAssetLimitsBundle","summary":"Get ERC20 set asset limits bundle"}},"/api/v2/erc20/asset/list/bundle":{"get":{"parameters":[{"description":"Asset ID of the asset bundle requested.","in":"query","name":"assetId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetERC20ListAssetBundleResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signatures bundle to allowlist an ERC20 token in the collateral bridge","operationId":"TradingDataService_GetERC20ListAssetBundle","summary":"Get ERC20 list asset bundle"}},"/api/v2/erc20/asset/withdrawal/bundle":{"get":{"parameters":[{"description":"Withdrawal ID to retrieve.","in":"query","name":"withdrawalId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetERC20WithdrawalApprovalResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get the signature bundle to finalise a withdrawal on Ethereum","operationId":"TradingDataService_GetERC20WithdrawalApproval","summary":"Get ERC20 withdrawal approval"}},"/api/v2/erc20/multisigcontrol/signer/added/bundles":{"get":{"parameters":[{"description":"Node ID of the validator for which a signature bundle is required.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Ethereum address of the validator that will submit the bundle.","in":"query","name":"submitter","required":false,"schema":{"type":"string"}},{"description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was promoted to consensus validator.","in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListERC20MultiSigSignerAddedBundlesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of the signature bundles to add a particular validator to the signer list of the multisig contract","operationId":"TradingDataService_ListERC20MultiSigSignerAddedBundles","summary":"List ERC20 multi-sig signer added bundles"}},"/api/v2/erc20/multisigcontrol/signer/removed/bundles":{"get":{"parameters":[{"description":"Node ID of the validator of which a signature bundle is required.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Ethereum address of the validator that will submit the bundle.","in":"query","name":"submitter","required":false,"schema":{"type":"string"}},{"description":"Epoch in which the bundle was generated, i.e. the epoch in which the node was demoted from a consensus validator.","in":"query","name":"epochSeq","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListERC20MultiSigSignerRemovedBundlesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of the signature bundles to remove a particular validator from signer list of the multisig contract","operationId":"TradingDataService_ListERC20MultiSigSignerRemovedBundles","summary":"List ERC20 multi-sig signer removed bundles"}},"/api/v2/estimate/fee":{"get":{"parameters":[{"description":"Market ID, used to specify the fee factors.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Price at which the potential order is expected to trade.","in":"query","name":"price","required":true,"schema":{"type":"string"}},{"description":"Size at which the potential order is expected to trade.","in":"query","name":"size","required":true,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2EstimateFeeResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Estimate the fee that would be incurred for submitting an order\nwith the specified price and size on the market.","operationId":"TradingDataService_EstimateFee","summary":"Estimate fee"}},"/api/v2/estimate/margin":{"get":{"parameters":[{"description":"Market ID for the order.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Party ID of the order.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Order side - indicator for Seller or Buyer side.\n\n - SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","in":"query","name":"side","required":false,"schema":{"default":"SIDE_UNSPECIFIED","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"type":"string"}},{"description":"Type of the order.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","in":"query","name":"type","required":false,"schema":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"type":"string"}},{"description":"Size of order.","in":"query","name":"size","required":true,"schema":{"format":"uint64","type":"string"}},{"description":"Price of the asset.","in":"query","name":"price","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2EstimateMarginResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Estimate the margin that would be required for submitting this order","operationId":"TradingDataService_EstimateMargin","summary":"Estimate margin"}},"/api/v2/estimate/position":{"get":{"parameters":[{"description":"Market ID to estimate position for.","in":"query","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Open volume. This field is a signed integer scaled to the market's position decimal places.\nA negative number denotes a short position.","in":"query","name":"openVolume","required":true,"schema":{"format":"int64","type":"string"}},{"description":"Average entry price corresponding to the open volume. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","in":"query","name":"averageEntryPrice","required":true,"schema":{"type":"string"}},{"description":"Margin account balance. Needs to be provided scaled to asset decimal places.","in":"query","name":"marginAccountBalance","required":true,"schema":{"type":"string"}},{"description":"General account balance. Needs to be provided scaled to asset decimal places.","in":"query","name":"generalAccountBalance","required":true,"schema":{"type":"string"}},{"description":"Order margin account balance. Needs to be provided scaled to asset decimal places.","in":"query","name":"orderMarginAccountBalance","required":true,"schema":{"type":"string"}},{"description":"Margin mode for the party, cross margin or isolated margin.\n\n - MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","in":"query","name":"marginMode","required":false,"schema":{"default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"type":"string"}},{"description":"Margin factor to be used along with isolated margin mode.","in":"query","name":"marginFactor","required":false,"schema":{"type":"string"}},{"description":"Whether the estimated collateral increase should be included in available collateral for liquidation price calculation in isolated margin mode.","in":"query","name":"includeCollateralIncreaseInAvailableCollateral","required":false,"schema":{"type":"boolean"}},{"description":"Whether the liquidation price estimates should be scaled to market decimal places or by asset decimal places. If not set, asset decimal places are used.","in":"query","name":"scaleLiquidationPriceToMarketDecimals","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2EstimatePositionResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Estimate the margin that would be required for maintaining the specified position, collateral increase needed to open the specified position and the liquidation price estimate.\nMargin estimates are scaled to asset decimal places.\nLiquidation price estimates are scaled to asset decimal places by default, unless an argument to scale to market decimal places is specified in the request.","operationId":"TradingDataService_EstimatePosition","summary":"Estimate position"}},"/api/v2/fees/stats":{"get":{"parameters":[{"description":"Restrict fee statistics to those related for the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict fee statistics to those related for the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get referral fee statistics for. If not set, the last complete epoch is used.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict fee statistics to those for the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetFeesStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Fees"],"description":"Get accumulated fees, rewards, and applied discount information. Either a market or an asset must be supplied as filter.","operationId":"TradingDataService_GetFeesStats","summary":"Get fees statistics"}},"/api/v2/fees/stats/parties/{partyId}":{"get":{"parameters":[{"description":"Restrict fees statistics to those for the given party.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict fees statistics to those related to the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetFeesStatsForPartyResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Fees"],"description":"Get accumulated fees, rewards, and applied discount information. A party ID must be supplied as filter.","operationId":"TradingDataService_GetFeesStatsForParty","summary":"Get fees statistics for a party"}},"/api/v2/funding-payments":{"get":{"parameters":[{"description":"Party ID to get funding payment for.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict funding payments returned to those generated by the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListFundingPaymentsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of funding payment gains and losses for a party as a result of their position on a perpetual market when a funding\nperiod ends.","operationId":"TradingDataService_ListFundingPayments","summary":"List funding payments"}},"/api/v2/funding-periods/data-points/{marketId}":{"get":{"parameters":[{"description":"Market ID to get funding period data points for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict the data points to those with the given source type.\n\n - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market.","in":"query","name":"source","required":false,"schema":{"default":"SOURCE_UNSPECIFIED","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string"}},{"description":"Restrict the data points to those that contributed to the given funding period sequence.","in":"query","name":"seq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListFundingPeriodDataPointsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of data points for a perpetual market's funding periods.","operationId":"TradingDataService_ListFundingPeriodDataPoints","summary":"List funding period data points"}},"/api/v2/funding-periods/{marketId}":{"get":{"parameters":[{"description":"Market ID to get funding periods for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListFundingPeriodsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of funding periods for a perpetual market.","operationId":"TradingDataService_ListFundingPeriods","summary":"List funding periods"}},"/api/v2/games":{"get":{"parameters":[{"description":"Game ID to filter for.","in":"query","name":"gameId","required":false,"schema":{"type":"string"}},{"description":"First epoch to retrieve game data from. If not provided, defaults to the last epoch minus 30,\nor the first epoch available if not enough epochs have passed.","in":"query","name":"epochFrom","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Last epoch to retrieve game data to (inclusive). If not provided, defaults to the last epoch.","in":"query","name":"epochTo","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Entity scope to filter games for, i.e. team games or individual games only.\n\n - ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","in":"query","name":"entityScope","required":false,"schema":{"default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListGamesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Games"],"description":"Get a list of games and corresponding game data, given the provided filters","operationId":"TradingDataService_ListGames","summary":"List games"}},"/api/v2/governance":{"get":{"parameters":[{"description":"Proposal ID to get governance data for, if provided.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}},{"description":"Reference to get proposal data for, if provided.","in":"query","name":"reference","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetGovernanceDataResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a single proposal's details either by proposal ID or by reference","operationId":"TradingDataService_GetGovernanceData","summary":"Get governance data"}},"/api/v2/governances":{"get":{"parameters":[{"description":"Restrict proposals to those with the given state.\n\n - STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","in":"query","name":"proposalState","required":false,"schema":{"default":"STATE_UNSPECIFIED","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"type":"string"}},{"description":"Restrict proposals to those with the given type.\n\n - TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program","in":"query","name":"proposalType","required":false,"schema":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ALL","TYPE_NEW_MARKET","TYPE_UPDATE_MARKET","TYPE_NETWORK_PARAMETERS","TYPE_NEW_ASSET","TYPE_NEW_FREE_FORM","TYPE_UPDATE_ASSET","TYPE_NEW_SPOT_MARKET","TYPE_UPDATE_SPOT_MARKET","TYPE_NEW_TRANSFER","TYPE_CANCEL_TRANSFER","TYPE_UPDATE_MARKET_STATE","TYPE_UPDATE_REFERRAL_PROGRAM","TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM"],"type":"string"}},{"description":"Restrict proposals to those proposed by the given party ID.","in":"query","name":"proposerPartyId","required":false,"schema":{"type":"string"}},{"description":"Restrict proposals to those with the given reference.","in":"query","name":"proposalReference","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListGovernanceDataResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a list of proposals","operationId":"TradingDataService_ListGovernanceData","summary":"List governance data"}},"/api/v2/info":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2InfoResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Node information"],"description":"Get information about the data node.\nResponse contains a semver formatted version of the data node and the commit hash, from which the data node was built","operationId":"TradingDataService_Info","summary":"Data node information"}},"/api/v2/ledgerentry/export":{"get":{"parameters":[{"description":"Restrict exported ledger entries to those relating to the given party ID.","in":"query","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Restrict exported ledger entries to those relating to the given asset ID.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/apiHttpBody"}},"title":"Stream result of apiHttpBody","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger entries"],"description":"Export ledger entries records ledger entries to a csv file.\nMay or may not contain a date range - if no date range is provided, list all records for all times.\n\nLedger entries can be exported by:\n - export ledger entries for a single party for a given asset within a given time range\n - export ledger entries for a single party for a given asset for all times\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","operationId":"TradingDataService_ExportLedgerEntries","summary":"Export ledger entries"}},"/api/v2/ledgerentry/history":{"get":{"parameters":[{"description":"Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.","in":"query","name":"filter.closeOnAccountFilters","required":false,"schema":{"type":"boolean"}},{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.fromAccountFilter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.fromAccountFilter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.fromAccountFilter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.fromAccountFilter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"Restrict accounts to those holding balances in this asset ID.","in":"query","name":"filter.toAccountFilter.assetId","required":false,"schema":{"type":"string"}},{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.toAccountFilter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","explode":true,"in":"query","name":"filter.toAccountFilter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","explode":true,"in":"query","name":"filter.toAccountFilter.accountTypes","required":false,"schema":{"items":{"enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"},"type":"array"}},{"description":"List of transfer types that is used for filtering sender and receiver accounts.\n\n - TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.","explode":true,"in":"query","name":"filter.transferTypes","required":false,"schema":{"items":{"enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"type":"string"},"type":"array"}},{"description":"List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored.","in":"query","name":"filter.transferId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListLedgerEntriesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger entries"],"description":"Get a list of ledger entries within the given date range. The date range is restricted to a maximum of 5 days.\nThis query requests and sums the number of ledger entries from a given subset of accounts, specified via the 'filter' argument.\nIt returns a time series - implemented as a list of AggregateLedgerEntry structs - with a row for every time\nthe summed ledger entries of the set of specified accounts changes.\nEach account filter must contain no more than one party ID.\nAt least one party ID must be specified in the from or to account filter.\n\nEntries can be filtered by:\n - the sending account (market ID, asset ID, account type)\n - receiving account (market ID, asset ID, account type)\n - sending AND receiving account\n - transfer type either in addition to the above filters or as a standalone option\nNote: The date range is restricted to any 5 days.\n If no start or end date is provided, only ledger entries from the last 5 days will be returned.\n If a start and end date are provided, but the end date is more than 5 days after the start date, only data up to 5 days after the start date will be returned.\n If a start date is provided but no end date, the end date will be set to 5 days after the start date.\n If no start date is provided, but the end date is, the start date will be set to 5 days before the end date.","operationId":"TradingDataService_ListLedgerEntries","summary":"List ledger entries"}},"/api/v2/liquidity/all-provisions":{"get":{"parameters":[{"description":"Restrict liquidity provisions to those placed on the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those placed by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those with the given order reference.","in":"query","name":"reference","required":false,"schema":{"type":"string"}},{"description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","in":"query","name":"live","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListAllLiquidityProvisionsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"Get a list of liquidity provisions for a given market. This API returns a current and pending liquidity provision\nin the event that a provision has been updated by the provider but the updated provision will not be active until the next epoch.","operationId":"TradingDataService_ListAllLiquidityProvisions","summary":"List liquidity provisions"}},"/api/v2/liquidity/paidfees":{"get":{"parameters":[{"description":"Restrict fee data to those fees generated in the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict fee statistics to those paid in the given asset.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get paid liquidity fee statistics for. If omitted, the last complete epoch is used.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict fee data to those fees paid to the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListPaidLiquidityFeesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"List information about paid liquidity fees for a given market, or asset ID.","operationId":"TradingDataService_ListPaidLiquidityFees","summary":"List paid liquidity fees data"}},"/api/v2/liquidity/providers":{"get":{"parameters":[{"description":"Market ID to retrieve liquidity providers for. If omitted, you must provide a party ID.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to retrieve data for. If omitted, you must provide a market ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListLiquidityProvidersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"List information about active liquidity provider(s) for a given market, or liquidity provider's party ID.","operationId":"TradingDataService_ListLiquidityProviders","summary":"List liquidity providers data"}},"/api/v2/liquidity/provisions":{"get":{"parameters":[{"description":"Restrict liquidity provisions to those placed on the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those placed by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict liquidity provisions to those with the given order reference.","in":"query","name":"reference","required":false,"schema":{"type":"string"}},{"description":"Whether to include live liquidity provisions. If not set, live orders will not be included.","in":"query","name":"live","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListLiquidityProvisionsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"DEPRECATED: When a liquidity provider amends a provision, and it's accepted by the network, the pending\nprovision is returned by the API instead of the provision that is currently active.\nUse ListAllLiquidityProvisions instead.","operationId":"TradingDataService_ListLiquidityProvisions","summary":"List liquidity provisions"}},"/api/v2/margin-modes":{"get":{"parameters":[{"description":"Market ID to filter for.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter for.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListPartyMarginModesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["MarginModes"],"description":"Get a list of all margin modes, or for a specific market ID, or party ID.","operationId":"TradingDataService_ListPartyMarginModes","summary":"List margin modes per party per market"}},"/api/v2/margin/levels":{"get":{"parameters":[{"description":"Party ID for which to list the margin levels.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Market ID for which to list the margin levels.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListMarginLevelsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Margin levels"],"description":"Get a list margin levels that match the provided criteria. If no filter is provided, all margin levels will be returned.","operationId":"TradingDataService_ListMarginLevels","summary":"List margin levels"}},"/api/v2/market/data/{marketId}":{"get":{"parameters":[{"description":"Market ID to request data history for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetMarketDataHistoryByIDResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get market data history for a market ID from between a given date range","operationId":"TradingDataService_GetMarketDataHistoryByID","summary":"Get market data history"}},"/api/v2/market/data/{marketId}/latest":{"get":{"parameters":[{"description":"Market ID to retrieve market data for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetLatestMarketDataResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get the latest market data for a given market","operationId":"TradingDataService_GetLatestMarketData","summary":"Get latest market data"}},"/api/v2/market/depth/{marketId}/latest":{"get":{"parameters":[{"description":"Market ID to request market depth for, required field.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Maximum market depth.","in":"query","name":"maxDepth","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetLatestMarketDepthResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get the latest market depth for a given market","operationId":"TradingDataService_GetLatestMarketDepth","summary":"Get latest market depth"}},"/api/v2/market/{marketId}":{"get":{"parameters":[{"description":"Market ID of the market to retrieve data for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetMarketResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get information about a specific market using its ID. A market's ID will be the same as the ID of the proposal that\ngenerated it","operationId":"TradingDataService_GetMarket","summary":"Get market"}},"/api/v2/market/{marketId}/risk/factors":{"get":{"parameters":[{"description":"Market ID to get the risk factor for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetRiskFactorsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get risk factor data for a given market","operationId":"TradingDataService_GetRiskFactors","summary":"Get risk factors"}},"/api/v2/market/{marketId}/trade/latest":{"get":{"parameters":[{"description":"Market ID to retrieve the last trade for.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetLastTradeResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Get the last trade made for a given market.","operationId":"TradingDataService_GetLastTrade","summary":"Get last trade"}},"/api/v2/markets":{"get":{"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Whether to include settled markets. If not set, settled markets will be included.","in":"query","name":"includeSettled","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListMarketsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of markets","operationId":"TradingDataService_ListMarkets","summary":"List markets"}},"/api/v2/markets/data":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListLatestMarketDataResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Get a list of the latest market data for every market","operationId":"TradingDataService_ListLatestMarketData","summary":"List latest market data"}},"/api/v2/network/data":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetNetworkDataResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get data regarding the nodes of the network","operationId":"TradingDataService_GetNetworkData","summary":"Get network data"}},"/api/v2/network/limits":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetNetworkLimitsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get the network limits relating to asset and market creation","operationId":"TradingDataService_GetNetworkLimits","summary":"Get network limits"}},"/api/v2/network/parameters":{"get":{"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListNetworkParametersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the network parameter keys and their values","operationId":"TradingDataService_ListNetworkParameters","summary":"List network parameters"}},"/api/v2/network/parameters/{key}":{"get":{"parameters":[{"description":"Key identifying the network parameter.","in":"path","name":"key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetNetworkParameterResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a network parameter's value by its key","operationId":"TradingDataService_GetNetworkParameter","summary":"Get network parameter"}},"/api/v2/networkhistory":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetNetworkHistoryStatusResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get information about the current state of network history's IPFS swarm","operationId":"TradingDataService_GetNetworkHistoryStatus","summary":"Network history status"}},"/api/v2/networkhistory/bootstrap":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetNetworkHistoryBootstrapPeersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get a list of IPFS peers that can be used to initialise a new data node with network history","operationId":"TradingDataService_GetNetworkHistoryBootstrapPeers","summary":"Network history bootstrap peers"}},"/api/v2/networkhistory/export":{"get":{"parameters":[{"description":"Block to begin exporting from. Must be the first block of a history segment,\nwhich by default are 1000 blocks each; in that case - 1, 1001, 2001 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","in":"query","name":"fromBlock","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Last block to export up to and including. Must be the last block of a history segment\nwhich by default are 1000 blocks each; in that case - 1000, 2000, 3000 etc. are valid values.\nThis can be checked by first calling the API to list all network history segments.","in":"query","name":"toBlock","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Table to export data from.","in":"query","name":"table","required":false,"schema":{"default":"TABLE_UNSPECIFIED","enum":["TABLE_UNSPECIFIED","TABLE_BALANCES","TABLE_CHECKPOINTS","TABLE_DELEGATIONS","TABLE_LEDGER","TABLE_ORDERS","TABLE_TRADES","TABLE_MARKET_DATA","TABLE_MARGIN_LEVELS","TABLE_POSITIONS","TABLE_LIQUIDITY_PROVISIONS","TABLE_MARKETS","TABLE_DEPOSITS","TABLE_WITHDRAWALS","TABLE_BLOCKS","TABLE_REWARDS"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/apiHttpBody"}},"title":"Stream result of apiHttpBody","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Export CSV table data from network history between two block heights.\n\nThe requested block heights must fall on network history segment boundaries, which can\nbe discovered by calling the API to list all network history segments. By default\nsegments contain 1000 blocks. In that case ranges such as (1, 1000), (1001, 2000), (1, 3000)\nwould all fall on segment boundaries and be valid.\n\nThe generated CSV file is compressed into a ZIP file and returned, with the file name\nin the following format: `[chain id]-[table name]-[start block]-[end block].zip`\n\nIn gRPC, results are returned in a chunked stream of base64 encoded data.\n\nThrough the REST gateway, the base64 data chunks are decoded and streamed as a\n`content-type: application/zip` HTTP response.\n\nThe CSV exported data uses a comma as a DELIMITER between fields, and \" for QUOTE-ing fields.\n\nIf a value contains any of: DELIMITER, QUOTE, carriage return, or line feed then the whole\nvalue is prefixed and suffixed by the QUOTE character and any occurrence within\nthe value of a QUOTE character preceded by another QUOTE.\n\nA NULL is output as the NULL parameter string and is not quoted, while a non-NULL value\nmatching the NULL parameter string is quoted.\n\nFor example, with the default settings, a NULL is written as an unquoted empty string,\nwhile an empty string data value is written with double quotes.\n\nNote that CSV files produced may contain quoted values containing embedded carriage returns and line feeds.\nThus the files are not strictly one line per table row like text-format files.\n\nThe first row of the CSV file is a header that describes the contents of each column\nin subsequent rows.\n\nUsually the ZIP file will contain only a single CSV file. However it is possible that\nthe (from_block, to_block) request spans over a range of blocks in which the underlying\nschema of the database changes. For example, a column may have been added, removed, or renamed.\n\nIf this happens, the CSV file will be split at the point of the schema change and the zip\nfile will contain multiple CSV files, with a potentially different set of headers. The\n'version' number of the database schema is part of the in the CSV filename:\n\n `[chain id]-[table name]-[schema version]-[start block]-[end block].zip`\n\nFor example, a zip file might be called mainnet-sometable-000001-003000.zip\n\nAnd contain two CSV files: `mainnet-sometable-1-000001-002000.csv`:\n\ntimestamp, value\n1, foo\n2, bar\n\nAnd `mainnet-sometable-2-002001-003000.csv`:\n\ntimestamp, value, extra_value\n3, baz, apple\n\nIt is worth noting that the schema will not change within a single network history segment.\nbuf:lint:ignore RPC_RESPONSE_STANDARD_NAME\nbuf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE","operationId":"TradingDataService_ExportNetworkHistory","summary":"Export network history as CSV"}},"/api/v2/networkhistory/segments":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListAllNetworkHistorySegmentsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network history"],"description":"Get a list of all history segments stored by the data node currently connected to","operationId":"TradingDataService_ListAllNetworkHistorySegments","summary":"List all network history segments"}},"/api/v2/node/signatures":{"get":{"parameters":[{"description":"Resource ID to list signatures for.","in":"query","name":"id","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListNodeSignaturesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["ERC20 bridge"],"description":"Get a list of aggregate signatures from all the nodes of the network","operationId":"TradingDataService_ListNodeSignatures","summary":"List node signatures"}},"/api/v2/node/{id}":{"get":{"parameters":[{"description":"Node ID to get data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetNodeResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get information about a given node","operationId":"TradingDataService_GetNode","summary":"Get node"}},"/api/v2/nodes":{"get":{"parameters":[{"description":"Return the node list for the given epoch. If not set, the node list for the current epoch will be returned.","in":"query","name":"epochSeq","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListNodesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of the nodes on the network along with the related information.","operationId":"TradingDataService_ListNodes","summary":"List nodes"}},"/api/v2/oracle/data":{"get":{"parameters":[{"description":"Oracle spec ID to list data for.","in":"query","name":"oracleSpecId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListOracleDataResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get a list of all oracle data that have been broadcast to any market","operationId":"TradingDataService_ListOracleData","summary":"List oracle data"}},"/api/v2/oracle/spec/{oracleSpecId}":{"get":{"parameters":[{"description":"Oracle spec ID to request data for.","in":"path","name":"oracleSpecId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetOracleSpecResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get an oracle spec by ID. Oracle spec IDs can be found by querying markets that use them as a data source","operationId":"TradingDataService_GetOracleSpec","summary":"Get oracle spec"}},"/api/v2/oracle/specs":{"get":{"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListOracleSpecsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Data sources"],"description":"Get a list of all oracles specs that are defined against all markets","operationId":"TradingDataService_ListOracleSpecs","summary":"List oracle specs"}},"/api/v2/order/versions/{orderId}":{"get":{"parameters":[{"description":"Order ID to list versions for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListOrderVersionsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of all versions of an order in the order history","operationId":"TradingDataService_ListOrderVersions","summary":"List order versions"}},"/api/v2/order/{orderId}":{"get":{"parameters":[{"description":"Order ID to retrieve order information for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}},{"description":"Historic version number of the order to return. If not set, the most current version will be returned.","in":"query","name":"version","required":false,"schema":{"format":"int32","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetOrderResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get an order by its ID. An order's ID will be the SHA3-256 hash of the signature that the order was submitted with","operationId":"TradingDataService_GetOrder","summary":"Get order"}},"/api/v2/orders":{"get":{"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)","explode":true,"in":"query","name":"filter.statuses","required":false,"schema":{"items":{"enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given types.\n\n - TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","explode":true,"in":"query","name":"filter.types","required":false,"schema":{"items":{"enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given Time In Force.\n\n - TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","explode":true,"in":"query","name":"filter.timeInForces","required":false,"schema":{"items":{"enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"type":"string"},"type":"array"}},{"description":"Indicator if liquidity provisions should be included or not in the list.","in":"query","name":"filter.excludeLiquidity","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those placed by the given party IDs.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the given market IDs.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given reference.","in":"query","name":"filter.reference","required":false,"schema":{"type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"filter.dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"filter.dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict orders to those that are live. If not set, it is treated as being false.","in":"query","name":"filter.liveOnly","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListOrdersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of orders that match the given filters","operationId":"TradingDataService_ListOrders","summary":"List orders"}},"/api/v2/parties":{"get":{"parameters":[{"description":"Restrict the returned party to only the given party ID. If not set, all parties will be returned.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListPartiesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a list of parties","operationId":"TradingDataService_ListParties","summary":"List parties"}},"/api/v2/parties/profiles":{"get":{"parameters":[{"description":"Restrict the returned profiles to only the given party IDs. If not set,\nall parties' profiles will be returned.","explode":true,"in":"query","name":"parties","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListPartiesProfilesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a list of profiles for multiple parties","operationId":"TradingDataService_ListPartiesProfiles","summary":"List parties' profiles"}},"/api/v2/parties/{partyId}/stake":{"get":{"parameters":[{"description":"Party ID for which the stake information is requested.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetStakeResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get staking information for a given party","operationId":"TradingDataService_GetStake","summary":"Get stake"}},"/api/v2/party/activity/streak/{partyId}":{"get":{"parameters":[{"description":"Party ID to get the activity streak for.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}},{"description":"Epoch to get the activity streak for. If not set, the last complete epoch is used.","in":"query","name":"epoch","required":false,"schema":{"format":"uint64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetPartyActivityStreakResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get a party's activity across epochs.","operationId":"TradingDataService_GetPartyActivityStreak","summary":"List party activity streak"}},"/api/v2/party/{partyId}":{"get":{"parameters":[{"description":"Party ID to retrieve party information for.","in":"path","name":"partyId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetPartyResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Parties"],"description":"Get a single party","operationId":"TradingDataService_GetParty","summary":"Get party"}},"/api/v2/positions":{"get":{"parameters":[{"description":"Restrict positions to those related to the given parties.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict positions to those on the given markets.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListAllPositionsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Get a list of all of a party's positions","operationId":"TradingDataService_ListAllPositions","summary":"List positions"}},"/api/v2/referral-programs/current":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetCurrentReferralProgramResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get the current referral program for the network. This program may not be active if it has ended\nand has not been replaced by another.","operationId":"TradingDataService_GetCurrentReferralProgram","summary":"Get current referral program"}},"/api/v2/referral-sets":{"get":{"parameters":[{"description":"Referral set ID to retrieve information for.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","in":"query","name":"referrer","required":false,"schema":{"type":"string"}},{"description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","in":"query","name":"referee","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListReferralSetsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"List all referral sets, or a specific referral set if you know its ID.","operationId":"TradingDataService_ListReferralSets","summary":"List referral sets"}},"/api/v2/referral-sets/referees":{"get":{"parameters":[{"description":"Referral set ID to retrieve information for.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Referrer to filter by. If referrer set ID is provided, this field is ignored.","in":"query","name":"referrer","required":false,"schema":{"type":"string"}},{"description":"Referee to filter by. If referrer set ID or referrer is provided, this field is ignored.","in":"query","name":"referee","required":false,"schema":{"type":"string"}},{"description":"Epochs to aggregate party volume and rewards over. If omitted, 30 epochs will be used.","in":"query","name":"aggregationEpochs","required":false,"schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListReferralSetRefereesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"List all referees that belong to a referral set.","operationId":"TradingDataService_ListReferralSetReferees","summary":"List referral set referees"}},"/api/v2/referral-sets/stats":{"get":{"parameters":[{"description":"Restrict referral set statistics to those for the given referral set.","in":"query","name":"referralSetId","required":false,"schema":{"type":"string"}},{"description":"Epoch to get referral set statistics for. If not set, the last complete epoch is used.","in":"query","name":"atEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict referral set statistics to those for the given referee.","in":"query","name":"referee","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetReferralSetStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Referral program"],"description":"Get the total taker volume, and each referee's taker volume and, reward and discount factors for a referral set\nat the latest or a specific epoch. You can also optionally filter for a specific referee's statistics.","operationId":"TradingDataService_GetReferralSetStats","summary":"Get referral set statistics"}},"/api/v2/rewards":{"get":{"parameters":[{"description":"Restrict rewards data to those that were received by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict rewards data to those that were paid with the given asset ID.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict rewards data to those that were paid after and including the given epoch ID.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict rewards data to those that were paid up to and including the given epoch ID.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Filter for rewards paid if the party is a member of the given team.","in":"query","name":"teamId","required":false,"schema":{"type":"string"}},{"description":"Filter for rewards paid if the party participated in the given game.","in":"query","name":"gameId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListRewardsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of rewards that match the provided criteria. If no filter is provided, all rewards will be returned.","operationId":"TradingDataService_ListRewards","summary":"List rewards"}},"/api/v2/rewards/epoch/summaries":{"get":{"parameters":[{"description":"Restrict reward summaries to those connected to the assets in the given list.","explode":true,"in":"query","name":"filter.assetIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict reward summaries to those connected to the markets in the given list.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict rewards summaries to those that were paid after and including the given epoch ID.","in":"query","name":"filter.fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict rewards summaries to those that were paid up to and including the given epoch ID.","in":"query","name":"filter.toEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListEpochRewardSummariesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of reward summaries by epoch for a given range of epochs.\nThe result is filtered by list of asset IDs, market IDs and starting and ending epochs, for which to return rewards.\nIf no data is provided, all reward summaries will be returned, grouped by epochs, market IDs, asset IDs and reward type.","operationId":"TradingDataService_ListEpochRewardSummaries","summary":"List epoch reward summaries"}},"/api/v2/rewards/summaries":{"get":{"parameters":[{"description":"Restrict the reward summary to rewards paid to the given parties.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict the reward summary to rewards paid in the given assets.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListRewardSummariesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Rewards"],"description":"Get a list of reward summaries where the reward amount is the total rewards received over all epochs\nper party ID and asset ID.\nRequest parameters are optional party ID and asset ID.\nIf no data is provided, all reward summaries will be returned grouped by party and asset ID.","operationId":"TradingDataService_ListRewardSummaries","summary":"List reward summaries"}},"/api/v2/snapshots":{"get":{"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListCoreSnapshotsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of core snapshots taken","operationId":"TradingDataService_ListCoreSnapshots","summary":"List snapshots"}},"/api/v2/stoporder/{orderId}":{"get":{"parameters":[{"description":"Order ID to retrieve order information for.","in":"path","name":"orderId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetStopOrderResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a stop order by its ID. A stop order's ID will be the SHA3-256 hash of the signature that the order was submitted with.\nA stop order's ID is likely to be different from the ID of the order that will be submitted when the stop is triggered.","operationId":"TradingDataService_GetStopOrder","summary":"Get stop order"}},"/api/v2/stoporders":{"get":{"parameters":[{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict orders to those with the given statuses.\n\n - STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","explode":true,"in":"query","name":"filter.statuses","required":false,"schema":{"items":{"enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"type":"string"},"type":"array"}},{"description":"Restrict orders to those with the given expiry strategies.\n\n - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","explode":true,"in":"query","name":"filter.expiryStrategies","required":false,"schema":{"items":{"enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string"},"type":"array"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"filter.dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"filter.dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Restrict orders to those placed by the given party IDs.","explode":true,"in":"query","name":"filter.partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the given market IDs.","explode":true,"in":"query","name":"filter.marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Live stop orders only.","in":"query","name":"filter.liveOnly","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListStopOrdersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Get a list of stop orders that match the given filters","operationId":"TradingDataService_ListStopOrders","summary":"List stop orders"}},"/api/v2/stream/accounts":{"get":{"parameters":[{"description":"Market ID to filter accounts by. If empty, no markets will be filtered.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter accounts by. If empty, no parties will be filtered.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Asset ID to filter accounts by. If empty, no assets will be filtered.","in":"query","name":"asset","required":false,"schema":{"type":"string"}},{"description":"Account type to subscribe to, required field.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","in":"query","name":"type","required":false,"schema":{"default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveAccountsResponse"}},"title":"Stream result of v2ObserveAccountsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Accounts"],"description":"Subscribe to a stream of accounts","operationId":"TradingDataService_ObserveAccounts","summary":"Accounts subscription"}},"/api/v2/stream/candle/data":{"get":{"parameters":[{"description":"Unique ID for the candle.","in":"query","name":"candleId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveCandleDataResponse"}},"title":"Stream result of v2ObserveCandleDataResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Candles"],"description":"Subscribe to a stream of candle updates","operationId":"TradingDataService_ObserveCandleData","summary":"Observe candle data"}},"/api/v2/stream/event/bus":{"get":{"parameters":[{"description":"One or more types of event, required field.\n\n - BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","explode":true,"in":"query","name":"type","required":false,"schema":{"items":{"enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"type":"string"},"type":"array"}},{"description":"Market ID to filter for, optional field. If empty, no markets will be excluded from the stream.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Party ID to filter for, optional field. If empty, no parties will be excluded from the stream.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Batch size,\nIf not specified, any events received will be sent immediately. If the client is not ready\nfor the next data-set, data may be dropped a number of times, and eventually the stream is closed.\nif specified, the first batch will be sent when ready. To receive the next set of events, the client\nmust write an `ObserveEventBatch` message on the stream to flush the buffer.\nIf no message is received in 5 seconds, the stream is closed.\nDefault: 0, send any and all events when they are available.","in":"query","name":"batchSize","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveEventBusResponse"}},"title":"Stream result of v2ObserveEventBusResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Events"],"description":"Subscribe to a stream of events from the core","operationId":"TradingDataService_ObserveEventBus","summary":"Observe event bus"}},"/api/v2/stream/governance":{"get":{"parameters":[{"description":"Restrict proposal updates to those proposed by the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveGovernanceResponse"}},"title":"Stream result of v2ObserveGovernanceResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Subscribe to a stream of updates to governance proposals","operationId":"TradingDataService_ObserveGovernance","summary":"Observe governance"}},"/api/v2/stream/ledger/movements":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveLedgerMovementsResponse"}},"title":"Stream result of v2ObserveLedgerMovementsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Ledger movements"],"description":"Subscribe to a stream of transfer responses","operationId":"TradingDataService_ObserveLedgerMovements","summary":"Observe ledger movements"}},"/api/v2/stream/liquidity-provisions":{"get":{"parameters":[{"description":"Target market to observe for liquidity provisions.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}},{"description":"Target party to observe for submitted liquidity provisions.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveLiquidityProvisionsResponse"}},"title":"Stream result of v2ObserveLiquidityProvisionsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Liquidity"],"description":"Subscribe to a stream of liquidity provision events for a given market and party","operationId":"TradingDataService_ObserveLiquidityProvisions","summary":"Observe liquidity provisions"}},"/api/v2/stream/margin/levels":{"get":{"parameters":[{"description":"Restrict margin level updates to those relating to the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict margin level updates to those relating to the given market.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveMarginLevelsResponse"}},"title":"Stream result of v2ObserveMarginLevelsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Margin levels"],"description":"Subscribe to a stream of margin levels updates","operationId":"TradingDataService_ObserveMarginLevels","summary":"Observe margin levels"}},"/api/v2/stream/markets/data":{"get":{"parameters":[{"description":"Restrict updates to market data by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveMarketsDataResponse"}},"title":"Stream result of v2ObserveMarketsDataResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of data about a given market","operationId":"TradingDataService_ObserveMarketsData","summary":"Observe markets data"}},"/api/v2/stream/markets/depth":{"get":{"parameters":[{"description":"Restrict market depth data by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveMarketsDepthResponse"}},"title":"Stream result of v2ObserveMarketsDepthResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of the latest market depth for a given market","operationId":"TradingDataService_ObserveMarketsDepth","summary":"Observe markets depth"}},"/api/v2/stream/markets/depth/updates":{"get":{"parameters":[{"description":"Restrict updates to market depth by the given market IDs.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveMarketsDepthUpdatesResponse"}},"title":"Stream result of v2ObserveMarketsDepthUpdatesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Subscribe to a stream of updates on market depth for a given market","operationId":"TradingDataService_ObserveMarketsDepthUpdates","summary":"Observe markets depth updates"}},"/api/v2/stream/orders":{"get":{"parameters":[{"description":"Restrict orders to those placed on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict orders to those placed on the by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Whether liquidity orders should be excluded from the stream. If not set, liquidity orders will be included.","in":"query","name":"excludeLiquidity","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveOrdersResponse"}},"title":"Stream result of v2ObserveOrdersResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Orders"],"description":"Subscribe to a stream of orders","operationId":"TradingDataService_ObserveOrders","summary":"Observe orders"}},"/api/v2/stream/positions":{"get":{"parameters":[{"description":"Restrict position updates to those related to the given parties.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict position updates to those related to the given markets.","in":"query","name":"marketId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObservePositionsResponse"}},"title":"Stream result of v2ObservePositionsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Positions"],"description":"Subscribe to a stream of position updates. The first messages sent through the stream will contain\ninformation about current positions, followed by updates to those positions.","operationId":"TradingDataService_ObservePositions","summary":"Observe positions"}},"/api/v2/stream/trades":{"get":{"parameters":[{"description":"Restrict the trades streamed to those made on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict the trades streamed to those made by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveTradesResponse"}},"title":"Stream result of v2ObserveTradesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Subscribe to a stream of trades, optionally filtered by party/market","operationId":"TradingDataService_ObserveTrades","summary":"Observe trades"}},"/api/v2/stream/transaction-results":{"get":{"parameters":[{"description":"Restrict the transaction results streamed to those made by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict the transaction results streamed to those with given hashes.","explode":true,"in":"query","name":"hashes","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict the transaction results streamed to those with given status true/false (success/failure).","in":"query","name":"status","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveTransactionResultsResponse"}},"title":"Stream result of v2ObserveTransactionResultsResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["TransactionResults"],"description":"Subscribe to a stream of transaction results, optionally filtered by party/hash/status","operationId":"TradingDataService_ObserveTransactionResults","summary":"Observe transaction results"}},"/api/v2/stream/votes":{"get":{"parameters":[{"description":"Restrict vote updates to those made by the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Restrict vote updates to those made on the given proposal.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"error":{"$ref":"#/components/schemas/googlerpcStatus"},"result":{"$ref":"#/components/schemas/v2ObserveVotesResponse"}},"title":"Stream result of v2ObserveVotesResponse","type":"object"}}},"description":"A successful response.(streaming responses)"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Subscribe to a stream of votes cast on a given proposal, or by all votes made by a given party","operationId":"TradingDataService_ObserveVotes","summary":"Observe votes"}},"/api/v2/successor_markets/{marketId}":{"get":{"parameters":[{"description":"Market ID that is a member of the succession line. This can be the original market\nor any subsequent child market that succeeded it.","in":"path","name":"marketId","required":true,"schema":{"type":"string"}},{"description":"Flag to indicate whether or not to include the full succession line, or only list\nthe children of the given market ID. If true, the full succession line is included.","in":"query","name":"includeFullHistory","required":false,"schema":{"type":"boolean"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListSuccessorMarketsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Markets"],"description":"Given a market ID, return the full lineage of markets since inception, or all successor markets since and including\nthe given market ID. The markets will be returned in succession order, i.e. the market at position i will be the parent\nof the market at position i+1.","operationId":"TradingDataService_ListSuccessorMarkets","summary":"List successor markets"}},"/api/v2/teams":{"get":{"parameters":[{"description":"Restrict teams to those with the given team ID.","in":"query","name":"teamId","required":false,"schema":{"type":"string"}},{"description":"Restrict teams to those where the given party is a referrer or a referee.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListTeamsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of all teams, or for a specific team by using team ID, or party ID of a referrer or referee","operationId":"TradingDataService_ListTeams","summary":"List teams"}},"/api/v2/teams/referees/history/{referee}":{"get":{"parameters":[{"description":"Party ID to list referee history for.","in":"path","name":"referee","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListTeamRefereeHistoryResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of a referee's team history, i.e. the teams that a referee has been a member of and transferred from/to.","operationId":"TradingDataService_ListTeamRefereeHistory","summary":"List referee team history"}},"/api/v2/teams/referees/{teamId}":{"get":{"parameters":[{"description":"Team ID to list referees for.","in":"path","name":"teamId","required":true,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListTeamRefereesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get a list of all referees for a given team ID","operationId":"TradingDataService_ListTeamReferees","summary":"List team referees"}},"/api/v2/teams/stats":{"get":{"parameters":[{"description":"Restrict team statistics to those with the given team ID.","in":"query","name":"teamId","required":false,"schema":{"type":"string"}},{"description":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","in":"query","name":"aggregationEpochs","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListTeamsStatisticsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get the statistics of all teams, or for a specific team by using team ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","operationId":"TradingDataService_ListTeamsStatistics","summary":"List teams statistics"}},"/api/v2/teams/{teamId}/stats":{"get":{"parameters":[{"description":"Restrict team statistics to those with the given team ID.","in":"path","name":"teamId","required":true,"schema":{"type":"string"}},{"description":"Restrict team members' statistics to those with the given party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Defines the number of past epochs to aggregate data from. By default, it takes\nthe last 10 epochs.","in":"query","name":"aggregationEpochs","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListTeamMembersStatisticsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Teams"],"description":"Get the statistics for all members of a given team, or for a specific member by using party ID, over a number of epochs.\nIf a team does not have at least the number of epochs' worth of data, it is ignored.","operationId":"TradingDataService_ListTeamMembersStatistics","summary":"List team members' statistics"}},"/api/v2/trades":{"get":{"parameters":[{"description":"Restrict trades to those that occurred on the given markets.","explode":true,"in":"query","name":"marketIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict trades to those that were caused by the given orders.","explode":true,"in":"query","name":"orderIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Restrict trades to those that were caused by orders placed by the given parties.","explode":true,"in":"query","name":"partyIds","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListTradesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Trades"],"description":"Get a list of all trades, optionally filtered by party/market/order","operationId":"TradingDataService_ListTrades","summary":"List trades"}},"/api/v2/transfer/{transferId}":{"get":{"parameters":[{"description":"Transfer ID to request data for.","in":"path","name":"transferId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetTransferResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Get a specific transfer by ID","operationId":"TradingDataService_GetTransfer","summary":"Get transfer by ID"}},"/api/v2/transfers":{"get":{"parameters":[{"description":"Restrict transfer to those where the given public key is a sender or receiver.","in":"query","name":"pubkey","required":false,"schema":{"type":"string"}},{"description":"Restrict transfers to those in the given direction from the supplied public key.\nWhen is_reward is true, and pubkey is set, then direction MUST be TRANSFER_DIRECTION_DIRECTION_FROM.","in":"query","name":"direction","required":false,"schema":{"default":"TRANSFER_DIRECTION_UNSPECIFIED","enum":["TRANSFER_DIRECTION_UNSPECIFIED","TRANSFER_DIRECTION_TRANSFER_FROM","TRANSFER_DIRECTION_TRANSFER_TO","TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM"],"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Restrict transfers to those related to reward transfers.","in":"query","name":"isReward","required":false,"schema":{"type":"boolean"}},{"description":"Epoch to filter from (included). If omitted, the range goes from the oldest epoch to the `to epoch`.","in":"query","name":"fromEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Epoch to filter to (included). If omitted, the range goes from `from epoch` to the most recent epoch.","in":"query","name":"toEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Status to filter on.\n\n - STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","in":"query","name":"status","required":false,"schema":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"type":"string"}},{"description":"Dispatch strategy's scope to filter for.\n\n - SCOPE_INDIVIDUAL: Matches transfers that have dispatch strategy scope of individual set.\n - SCOPE_TEAM: Matches transfers that have dispatch strategy scope of team set.","in":"query","name":"scope","required":false,"schema":{"default":"SCOPE_UNSPECIFIED","enum":["SCOPE_UNSPECIFIED","SCOPE_INDIVIDUAL","SCOPE_TEAM"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListTransfersResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Get a list of transfers between public keys. A valid value for public key can be one of:\n- a party ID\n- \"network\"\n- \"0000000000000000000000000000000000000000000000000000000000000000\", the public key for the global rewards account","operationId":"TradingDataService_ListTransfers","summary":"List transfers"}},"/api/v2/transfers/estimate-fee":{"get":{"parameters":[{"description":"Sender's ID.","in":"query","name":"fromAccount","required":false,"schema":{"type":"string"}},{"description":"Type of account sent from.\n\n - ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","in":"query","name":"fromAccountType","required":false,"schema":{"default":"ACCOUNT_TYPE_UNSPECIFIED","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"type":"string"}},{"description":"Receiver's ID.","in":"query","name":"toAccount","required":false,"schema":{"type":"string"}},{"description":"Amount to be transferred.","in":"query","name":"amount","required":false,"schema":{"type":"string"}},{"description":"Asset ID for the asset associated with the transaction.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2EstimateTransferFeeResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Estimate transfer fee costs with potential discount applied","operationId":"TradingDataService_EstimateTransferFee","summary":"Estimate transfer fee costs"}},"/api/v2/transfers/total-fee-discount":{"get":{"parameters":[{"description":"ID of party eligible for the discount.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"ID of asset to associated with the discount.","in":"query","name":"assetId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetTotalTransferFeeDiscountResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Transfers"],"description":"Returns available per party per asset transfer discount","operationId":"TradingDataService_GetTotalTransferFeeDiscount","summary":"Available transfer fee discount"}},"/api/v2/upgrade/proposals":{"get":{"parameters":[{"description":"Restrict protocol upgrade proposals to those with the given status.\n\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected","in":"query","name":"status","required":false,"schema":{"default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"type":"string"}},{"description":"Restrict protocol upgrade proposals to those approved by the given node ID.","in":"query","name":"approvedBy","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListProtocolUpgradeProposalsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of protocol upgrade proposals, optionally filtering on status or approver.","operationId":"TradingDataService_ListProtocolUpgradeProposals","summary":"List protocol upgrade proposals"}},"/api/v2/upgrade/status":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetProtocolUpgradeStatusResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get status of a protocol upgrade","operationId":"TradingDataService_GetProtocolUpgradeStatus","summary":"Get protocol upgrade status"}},"/api/v2/vega/keys/ethereum/rotations":{"get":{"parameters":[{"description":"Node ID to get the rotation for, if provided.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListEthereumKeyRotationsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about Ethereum key rotations that have been performed by validator nodes","operationId":"TradingDataService_ListEthereumKeyRotations","summary":"List Ethereum key rotations"}},"/api/v2/vega/keys/rotations":{"get":{"parameters":[{"description":"Node ID to get key rotations for, if provided.","in":"query","name":"nodeId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListKeyRotationsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get a list of information about Vega key rotations that have been performed by validator nodes","operationId":"TradingDataService_ListKeyRotations","summary":"List key rotations"}},"/api/v2/vega/time":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetVegaTimeResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Network"],"description":"Get the current time of the network in Unix nanoseconds","operationId":"TradingDataService_GetVegaTime","summary":"Get Vega time"}},"/api/v2/volume-discount-programs/current":{"get":{"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetCurrentVolumeDiscountProgramResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Volume discount program"],"description":"Get the current volume discount program for the network. This program may not be active if it has ended\nand has not been replaced by another.","operationId":"TradingDataService_GetCurrentVolumeDiscountProgram","summary":"Get current volume discount program"}},"/api/v2/volume-discount-programs/stats":{"get":{"parameters":[{"description":"Epoch to get volume discount statistics for. If not set, last epoch is used.","in":"query","name":"atEpoch","required":false,"schema":{"format":"uint64","type":"string"}},{"description":"Restrict volume discount statistics to those for the given party.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetVolumeDiscountStatsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Volume discount program"],"description":"Get the information about a party's running traded volume, and the discount factor it earns them.","operationId":"TradingDataService_GetVolumeDiscountStats","summary":"Get volume discount statistics"}},"/api/v2/votes":{"get":{"parameters":[{"description":"Party for which the votes are requested.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Proposal ID to list votes for.","in":"query","name":"proposalId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListVotesResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Governance"],"description":"Get a list of votes. A party ID or a proposal ID must be provided.","operationId":"TradingDataService_ListVotes","summary":"List votes"}},"/api/v2/withdrawal/{id}":{"get":{"parameters":[{"description":"Withdrawal ID to retrieve data for.","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2GetWithdrawalResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a withdrawal by its ID. A withdrawal's ID will be the SHA3-256 hash of the signature that the withdrawal was submitted with","operationId":"TradingDataService_GetWithdrawal","summary":"Get withdrawal"}},"/api/v2/withdrawals":{"get":{"parameters":[{"description":"Restrict withdrawals to those made by this party ID.","in":"query","name":"partyId","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","in":"query","name":"pagination.first","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the last row of the previous page.","in":"query","name":"pagination.after","required":false,"schema":{"type":"string"}},{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","in":"query","name":"pagination.last","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"If paging forwards, the cursor string for the first row of the previous page.","in":"query","name":"pagination.before","required":false,"schema":{"type":"string"}},{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","in":"query","name":"pagination.newestFirst","required":false,"schema":{"type":"boolean"}},{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","in":"query","name":"dateRange.startTimestamp","required":false,"schema":{"format":"int64","type":"string"}},{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","in":"query","name":"dateRange.endTimestamp","required":false,"schema":{"format":"int64","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v2ListWithdrawalsResponse"}}},"description":"A successful response."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An internal server error"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/googlerpcStatus"}}},"description":"An unexpected error response."}},"tags":["Assets"],"description":"Get a list of withdrawals for a given party","operationId":"TradingDataService_ListWithdrawals","summary":"List withdrawals"}}},"components":{"schemas":{"ConditionOperator":{"default":"OPERATOR_UNSPECIFIED","description":"Operator describes the type of comparison.\n\n - OPERATOR_UNSPECIFIED: The default value\n - OPERATOR_EQUALS: Verify if the property values are strictly equal or not.\n - OPERATOR_GREATER_THAN: Verify if the data source data value is greater than the Condition value.\n - OPERATOR_GREATER_THAN_OR_EQUAL: Verify if the data source data value is greater than or equal to the Condition\nvalue.\n - OPERATOR_LESS_THAN: Verify if the data source data value is less than the Condition value.\n - OPERATOR_LESS_THAN_OR_EQUAL: Verify if the data source data value is less or equal to than the Condition\nvalue.","enum":["OPERATOR_UNSPECIFIED","OPERATOR_EQUALS","OPERATOR_GREATER_THAN","OPERATOR_GREATER_THAN_OR_EQUAL","OPERATOR_LESS_THAN","OPERATOR_LESS_THAN_OR_EQUAL"],"type":"string"},"FundingPeriodDataPointSource":{"default":"SOURCE_UNSPECIFIED","description":" - SOURCE_UNSPECIFIED: Default value\n - SOURCE_EXTERNAL: Data point is from an external data source, such as an oracle, and represents the spot price of the underlying asset.\n - SOURCE_INTERNAL: Data point from within Vega such as the mark price after performing mark-to-market.","enum":["SOURCE_UNSPECIFIED","SOURCE_EXTERNAL","SOURCE_INTERNAL"],"type":"string"},"ListTransfersRequestScope":{"default":"SCOPE_UNSPECIFIED","description":"Defines the types of a dispatch strategy's scope the API can filter on.\n\n - SCOPE_INDIVIDUAL: Matches transfers that have dispatch strategy scope of individual set.\n - SCOPE_TEAM: Matches transfers that have dispatch strategy scope of team set.","enum":["SCOPE_UNSPECIFIED","SCOPE_INDIVIDUAL","SCOPE_TEAM"],"type":"string"},"MarketTradingMode":{"default":"TRADING_MODE_UNSPECIFIED","description":"- TRADING_MODE_UNSPECIFIED: Default value, this is invalid\n - TRADING_MODE_CONTINUOUS: Normal trading\n - TRADING_MODE_BATCH_AUCTION: Auction trading (FBA)\n - TRADING_MODE_OPENING_AUCTION: Opening auction\n - TRADING_MODE_MONITORING_AUCTION: Auction triggered by monitoring\n - TRADING_MODE_NO_TRADING: No trading is allowed\n - TRADING_MODE_SUSPENDED_VIA_GOVERNANCE: Special auction mode triggered via governance","enum":["TRADING_MODE_UNSPECIFIED","TRADING_MODE_CONTINUOUS","TRADING_MODE_BATCH_AUCTION","TRADING_MODE_OPENING_AUCTION","TRADING_MODE_MONITORING_AUCTION","TRADING_MODE_NO_TRADING","TRADING_MODE_SUSPENDED_VIA_GOVERNANCE"],"title":"Trading mode the market is currently running, also referred to as 'market state'","type":"string"},"OracleDataSubmissionOracleSource":{"default":"ORACLE_SOURCE_UNSPECIFIED","description":"- ORACLE_SOURCE_UNSPECIFIED: Default value\n - ORACLE_SOURCE_OPEN_ORACLE: Specifies that the payload will be base64 encoded JSON conforming to the Open Oracle standard.\n - ORACLE_SOURCE_JSON: Specifies that the payload will be base64 encoded JSON, but does not specify the shape of the data.\n - ORACLE_SOURCE_ETHEREUM: Specifies that the payload will be base64 encoded JSON conforming to the ETH standard.","enum":["ORACLE_SOURCE_UNSPECIFIED","ORACLE_SOURCE_OPEN_ORACLE","ORACLE_SOURCE_JSON","ORACLE_SOURCE_ETHEREUM"],"title":"Supported oracle sources","type":"string"},"OrderTimeInForce":{"default":"TIME_IN_FORCE_UNSPECIFIED","description":"- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend\n - TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible\nand remains on the book until it either trades completely or is cancelled\n - TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible\nand remains on the book until it either trades completely, is cancelled, or expires at a set time\nNOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry\n - TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible\nbut does not remain on the book (whether it trades or not)\n - TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding,\nor not at all, and does not remain on the book if it doesn't trade\n - TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period\n - TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)","enum":["TIME_IN_FORCE_UNSPECIFIED","TIME_IN_FORCE_GTC","TIME_IN_FORCE_GTT","TIME_IN_FORCE_IOC","TIME_IN_FORCE_FOK","TIME_IN_FORCE_GFA","TIME_IN_FORCE_GFN"],"title":"Time In Force for an order","type":"string"},"StopOrderExpiryStrategy":{"default":"EXPIRY_STRATEGY_UNSPECIFIED","description":" - EXPIRY_STRATEGY_UNSPECIFIED: Never valid\n - EXPIRY_STRATEGY_CANCELS: Stop order should be cancelled if the expiry time is reached.\n - EXPIRY_STRATEGY_SUBMIT: Order should be submitted if the expiry time is reached.","enum":["EXPIRY_STRATEGY_UNSPECIFIED","EXPIRY_STRATEGY_CANCELS","EXPIRY_STRATEGY_SUBMIT"],"type":"string"},"StopOrderRejectionReason":{"default":"REJECTION_REASON_UNSPECIFIED","enum":["REJECTION_REASON_UNSPECIFIED","REJECTION_REASON_TRADING_NOT_ALLOWED","REJECTION_REASON_EXPIRY_IN_THE_PAST","REJECTION_REASON_MUST_BE_REDUCE_ONLY","REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION","REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION","REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID","REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION","REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES"],"title":"- REJECTION_REASON_UNSPECIFIED: Never valid\n - REJECTION_REASON_TRADING_NOT_ALLOWED: Trading is not allowed yet\n - REJECTION_REASON_EXPIRY_IN_THE_PAST: Expiry of the stop order is in the past\n - REJECTION_REASON_MUST_BE_REDUCE_ONLY: Stop orders submission must be reduce only\n - REJECTION_REASON_MAX_STOP_ORDERS_PER_PARTY_REACHED: Party has reached the maximum stop orders allowed for this market\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_WITHOUT_A_POSITION: Stop orders are not allowed if there is no open position\n - REJECTION_REASON_STOP_ORDER_NOT_CLOSING_THE_POSITION: This stop order does not close the position\n - REJECTION_REASON_STOP_ORDER_LINKED_PERCENTAGE_INVALID: The percentage value for the linked stop order is invalid\n - REJECTION_REASON_STOP_ORDER_NOT_ALLOWED_DURING_OPENING_AUCTION: Stop orders are not allowed during the opening auction\n - REJECTION_REASON_STOP_ORDER_CANNOT_MATCH_OCO_EXPIRY_TIMES: Stop OCO orders cannot have the same expiry timestamp","type":"string"},"StopOrderSizeOverrideSetting":{"default":"SIZE_OVERRIDE_SETTING_UNSPECIFIED","enum":["SIZE_OVERRIDE_SETTING_UNSPECIFIED","SIZE_OVERRIDE_SETTING_NONE","SIZE_OVERRIDE_SETTING_POSITION"],"title":"- SIZE_OVERRIDE_SETTING_UNSPECIFIED: Never valid\n - SIZE_OVERRIDE_SETTING_NONE: No override, the size within the contained normal order submission will be used\n - SIZE_OVERRIDE_SETTING_POSITION: Use the total position of the trader","type":"string"},"StopOrderSizeOverrideValue":{"properties":{"percentage":{"title":"Scaling percentage of the current position’s size","type":"string"}},"type":"object"},"StopOrderTriggerDirection":{"default":"TRIGGER_DIRECTION_UNSPECIFIED","enum":["TRIGGER_DIRECTION_UNSPECIFIED","TRIGGER_DIRECTION_RISES_ABOVE","TRIGGER_DIRECTION_FALLS_BELOW"],"title":"- TRIGGER_DIRECTION_UNSPECIFIED: Never valid\n - TRIGGER_DIRECTION_RISES_ABOVE: Stop order is triggered once the price rises above a certain level\n - TRIGGER_DIRECTION_FALLS_BELOW: Stop order is triggered once the price falls below a certain level","type":"string"},"TransactionResultFailureDetails":{"properties":{"error":{"title":"Error message explaining the reason for the transaction failing processing","type":"string"}},"type":"object"},"TransactionResultSuccessDetails":{"type":"object"},"UpdateMarginModeMode":{"default":"MODE_UNSPECIFIED","enum":["MODE_UNSPECIFIED","MODE_CROSS_MARGIN","MODE_ISOLATED_MARGIN"],"title":"- MODE_UNSPECIFIED: Never valid.\n - MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"apiHttpBody":{"description":"Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.","properties":{"contentType":{"description":"The HTTP Content-Type header value specifying the content type of the body.","type":"string"},"data":{"description":"The HTTP request/response body as raw binary.","format":"byte","type":"string"},"extensions":{"description":"Application specific response metadata. Must be set in the first response\nfor streaming APIs.","items":{"$ref":"#/components/schemas/protobufAny"},"type":"array"}},"type":"object"},"apiv2Candle":{"properties":{"close":{"description":"Closing trade price.","type":"string"},"high":{"description":"Highest price for trading during the candle interval.","type":"string"},"lastUpdate":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was last updated.","format":"int64","type":"string"},"low":{"description":"Lowest price for trading during the candle interval.","type":"string"},"notional":{"description":"Total notional value traded during the candle interval.","format":"uint64","type":"string"},"open":{"description":"Open trade price.","type":"string"},"start":{"description":"Timestamp in Unix nanoseconds for the point in time when the candle was initially created/opened.","format":"int64","type":"string"},"volume":{"description":"Total trading volume during the candle interval.","format":"uint64","type":"string"}},"title":"Represents the high, low, open, and closing prices for an interval of trading,\nreferred to commonly as a candlestick or candle","type":"object"},"apiv2FundingPayment":{"properties":{"amount":{"description":"Funding payment amount, where a positive value indicates an earned payment received and a negative value a loss.","type":"string"},"fundingPeriodSeq":{"description":"Funding period sequence this payment was calculated from.","format":"uint64","type":"string"},"marketId":{"description":"Market that produced the funding payment.","type":"string"},"partyId":{"description":"Party that received the funding payment.","type":"string"},"timestamp":{"description":"Timestamp, in Unix nanoseconds, at which this funding payment occured.","format":"int64","type":"string"}},"title":"A funding payment for a party on a perpetual market","type":"object"},"apiv2LiquidityProvision":{"description":"Liquidity provider commitment. For API purposes this can report a pending liquidity provision,\nthe current live provision or both in the event that an update has been accepted on the network, but has yet\nto go live and thus there is still a pending provision that will become active in the next epoch.","properties":{"current":{"$ref":"#/components/schemas/vegaLiquidityProvision","description":"Liquidity provision that is currently live."},"pending":{"$ref":"#/components/schemas/vegaLiquidityProvision","description":"Liquidity provision that is currently pending and will go live in the next epoch."}},"type":"object"},"apiv2ReferralProgram":{"description":"Referral program details.","properties":{"benefitTiers":{"description":"Defined tiers in increasing order. First element will give Tier 1, second\nelement will give Tier 2, and so on.","items":{"$ref":"#/components/schemas/vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends, the\nprogram will end and benefits will be disabled.","format":"int64","type":"string"},"endedAt":{"description":"Timestamp, in Unix nanoseconds, when the program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"$ref":"#/components/schemas/vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object"},"apiv2Team":{"description":"Team record containing the team information.","properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"createdAt":{"description":"Timestamp in Unix nanoseconds when the team was created.","format":"int64","type":"string"},"createdAtEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"Party ID that created the team.","type":"string"},"teamId":{"description":"ID of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"apiv2VolumeDiscountProgram":{"description":"Volume discount program details.","properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"endedAt":{"description":"Timestamp in Unix nanoseconds, at which the program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a volume discount statistics' running volume is evaluated.","format":"uint64","type":"string"}},"type":"object"},"commandsv1CancelTransfer":{"description":"Command that can be used by the party that initiated a transfer to instruct the network to stop an active recurring transaction.","properties":{"transferId":{"description":"Transfer ID of the transfer to cancel.","type":"string"}},"type":"object"},"eventsv1FundingPayment":{"description":"The amount gained or lost by a party as a result of a funding payment.","properties":{"amount":{"description":"The amount paid, this can be negative for parties who lost at the end of the funding period.","type":"string"},"partyId":{"description":"ID of the party.","type":"string"}},"type":"object"},"googlerpcStatus":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"$ref":"#/components/schemas/protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object"},"protobufAny":{"additionalProperties":{},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\nExample 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\nExample 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","properties":{"@type":{"description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.","type":"string"}},"type":"object"},"protobufNullValue":{"default":"NULL_VALUE","description":"`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value.","enum":["NULL_VALUE"],"type":"string"},"v1AnnounceNode":{"description":"A command that allows a new node operator to announce themselves to the network as a new validator.","properties":{"avatarUrl":{"description":"URL to the node operator's avatar.","type":"string"},"chainPubKey":{"description":"Public key for the blockchain, currently the node's CometBFT key.","type":"string"},"country":{"description":"Country code (ISO 3166-1 alpha-2) for the location of the node.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node being announced.","type":"string"},"ethereumSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the node made using the ethereum wallet."},"fromEpoch":{"description":"Epoch from which the node is expected to be ready to validate blocks.","format":"uint64","type":"string"},"id":{"description":"Node ID of the validator, which is the node's public master key.","type":"string"},"infoUrl":{"description":"URL to the node operators homepage allowing stake holders to make an informed decision when delegating.","type":"string"},"name":{"description":"Human-readable name of the node.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"vegaPubKey":{"description":"Vega public key of the node being announced.","type":"string"},"vegaPubKeyIndex":{"description":"Vega public key derivation index.","format":"int64","type":"integer"},"vegaSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature from the node made using the Vega wallet."}},"type":"object"},"v1ApplyReferralCode":{"description":"Command that allows the submitter to join a referral set and earn a collective reduction in fees based on the activity of all members of that set.\nA party that joins a referral set is called a referee. A referee can only be a member of one referral set and cannot themselves be or become a referrer.\nTo switch to another referral set, a subsequent command can be sent and the switch will take effect at the end of the epoch.","properties":{"id":{"description":"Referral code, normally the referral set ID, for the party to join.","type":"string"}},"type":"object"},"v1AuctionEvent":{"properties":{"end":{"format":"int64","title":"Timestamp containing the end time for an auction","type":"string"},"extensionTrigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","title":"If an auction was ongoing, but was extended for whatever reason, this field will\nbe set to the trigger type indicating which component extended the auction"},"leave":{"title":"True if the event indicates leaving auction mode and False otherwise","type":"boolean"},"marketId":{"title":"Market ID for the event","type":"string"},"openingAuction":{"title":"True if the event indicates an auction opening and False otherwise","type":"boolean"},"start":{"format":"int64","title":"Timestamp containing the start time for an auction","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","title":"Reason this market is/was in auction"}},"title":"Auction event indicating a change in auction state, for example starting or ending an auction","type":"object"},"v1BatchMarketInstructions":{"description":"A command that allows the submission of a batch market instruction which wraps up multiple market instructions into a single transaction.\nThese instructions are then processed sequentially in the following order:\n- OrderCancellation\n- OrderAmendment\n- OrderSubmission\n- StopOrderSubmission\nwhere the maximum allow of instructions in a batch is controlled by the network parameter \"spam.protection.max.batchSize\".","properties":{"amendments":{"description":"List of order amendments to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderAmendment"},"type":"array"},"cancellations":{"description":"List of order cancellations to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderCancellation"},"type":"array"},"stopOrdersCancellation":{"description":"List of stop order cancellations to be processed sequentially.","items":{"$ref":"#/components/schemas/v1StopOrdersCancellation"},"type":"array"},"stopOrdersSubmission":{"description":"List of stop order submissions to be processed sequentially.","items":{"$ref":"#/components/schemas/v1StopOrdersSubmission"},"type":"array"},"submissions":{"description":"List of order submissions to be processed sequentially.","items":{"$ref":"#/components/schemas/v1OrderSubmission"},"type":"array"},"updateMarginMode":{"items":{"$ref":"#/components/schemas/v1UpdateMarginMode"},"title":"Update margin mode instruction","type":"array"}},"type":"object"},"v1BatchProposalSubmission":{"description":"Command that allows a token holder to submit a batch governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market and a network parameter change with it.","properties":{"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"$ref":"#/components/schemas/v1BatchProposalSubmissionTerms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment."}},"type":"object"},"v1BatchProposalSubmissionTerms":{"properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"$ref":"#/components/schemas/vegaBatchProposalTermsChange"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"}},"title":"Terms for a batch governance proposal submission","type":"object"},"v1BeginBlock":{"properties":{"hash":{"type":"string"},"height":{"format":"uint64","type":"string"},"timestamp":{"format":"int64","type":"string"}},"title":"BeginBlock","type":"object"},"v1BusEvent":{"properties":{"account":{"$ref":"#/components/schemas/vegaAccount","title":"Account events"},"asset":{"$ref":"#/components/schemas/vegaAsset","title":"Asset events"},"auction":{"$ref":"#/components/schemas/v1AuctionEvent","title":"Auction events"},"beginBlock":{"$ref":"#/components/schemas/v1BeginBlock","title":"Core is starting to process a new block"},"block":{"title":"The batch or block of transactions that the events relate to","type":"string"},"chainId":{"type":"string"},"checkpoint":{"$ref":"#/components/schemas/v1CheckpointEvent","title":"Checkpoint was created"},"coreSnapshotEvent":{"$ref":"#/components/schemas/v1CoreSnapshotData","title":"Core snapshot has been taken at the end of the block"},"delegationBalance":{"$ref":"#/components/schemas/v1DelegationBalanceEvent","title":"Delegation balance events"},"deposit":{"$ref":"#/components/schemas/vegaDeposit","title":"Deposit events"},"distressedOrders":{"$ref":"#/components/schemas/v1DistressedOrders","title":"Parties that had their orders closed because they were distressed"},"distressedPositions":{"$ref":"#/components/schemas/v1DistressedPositions","title":"Open positions on the market that are/were distressed"},"endBlock":{"$ref":"#/components/schemas/v1EndBlock","title":"Core finished processing a block"},"epochEvent":{"$ref":"#/components/schemas/v1EpochEvent","title":"Epoch update events"},"erc20MultisigSetThresholdEvent":{"$ref":"#/components/schemas/v1ERC20MultiSigThresholdSetEvent","title":"ERC20 multi sig set threshold event"},"erc20MultisigSignerAdded":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerAdded","title":"ERC20 multi sig signer added"},"erc20MultisigSignerEvent":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerEvent","title":"ERC20 multi sig signer event"},"erc20MultisigSignerRemoved":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerRemoved","title":"ERC20 multi sig signer removed"},"ethereumKeyRotation":{"$ref":"#/components/schemas/v1EthereumKeyRotation","title":"Ethereum key rotation took place"},"expiredOrders":{"$ref":"#/components/schemas/v1ExpiredOrders","title":"Orders that expired for a given market"},"feesStats":{"$ref":"#/components/schemas/v1FeesStats","description":"Event notifying of an update the fees stats for a market."},"fundingPayments":{"$ref":"#/components/schemas/v1FundingPayments","description":"Event notifying of funding payments at the end of a funding period."},"fundingPeriod":{"$ref":"#/components/schemas/v1FundingPeriod","description":"Start or end of a funding period."},"fundingPeriodDataPoint":{"$ref":"#/components/schemas/v1FundingPeriodDataPoint","description":"Data point within a funding period."},"id":{"title":"Unique event ID for the message","type":"string"},"keyRotation":{"$ref":"#/components/schemas/v1KeyRotation","title":"Key rotation took place"},"ledgerMovements":{"$ref":"#/components/schemas/v1LedgerMovements","title":"Transfer responses update events"},"liquidityProvision":{"$ref":"#/components/schemas/vegaLiquidityProvision","title":"LiquidityProvision events"},"lossSocialization":{"$ref":"#/components/schemas/v1LossSocialization","title":"Loss socialization events"},"marginLevels":{"$ref":"#/components/schemas/vegaMarginLevels","title":"Margin level update events"},"market":{"$ref":"#/components/schemas/v1MarketEvent","title":"Market tick events"},"marketCreated":{"$ref":"#/components/schemas/vegaMarket","title":"Market created events"},"marketData":{"$ref":"#/components/schemas/vegaMarketData","title":"Market data events"},"marketTick":{"$ref":"#/components/schemas/v1MarketTick","title":"Market tick events"},"marketUpdated":{"$ref":"#/components/schemas/vegaMarket","title":"Market created events"},"networkLimits":{"$ref":"#/components/schemas/vegaNetworkLimits","title":"Network limits events"},"networkParameter":{"$ref":"#/components/schemas/vegaNetworkParameter","title":"Network parameter events"},"nodeSignature":{"$ref":"#/components/schemas/v1NodeSignature","title":"Node signature events"},"oracleData":{"$ref":"#/components/schemas/vegaOracleData","title":"OracleData events"},"oracleSpec":{"$ref":"#/components/schemas/vegaOracleSpec","title":"OracleSpec events"},"order":{"$ref":"#/components/schemas/vegaOrder","title":"Order events"},"paidLiquidityFeesStats":{"$ref":"#/components/schemas/v1PaidLiquidityFeesStats","description":"Event notifying of an update to the liqudity fees stats for a market."},"party":{"$ref":"#/components/schemas/vegaParty","title":"Party events"},"partyActivityStreak":{"$ref":"#/components/schemas/v1PartyActivityStreak","title":"Event notifying of an update to a party's activity streak"},"partyMarginModeUpdated":{"$ref":"#/components/schemas/v1PartyMarginModeUpdated","description":"Event notifying of a party's margin mode update on a market."},"partyProfileUpdated":{"$ref":"#/components/schemas/v1PartyProfileUpdated","description":"Event notifying of a party's profile update."},"positionResolution":{"$ref":"#/components/schemas/v1PositionResolution","title":"Position resolution events"},"positionStateEvent":{"$ref":"#/components/schemas/v1PositionStateEvent","title":"Position status for a party in a market"},"proposal":{"$ref":"#/components/schemas/vegaProposal","title":"Proposal events for governance"},"protocolUpgradeDataNodeReady":{"$ref":"#/components/schemas/v1ProtocolUpgradeDataNodeReady","title":"Core snapshot has been taken at the end of the block"},"protocolUpgradeEvent":{"$ref":"#/components/schemas/v1ProtocolUpgradeEvent","title":"Protocol upgrade proposal updates"},"protocolUpgradeStarted":{"$ref":"#/components/schemas/v1ProtocolUpgradeStarted","title":"Core is starting a protocol upgrade"},"rankingEvent":{"$ref":"#/components/schemas/v1ValidatorRankingEvent","title":"Ranking event"},"refereeJoinedReferralSet":{"$ref":"#/components/schemas/v1RefereeJoinedReferralSet","description":"Event notifying a referee has joined a referral set."},"refereeJoinedTeam":{"$ref":"#/components/schemas/v1RefereeJoinedTeam","description":"Event notifying that a referee joined a team."},"refereeSwitchedTeam":{"$ref":"#/components/schemas/v1RefereeSwitchedTeam","description":"Event notifying that a referee switched teams."},"referralProgramEnded":{"$ref":"#/components/schemas/v1ReferralProgramEnded","description":"Event notifying that a referral program has ended."},"referralProgramStarted":{"$ref":"#/components/schemas/v1ReferralProgramStarted","description":"Event notifying that a referral program has started."},"referralProgramUpdated":{"$ref":"#/components/schemas/v1ReferralProgramUpdated","description":"Event notifying that a referral program has been updated."},"referralSetCreated":{"$ref":"#/components/schemas/v1ReferralSetCreated","description":"Event notifying a referral set has been created."},"referralSetStatsUpdated":{"$ref":"#/components/schemas/v1ReferralSetStatsUpdated","description":"Event notifying of an update to a referral set's statistics."},"rewardPayout":{"$ref":"#/components/schemas/v1RewardPayoutEvent","title":"Reward payout event"},"riskFactor":{"$ref":"#/components/schemas/vegaRiskFactor","title":"Risk factor events"},"settleDistressed":{"$ref":"#/components/schemas/v1SettleDistressed","title":"Position distressed events"},"settleMarket":{"$ref":"#/components/schemas/v1SettleMarket","title":"Settle market event for data-node to update positions for settled markets"},"settlePosition":{"$ref":"#/components/schemas/v1SettlePosition","title":"Position settlement events"},"stakeLinking":{"$ref":"#/components/schemas/v1StakeLinking","title":"Staking event"},"stateVar":{"$ref":"#/components/schemas/v1StateVar","title":"State variable consensus state transition update"},"stopOrder":{"$ref":"#/components/schemas/v1StopOrderEvent","title":"A stop order event"},"teamCreated":{"$ref":"#/components/schemas/v1TeamCreated","title":"Event notifying of the creation of a team.m"},"teamUpdated":{"$ref":"#/components/schemas/v1TeamUpdated","description":"Event notifying of an update to a team."},"timeUpdate":{"$ref":"#/components/schemas/v1TimeUpdate","title":"Time update events"},"trade":{"$ref":"#/components/schemas/vegaTrade","title":"Trade events"},"transactionResult":{"$ref":"#/components/schemas/v1TransactionResult","title":"Result of a transaction processed by the network"},"transfer":{"$ref":"#/components/schemas/vegaeventsv1Transfer","title":"Transfer event"},"transferFees":{"$ref":"#/components/schemas/v1TransferFees","description":"Event notifying of fees related to a transfer being paid."},"transferFeesDiscount":{"$ref":"#/components/schemas/v1TransferFeesDiscount","description":"Event notifying of a party's available discounts for transfer fees, per asset."},"txErrEvent":{"$ref":"#/components/schemas/v1TxErrorEvent","title":"Transaction error events, not included in the ALL event type"},"txHash":{"type":"string"},"type":{"$ref":"#/components/schemas/v1BusEventType","title":"The type of bus event. Must be one of the list below:"},"validatorScore":{"$ref":"#/components/schemas/v1ValidatorScoreEvent","title":"Validator score calculated"},"validatorUpdate":{"$ref":"#/components/schemas/v1ValidatorUpdate","title":"Validator update events"},"version":{"format":"int64","title":"Version of bus event","type":"integer"},"vestingBalancesSummary":{"$ref":"#/components/schemas/v1VestingBalancesSummary","description":"Event notifying of an update to the vesting and locked balances."},"vestingStatsUpdated":{"$ref":"#/components/schemas/v1VestingStatsUpdated","description":"Event notifying of an update to the vesting statistics."},"volumeDiscountProgramEnded":{"$ref":"#/components/schemas/v1VolumeDiscountProgramEnded","description":"Event notifying that a volume discount program has ended."},"volumeDiscountProgramStarted":{"$ref":"#/components/schemas/v1VolumeDiscountProgramStarted","description":"Event notifying that a volume discount program has started."},"volumeDiscountProgramUpdated":{"$ref":"#/components/schemas/v1VolumeDiscountProgramUpdated","description":"Event notifying that a volume discount program has been updated."},"volumeDiscountStatsUpdated":{"$ref":"#/components/schemas/v1VolumeDiscountStatsUpdated","description":"Event notifying of an update to the volume discount statistics."},"vote":{"$ref":"#/components/schemas/vegaVote","title":"Vote events for governance"},"withdrawal":{"$ref":"#/components/schemas/vegaWithdrawal","title":"Withdrawal events"}},"title":"Bus event is a container for event bus events emitted by Vega","type":"object"},"v1BusEventType":{"default":"BUS_EVENT_TYPE_UNSPECIFIED","description":"- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid\n - BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus\n - BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates\n - BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information\n - BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred\n - BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders\n - BUS_EVENT_TYPE_ACCOUNT: Event for account updates\n - BUS_EVENT_TYPE_PARTY: Event for party updates\n - BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred\n - BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party\n - BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)\n - BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)\n - BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates\n - BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node\n - BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party\n - BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled\n - BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed\n - BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega\n - BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event\n - BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs\n - BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs\n - BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction\n - BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated\n - BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated\n - BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated\n - BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created\n - BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated\n - BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast\n - BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed\n - BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch\n - BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch\n - BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated\n - BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network\n - BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated\n - BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created\n - BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting\n - BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place\n - BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus\n - BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated\n - BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer\n - BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig\n - BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig\n - BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed\n - BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates\n - BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block\n - BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade\n - BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled\n - BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network\n - BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height\n - BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade\n - BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.\n - BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.\n - BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.\n - BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.\n - BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.\n - BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.\n - BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.\n - BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.\n - BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.\n - BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.\n - BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.\n - BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.\n - BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.\n - BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.\n - BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.\n - BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.\n - BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch\n - BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.\n - BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch\n - BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch\n - BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.\n - BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.\n - BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.\n - BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.\n - BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens\n - BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type","enum":["BUS_EVENT_TYPE_UNSPECIFIED","BUS_EVENT_TYPE_ALL","BUS_EVENT_TYPE_TIME_UPDATE","BUS_EVENT_TYPE_LEDGER_MOVEMENTS","BUS_EVENT_TYPE_POSITION_RESOLUTION","BUS_EVENT_TYPE_ORDER","BUS_EVENT_TYPE_ACCOUNT","BUS_EVENT_TYPE_PARTY","BUS_EVENT_TYPE_TRADE","BUS_EVENT_TYPE_MARGIN_LEVELS","BUS_EVENT_TYPE_PROPOSAL","BUS_EVENT_TYPE_VOTE","BUS_EVENT_TYPE_MARKET_DATA","BUS_EVENT_TYPE_NODE_SIGNATURE","BUS_EVENT_TYPE_LOSS_SOCIALIZATION","BUS_EVENT_TYPE_SETTLE_POSITION","BUS_EVENT_TYPE_SETTLE_DISTRESSED","BUS_EVENT_TYPE_MARKET_CREATED","BUS_EVENT_TYPE_ASSET","BUS_EVENT_TYPE_MARKET_TICK","BUS_EVENT_TYPE_WITHDRAWAL","BUS_EVENT_TYPE_DEPOSIT","BUS_EVENT_TYPE_AUCTION","BUS_EVENT_TYPE_RISK_FACTOR","BUS_EVENT_TYPE_NETWORK_PARAMETER","BUS_EVENT_TYPE_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_MARKET_UPDATED","BUS_EVENT_TYPE_ORACLE_SPEC","BUS_EVENT_TYPE_ORACLE_DATA","BUS_EVENT_TYPE_DELEGATION_BALANCE","BUS_EVENT_TYPE_VALIDATOR_SCORE","BUS_EVENT_TYPE_EPOCH_UPDATE","BUS_EVENT_TYPE_VALIDATOR_UPDATE","BUS_EVENT_TYPE_STAKE_LINKING","BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT","BUS_EVENT_TYPE_CHECKPOINT","BUS_EVENT_TYPE_STREAM_START","BUS_EVENT_TYPE_KEY_ROTATION","BUS_EVENT_TYPE_STATE_VAR","BUS_EVENT_TYPE_NETWORK_LIMITS","BUS_EVENT_TYPE_TRANSFER","BUS_EVENT_TYPE_VALIDATOR_RANKING","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED","BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED","BUS_EVENT_TYPE_POSITION_STATE","BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL","BUS_EVENT_TYPE_BEGIN_BLOCK","BUS_EVENT_TYPE_END_BLOCK","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED","BUS_EVENT_TYPE_SETTLE_MARKET","BUS_EVENT_TYPE_TRANSACTION_RESULT","BUS_EVENT_TYPE_SNAPSHOT_TAKEN","BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY","BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED","BUS_EVENT_TYPE_EXPIRED_ORDERS","BUS_EVENT_TYPE_DISTRESSED_POSITIONS","BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION","BUS_EVENT_TYPE_STOP_ORDER","BUS_EVENT_TYPE_FUNDING_PERIOD","BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT","BUS_EVENT_TYPE_TEAM_CREATED","BUS_EVENT_TYPE_TEAM_UPDATED","BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM","BUS_EVENT_TYPE_REFEREE_JOINED_TEAM","BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED","BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_CREATED","BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET","BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED","BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_STATS_UPDATED","BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED","BUS_EVENT_TYPE_FEES_STATS_UPDATED","BUS_EVENT_TYPE_FUNDING_PAYMENTS","BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED","BUS_EVENT_TYPE_VESTING_SUMMARY","BUS_EVENT_TYPE_TRANSFER_FEES_PAID","BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED","BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED","BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED","BUS_EVENT_TYPE_MARKET","BUS_EVENT_TYPE_TX_ERROR"],"title":"Bus event type is used to specify a type of event\nIt has 2 styles of event:\nSingle values (e.g. BUS_EVENT_TYPE_ORDER) where they represent one data item\nGroup values (e.g. BUS_EVENT_TYPE_AUCTION) where they represent a group of data items","type":"string"},"v1CheckpointEvent":{"properties":{"blockHash":{"type":"string"},"blockHeight":{"format":"uint64","type":"string"},"hash":{"type":"string"}},"type":"object"},"v1Condition":{"properties":{"operator":{"$ref":"#/components/schemas/ConditionOperator","description":"Type of comparison to make on the value."},"value":{"description":"Value to be compared with by the operator.","type":"string"}},"title":"Condition describes the condition that must be validated by the network","type":"object"},"v1CoreSnapshotData":{"description":"CoreSnapshotData represents the core snapshot data.","properties":{"blockHash":{"title":"Hash of the snapshot block","type":"string"},"blockHeight":{"format":"uint64","title":"Block height at which snapshot was taken","type":"string"},"coreVersion":{"description":"Semver version number of the core.","type":"string"},"protocolUpgradeBlock":{"title":"Indicates if the snapshot is taken as part of protocol upgrade","type":"boolean"}},"type":"object"},"v1CreateReferralSet":{"description":"Command that a party can use to instruct the network to create a new referral set on the network.\nThe submitter of this command will become the referrer of the new set and cannot be the referrer or a referee of another set.\nA referrer can use the referral set ID as a referral code to attract others to the Vega network and have fees reduced for the referral set.","properties":{"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"$ref":"#/components/schemas/v1CreateReferralSetTeam","description":"Team details, if the referral set is to be considered a team."}},"type":"object"},"v1CreateReferralSetTeam":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"External link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamUrl":{"description":"External link to the team's homepage.","type":"string"}},"type":"object"},"v1Data":{"description":"Data describes valid source data that has been received by the node.\nIt represents both matched and unmatched data.","properties":{"broadcastAt":{"description":"Timestamp in Unix nanoseconds for when the data was broadcast to the markets\nwith a matching spec. It has no value when the data did not match any spec.","format":"int64","type":"string"},"data":{"items":{"$ref":"#/components/schemas/v1Property"},"title":"Data holds all the properties of the data","type":"array"},"error":{"description":"Error message if the data could not be sourced.","type":"string"},"matchedSpecIds":{"description":"`matched_specs_ids` lists all the specs that matched this data.\nWhen the array is empty, it means no spec matched this data.","items":{"type":"string"},"type":"array"},"metaData":{"items":{"$ref":"#/components/schemas/v1Property"},"title":"Holds all metadata properties","type":"array"},"signers":{"items":{"$ref":"#/components/schemas/v1Signer"},"type":"array"}},"type":"object"},"v1DelegateSubmission":{"description":"Command to allow a token holder to delegate their tokens to a validator to help secure the network.\nA token holder delegating to a validator will earn rewards based on the amount they have delegated, and the performance of the chosen validator.","properties":{"amount":{"description":"Amount of stake to delegate, as an unsigned integer scaled to the governance asset's decimal places.","type":"string"},"nodeId":{"description":"Node ID to delegate stake to.","type":"string"}},"type":"object"},"v1DelegationBalanceEvent":{"properties":{"amount":{"type":"string"},"epochSeq":{"type":"string"},"nodeId":{"type":"string"},"party":{"type":"string"}},"title":"DelegationBalanceEvent - updates on the delegation balance of a party to a node in the current epoch in effect","type":"object"},"v1DistressedOrders":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"parties":{"items":{"type":"string"},"title":"Slice of Party IDs i.e. each party's public key for the event","type":"array"}},"title":"Distressed order contains the party IDs for all parties that were distressed and had their orders closed,\nbut did not need to be closed out after cancelling their orders","type":"object"},"v1DistressedPositions":{"description":"Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book\ncould not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close\nthem out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated.\nParties that are no longer distressed but active will be listed in the safe_parties field.","properties":{"distressedParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, that are distressed but still have open volume","type":"array"},"marketId":{"title":"Market ID for the event","type":"string"},"safeParties":{"items":{"type":"string"},"title":"Slice of party IDs i.e. each party's public key, who were distressed but now can safely maintain their position","type":"array"}},"type":"object"},"v1ERC20MultiSigSignerAdded":{"properties":{"epochSeq":{"title":"Epoch that the node was added for","type":"string"},"newSigner":{"title":"Ethereum address of the new signer","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"signatureId":{"title":"ID of the signature bundle","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node to be added","type":"string"}},"type":"object"},"v1ERC20MultiSigSignerEvent":{"properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"nonce":{"type":"string"},"signer":{"type":"string"},"txHash":{"type":"string"},"type":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerEventType"}},"type":"object"},"v1ERC20MultiSigSignerEventType":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_ADDED","TYPE_REMOVED"],"type":"string"},"v1ERC20MultiSigSignerRemoved":{"properties":{"epochSeq":{"title":"Epoch that the node was removed for","type":"string"},"nonce":{"description":"Nonce used.","type":"string"},"oldSigner":{"title":"Ethereum address of the signer to be removed","type":"string"},"signatureSubmitters":{"items":{"$ref":"#/components/schemas/v1ERC20MultiSigSignerRemovedSubmitter"},"title":"List containing all the IDs of bundle generated\nThere should be one bundle generated for every validators\nin the validator set","type":"array"},"timestamp":{"format":"int64","title":"Time at which this happened","type":"string"},"validatorId":{"title":"Node ID of the Vega node which is to be removed","type":"string"}},"type":"object"},"v1ERC20MultiSigSignerRemovedSubmitter":{"properties":{"signatureId":{"description":"Signature ID of the signer removed.","type":"string"},"submitter":{"title":"Address of the submitter of the transaction","type":"string"}},"type":"object"},"v1ERC20MultiSigThresholdSetEvent":{"properties":{"blockNumber":{"format":"uint64","type":"string"},"blockTime":{"format":"int64","type":"string"},"id":{"type":"string"},"logIndex":{"format":"uint64","type":"string"},"newThreshold":{"format":"int64","type":"integer"},"nonce":{"type":"string"},"txHash":{"type":"string"}},"type":"object"},"v1ETHAddress":{"properties":{"address":{"type":"string"}},"type":"object"},"v1EndBlock":{"properties":{"height":{"format":"uint64","type":"string"}},"title":"EndBlock","type":"object"},"v1EpochEvent":{"properties":{"action":{"$ref":"#/components/schemas/vegaEpochAction","title":"Action tells us what action is taking place"},"endTime":{"format":"int64","title":"Vega time at which this epoch actually ended","type":"string"},"expireTime":{"format":"int64","title":"Vega time at which this epoch should end","type":"string"},"seq":{"format":"uint64","title":"Sequence number that increases by one each epoch","type":"string"},"startTime":{"format":"int64","title":"Vega time at which this epoch started","type":"string"}},"title":"Epoch details","type":"object"},"v1EthereumKeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Ethereum key will be rotated.","properties":{"currentAddress":{"description":"Ethereum address of the node's current Ethereum keys.","type":"string"},"ethereumSignature":{"$ref":"#/components/schemas/v1Signature","description":"Signature signed by the new Ethereum key that can be verified to prove ownership."},"newAddress":{"description":"Ethereum address that is being rotated to.","type":"string"},"submitterAddress":{"description":"Ethereum public key to use as a submitter to allow automatic signature generation.","type":"string"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object"},"v1EthereumKeyRotation":{"properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newAddress":{"title":"Ethereum address that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Ethereum key","type":"string"},"oldAddress":{"title":"Ethereum address that was previously associated with the node","type":"string"}},"title":"Event that contains information about an Ethereum key rotation","type":"object"},"v1ExpiredOrders":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"orderIds":{"items":{"type":"string"},"title":"Slice of expired order IDs","type":"array"}},"type":"object"},"v1ExternalData":{"properties":{"data":{"$ref":"#/components/schemas/v1Data"}},"type":"object"},"v1FeesStats":{"properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"makerFeesGenerated":{"description":"Maker fees paid by all trade aggressors, and which makers the fees were paid to.","items":{"$ref":"#/components/schemas/v1MakerFeesGenerated"},"type":"array"},"market":{"title":"Market the fees were paid in","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to all referee taker fees.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"referrerRewardsGenerated":{"description":"Referral rewards generated by all referee taker fees.","items":{"$ref":"#/components/schemas/v1ReferrerRewardsGenerated"},"type":"array"},"totalFeesPaidAndReceived":{"description":"Total trading fees received and paid by the party.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"totalRewardsReceived":{"description":"Total referral rewards received by the referrer of the referral set.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"volumeDiscountApplied":{"description":"Total volume discounts applied to all referee taker fees.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"}},"title":"Fees rewards and discounts paid / received per parties during an epoch","type":"object"},"v1Filter":{"description":"Filter describes the conditions under which a data source data is considered of\ninterest or not.","properties":{"conditions":{"description":"Conditions that should be matched by the data to be\nconsidered of interest.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"key":{"$ref":"#/components/schemas/v1PropertyKey","description":"Data source's data property key targeted by the filter."}},"type":"object"},"v1FundingPayments":{"description":"Event notifying of funding payments at the end of a funding period.","properties":{"marketId":{"description":"ID of the market.","type":"string"},"payments":{"description":"List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.","items":{"$ref":"#/components/schemas/eventsv1FundingPayment"},"type":"array"},"seq":{"description":"Sequence number of the funding period associated with these payments.","format":"uint64","type":"string"}},"type":"object"},"v1FundingPeriod":{"description":"Event notifying on the details of a funding interval for a perpetuals market.","properties":{"end":{"description":"Time in Unix nanoseconds when the funding period ended.","format":"int64","type":"string"},"externalTwap":{"description":"TWAP for this period based on the external data-points.","type":"string"},"fundingPayment":{"description":"Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.","type":"string"},"fundingRate":{"description":"Percentage difference between the time-weighted average price of the external and internal data point.","type":"string"},"internalTwap":{"description":"TWAP for this period based on the internal data-points.","type":"string"},"marketId":{"description":"ID of the market for which this funding period relates to.","type":"string"},"seq":{"description":"Sequence number of the funding period.","format":"uint64","type":"string"},"start":{"description":"Time in Unix nanoseconds when the funding period started.","format":"int64","type":"string"}},"type":"object"},"v1FundingPeriodDataPoint":{"description":"Event notifying a data point for a funding period.","properties":{"dataPointType":{"$ref":"#/components/schemas/FundingPeriodDataPointSource","description":"Origin of the data point."},"marketId":{"description":"Market ID which the data point relates to.","type":"string"},"price":{"description":"Price of the asset as seen by this data point.","type":"string"},"seq":{"description":"Sequence number of the funding period this data point belongs to.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of when the data point was received.","format":"int64","type":"string"},"twap":{"description":"The TWAP for this source with this data-point added.","type":"string"}},"type":"object"},"v1IcebergOpts":{"properties":{"minimumVisibleSize":{"description":"Minimum allowed remaining size of the order before it is replenished back to its peak size.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that is made visible and can be traded with during the execution of a single order.","format":"uint64","type":"string"}},"title":"Iceberg order options","type":"object"},"v1InternalTimeTrigger":{"description":"Trigger for an internal time data source.","properties":{"every":{"description":"Repeat the trigger every n seconds after the initial. If no time for\ninitial was specified, begin repeating immediately.","format":"int64","type":"string"},"initial":{"description":"Trigger when the vega time is greater or equal to this time, in Unix seconds.","format":"int64","type":"string"}},"type":"object"},"v1IssueSignatures":{"description":"Command that can be used by a validator to instruct the network to generate signatures to add or remove validators from the multisig-control contract.\nSignatures can only be generated for validator nodes that have been promoted or demoted from the consensus validator set, and any attempt to generate signatures for another node will be rejected.\nThe generated signatures can only be submitted to the contract by the Ethereum addresses included in the command.","properties":{"kind":{"$ref":"#/components/schemas/v1NodeSignatureKind","description":"What kind of signatures to generate, namely for whether a signer is being added or removed."},"submitter":{"description":"Ethereum address which will submit the signatures to the smart contract.","type":"string"},"validatorNodeId":{"description":"Node ID of the validator node that will be signed in or out of the smart contract.","type":"string"}},"type":"object"},"v1JoinTeam":{"description":"Command that allows the submitter to join a team or change teams if they are already a member of a team.","properties":{"id":{"description":"ID of the team to join, this is the same as the referral code used to generate the team.","type":"string"}},"type":"object"},"v1KeyRotateSubmission":{"description":"A validator command sent manually that allows a node operator to indicate to the network that their node's Vega key will be rotated.","properties":{"currentPubKeyHash":{"description":"Hash of the node's current Vega public key.","type":"string"},"newPubKey":{"description":"Vega public key that would be rotated to.","type":"string"},"newPubKeyIndex":{"description":"New Vega public key derivation index.","format":"int64","type":"integer"},"targetBlock":{"description":"Block height at which the key rotation will take effect.","format":"uint64","type":"string"}},"type":"object"},"v1KeyRotation":{"properties":{"blockHeight":{"format":"uint64","title":"Block height when the key rotation took effect","type":"string"},"newPubKey":{"title":"Vega public key that is newly associated with the node","type":"string"},"nodeId":{"title":"Node ID of the node that rotated their Vega key","type":"string"},"oldPubKey":{"title":"Vega public key that was previously associated with the node","type":"string"}},"title":"Event that contains information about a Vega key rotation","type":"object"},"v1LedgerMovements":{"properties":{"ledgerMovements":{"items":{"$ref":"#/components/schemas/vegaLedgerMovement"},"title":"One or more entries containing internal transfer information","type":"array"}},"title":"Transfer responses event contains a collection of transfer information","type":"object"},"v1LiquidityProvisionAmendment":{"description":"Command that allows a liquidity provider to update the details of their existing liquidity commitment.\nAny field that is left unset or as a default value indicates that this field on the original submission will be left unchanged.","properties":{"commitmentAmount":{"description":"New commitment amount.","type":"string"},"fee":{"description":"New nominated liquidity fee factor.","type":"string"},"marketId":{"description":"Market that the submitter wants to amend the liquidity commitment for.","type":"string"},"reference":{"description":"New arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object"},"v1LiquidityProvisionCancellation":{"description":"Command that allows a liquidity provider to inform the network that they will stop providing liquidity for a market.","properties":{"marketId":{"description":"Market that the submitter will stop providing liquidity for.","type":"string"}},"type":"object"},"v1LiquidityProvisionSubmission":{"description":"A command that indicates to the network the party's intention to supply liquidity to the given market and become a liquidity provider.\nAn active liquidity provider for a market will earn fees based on the trades that occur in the market.","properties":{"commitmentAmount":{"description":"Amount that the submitter will commit as liquidity to the market, specified as a unitless number in the settlement asset of the market.\nThis field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"marketId":{"description":"Market that the submitter wishes to provide liquidity for.","type":"string"},"reference":{"description":"Arbitrary reference to be added to every order created out of this liquidity provision submission.","type":"string"}},"type":"object"},"v1LossSocialization":{"properties":{"amount":{"title":"Amount distributed","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"}},"title":"Loss socialization event contains details on the amount of wins unable to be distributed","type":"object"},"v1MakerFeesGenerated":{"properties":{"makerFeesPaid":{"description":"Amount of maker fees paid by the taker to the maker.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"taker":{"description":"Party that paid the fees.","type":"string"}},"title":"Maker fees generated by the trade aggressor","type":"object"},"v1MarketEvent":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"payload":{"title":"Payload is a unique information string","type":"string"}},"title":"MarketEvent - the common denominator for all market events\ninterface has a method to return a string for logging","type":"object"},"v1MarketTick":{"properties":{"id":{"title":"Market ID for the event","type":"string"},"time":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"title":"Market tick event contains the time value for when a particular market was last processed on Vega","type":"object"},"v1NodeSignature":{"description":"A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.","properties":{"id":{"description":"ID of the resource that the signature relates to.","type":"string"},"kind":{"$ref":"#/components/schemas/v1NodeSignatureKind","description":"Kind of resource being signed."},"sig":{"description":"Signature generated by the node.","format":"byte","type":"string"}},"type":"object"},"v1NodeSignatureKind":{"default":"NODE_SIGNATURE_KIND_UNSPECIFIED","description":"- NODE_SIGNATURE_KIND_UNSPECIFIED: Represents an unspecified or missing value from the input.\n - NODE_SIGNATURE_KIND_ASSET_NEW: Represents a signature for a new asset allow-listing.\n - NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL: Represents a signature for an asset withdrawal.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED: Represents a signature for a new signer added to the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED: Represents a signature for a signer removed from the erc20 multisig contract.\n - NODE_SIGNATURE_KIND_ASSET_UPDATE: Represents a signature for an asset update allow-listing.","enum":["NODE_SIGNATURE_KIND_UNSPECIFIED","NODE_SIGNATURE_KIND_ASSET_NEW","NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED","NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED","NODE_SIGNATURE_KIND_ASSET_UPDATE"],"title":"Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc","type":"string"},"v1OneOffGovernanceTransfer":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object"},"v1OracleDataSubmission":{"properties":{"payload":{"description":"Data provided by the data source.","format":"byte","type":"string"},"source":{"$ref":"#/components/schemas/OracleDataSubmissionOracleSource","description":"Source from which the data is coming from."}},"title":"Command to submit new oracle data from third party providers","type":"object"},"v1OrderAmendment":{"description":"A command that allows a party to update the details of an existing order.\nAny field that is left unset or as a default value indicates that this field on the original order will be left unchanged.\nIt is not possible to change an order's type through this command.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for the new expiry time for the order.","format":"int64","type":"string"},"marketId":{"description":"Market ID that the order was originally submitted to.","type":"string"},"orderId":{"description":"ID of the order to amend.","type":"string"},"peggedOffset":{"description":"New pegged offset for the order.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"peggedReference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"New pegged reference for the order."},"price":{"description":"New price for the order. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"size":{"description":"New size for the order.\nAmending the size causes the size and remaining part of the order to be changed by the difference between the original and amended size.\n- Specifying a size smaller than the current size leaves the order at its current order book position.\n- Specifying a size larger than the current size removes and reinserts the order at the back of the price level.\n- Specifying a size that results in the remaining part of the order being reduced to zero cancels the order.\nThis field is an unsigned integer scaled to the market's decimal places.\nIf specified, size_delta must be set to 0.","format":"uint64","type":"string"},"sizeDelta":{"description":"Amend the size for the order by the delta specified:\n- To reduce the size from the current value set a negative integer value\n- To increase the size from the current value, set a positive integer value\n- To leave the size unchanged set a value of zero\nThis field needs to be scaled using the market's position decimal places.\nIf specified, size must not be set.","format":"int64","type":"string"},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","description":"New time in force for the order."}},"type":"object"},"v1OrderCancellation":{"description":"A command that instructs the network to cancel orders, active or partially filled, that were previously submitted by the sender of this transaction.\nIt is not possible to cancel another party's order with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"orderId":{"description":"Restrict cancellations to an order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object"},"v1OrderSubmission":{"description":"A command that submits an order to the Vega network for a given market.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the order will expire. Can only be set when the order's time-in-force is GTT.","format":"int64","type":"string"},"icebergOpts":{"$ref":"#/components/schemas/v1IcebergOpts","description":"Iceberg order details. If set, the order will exist on the order book in chunks."},"marketId":{"description":"Market ID to submit the order to.","type":"string"},"peggedOrder":{"$ref":"#/components/schemas/vegaPeggedOrder","description":"Pegged order details. If set, the order's price will be offset from a particular reference price of the order book at all times."},"postOnly":{"description":"If set, the order will only be executed if it would not trade on entry to the order book. Only valid for limit orders.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places,\nrequired field for limit orders, however it is not required for market orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"reduceOnly":{"description":"If set, the order will only be executed if the outcome of the trade moves the trader's position closer to 0.\nOnly valid for non-persistent orders.","type":"boolean"},"reference":{"description":"Arbitrary optional reference for the order, to be used as a human-readable non-unique identifier for the order.","type":"string"},"side":{"$ref":"#/components/schemas/vegaSide","description":"Which side of the order book the order is for, e.g. buy or sell."},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of units.","format":"uint64","type":"string"},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","description":"Time in force indicates how long an order will remain active before it is executed or expires.."},"type":{"$ref":"#/components/schemas/vegaOrderType","description":"Type of the order."}},"type":"object"},"v1PaidLiquidityFeesStats":{"properties":{"asset":{"description":"Settlement asset of the market.","type":"string"},"epochSeq":{"description":"Epoch for which these stats where valid.","format":"uint64","type":"string"},"feesPaidPerParty":{"description":"Fees paid per party.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"market":{"description":"Market the fees were paid in.","type":"string"},"totalFeesPaid":{"description":"Total fees paid across all parties.","type":"string"}},"type":"object"},"v1PartyActivityStreak":{"properties":{"activeFor":{"description":"How many epoch this party has been active for.","format":"uint64","type":"string"},"epoch":{"description":"The epoch this information is relevant to.","format":"uint64","type":"string"},"inactiveFor":{"description":"how many epoch this party has been inactive for.","format":"uint64","type":"string"},"isActive":{"description":"Is this party considered active or not.","type":"boolean"},"openVolume":{"title":"Party's open interest volume at the end of the given epoch","type":"string"},"party":{"description":"The party.","type":"string"},"rewardDistributionActivityMultiplier":{"description":"The current rewards distribution multiplier for this party.","type":"string"},"rewardVestingActivityMultiplier":{"description":"The vesting multiplier for this party.","type":"string"},"tradedVolume":{"title":"Party's traded volume at the end of the given epoch","type":"string"}},"title":"The updated activity streak of a party at end of epoch","type":"object"},"v1PartyAmount":{"properties":{"amount":{"description":"Amount received.","type":"string"},"party":{"description":"Receiving party ID.","type":"string"},"quantumAmount":{"description":"Amount value in quantum.","type":"string"}},"title":"A pair of a party and amount","type":"object"},"v1PartyLockedBalance":{"description":"A party's locked balance for a given asset.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Locked balance.","type":"string"},"untilEpoch":{"description":"Epoch in which the balance will be released.","format":"uint64","type":"string"}},"type":"object"},"v1PartyMarginModeUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the update happened.","format":"uint64","type":"string"},"marginFactor":{"description":"Margin factor for the market. Isolated mode only.","type":"string"},"marginMode":{"$ref":"#/components/schemas/vegaMarginMode","description":"Updated margin mode."},"marketId":{"description":"Unique ID of the market in which the update happened.","type":"string"},"maxTheoreticalLeverage":{"description":"Maximum theoretical leverage for the market. Isolated mode only.","type":"string"},"minTheoreticalMarginFactor":{"description":"Minimum theoretical margin factor for the market. Isolated mode only.","type":"string"},"partyId":{"description":"Unique ID of the party that updated their margin mode.","type":"string"}},"type":"object"},"v1PartyProfileUpdated":{"properties":{"updatedProfile":{"$ref":"#/components/schemas/vegaPartyProfile","description":"Party's profile updated."}},"type":"object"},"v1PartyVestingBalance":{"description":"Balance that is being vested for the party.","properties":{"asset":{"description":"Asset ID.","type":"string"},"balance":{"description":"Balance that is vested.","type":"string"}},"type":"object"},"v1PartyVestingStats":{"description":"The vesting stats for a given party.","properties":{"partyId":{"description":"The party.","type":"string"},"quantumBalance":{"description":"The balance of the party, in quantum.","type":"string"},"rewardBonusMultiplier":{"description":"The bonus multiplier applied on the reward.","type":"string"}},"type":"object"},"v1PartyVestingSummary":{"properties":{"party":{"description":"Party ID.","type":"string"},"partyLockedBalances":{"description":"List of locked balances.","items":{"$ref":"#/components/schemas/v1PartyLockedBalance"},"type":"array"},"partyVestingBalances":{"description":"List of vesting balances.","items":{"$ref":"#/components/schemas/v1PartyVestingBalance"},"type":"array"}},"title":"Summary of a party's vesting balances","type":"object"},"v1PartyVolumeDiscountStats":{"description":"Volume discount stats for a given party.","properties":{"discountFactor":{"description":"Discount factor applied to fees.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object"},"v1PositionResolution":{"properties":{"closed":{"format":"int64","title":"Number of close outs","type":"string"},"distressed":{"format":"int64","title":"Number of distressed traders","type":"string"},"markPrice":{"title":"Mark price as a string representing a scaled price","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"}},"title":"Position resolution event contains information on distressed trades","type":"object"},"v1PositionStateEvent":{"properties":{"marketId":{"title":"Market ID for this position update","type":"string"},"partyId":{"title":"Party ID for this position update","type":"string"},"potentialBuys":{"format":"int64","title":"Potential orders","type":"string"},"potentialSells":{"format":"int64","type":"string"},"size":{"format":"int64","title":"Current position","type":"string"},"vwBuyPrice":{"title":"Volume weighted prices","type":"string"},"vwSellPrice":{"type":"string"}},"title":"Position state event contains the current position state for a single party in a single market","type":"object"},"v1Property":{"description":"Property describes one property of data spec with a key with its value.","properties":{"name":{"description":"Name of the property.","type":"string"},"value":{"description":"Value of the property.","type":"string"}},"type":"object"},"v1PropertyKey":{"description":"PropertyKey describes the property key contained in data source data.","properties":{"name":{"description":"Name of the property.","type":"string"},"numberDecimalPlaces":{"format":"uint64","title":"Optional decimal place to be be applied on the provided value\nvalid only for PropertyType of type DECIMAL and INTEGER","type":"string"},"type":{"$ref":"#/components/schemas/v1PropertyKeyType","description":"Data type of the property."}},"type":"object"},"v1PropertyKeyType":{"default":"TYPE_UNSPECIFIED","description":"Type describes the data type of properties that are supported by the data source\nengine.\n\n - TYPE_UNSPECIFIED: The default value.\n - TYPE_EMPTY: Any type.\n - TYPE_INTEGER: Integer type.\n - TYPE_STRING: String type.\n - TYPE_BOOLEAN: Boolean type.\n - TYPE_DECIMAL: Any floating point decimal type.\n - TYPE_TIMESTAMP: Timestamp date type.","enum":["TYPE_UNSPECIFIED","TYPE_EMPTY","TYPE_INTEGER","TYPE_STRING","TYPE_BOOLEAN","TYPE_DECIMAL","TYPE_TIMESTAMP"],"type":"string"},"v1ProposalSubmission":{"description":"Command that allows a token holder to submit a governance proposal that can be voted on by any other token holders, and eventually enacted on the Vega network.\nFor example this command can be used to propose a new market.","properties":{"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reference":{"description":"Arbitrary human-readable reference identifying the proposal.","type":"string"},"terms":{"$ref":"#/components/schemas/vegaProposalTerms","description":"Proposal terms containing the type and details of the proposal, as well as time spans for voting and enactment."}},"type":"object"},"v1ProtocolUpgradeDataNodeReady":{"properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"title":"Event indicating the data node is ready for protocol upgrade","type":"object"},"v1ProtocolUpgradeEvent":{"properties":{"approvers":{"items":{"type":"string"},"title":"Tendermint validators that have agreed to the upgrade","type":"array"},"status":{"$ref":"#/components/schemas/v1ProtocolUpgradeProposalStatus","title":"Status of the proposal"},"upgradeBlockHeight":{"format":"uint64","title":"Block height at which to perform the upgrade","type":"string"},"vegaReleaseTag":{"title":"Release tag for the vega binary","type":"string"}},"type":"object"},"v1ProtocolUpgradeProposal":{"description":"A validator command sent manually by a node operator to propose a protocol upgrade.","properties":{"upgradeBlockHeight":{"description":"Block height at which to perform the upgrade.","format":"uint64","type":"string"},"vegaReleaseTag":{"description":"Release tag for the Vega binary.","type":"string"}},"type":"object"},"v1ProtocolUpgradeProposalStatus":{"default":"PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","enum":["PROTOCOL_UPGRADE_PROPOSAL_STATUS_UNSPECIFIED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING","PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED","PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED"],"title":"- PROTOCOL_UPGRADE_PROPOSAL_STATUS_PENDING: The proposal is pending\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_APPROVED: The proposal is approved\n - PROTOCOL_UPGRADE_PROPOSAL_STATUS_REJECTED: The proposal is rejected","type":"string"},"v1ProtocolUpgradeStarted":{"properties":{"lastBlockHeight":{"format":"uint64","type":"string"}},"title":"Event indicating the core is starting a protocol upgrade","type":"object"},"v1PubKey":{"description":"PubKey is the public key that signed this data.\nDifferent public keys coming from different sources will be further separated.","properties":{"key":{"type":"string"}},"type":"object"},"v1RecurringGovernanceTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object"},"v1RefereeJoinedReferralSet":{"properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"setId":{"description":"Unique ID of the referral set the referee joined.","type":"string"}},"type":"object"},"v1RefereeJoinedTeam":{"properties":{"atEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"joinedAt":{"description":"Time in Unix nanoseconds when the party joined a team.","format":"int64","type":"string"},"referee":{"description":"The party that joined the team.","type":"string"},"teamId":{"description":"The unique identifier of the team the referee joined.","type":"string"}},"type":"object"},"v1RefereeStats":{"properties":{"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"title":"Current referee notional taker volume","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object"},"v1RefereeSwitchedTeam":{"properties":{"atEpoch":{"description":"Epoch at which the party switched the team.","format":"uint64","type":"string"},"fromTeamId":{"description":"The unique identifier of the team the referee left.","type":"string"},"referee":{"description":"The party that switched team.","type":"string"},"switchedAt":{"description":"Time in Unix nanoseconds when the party switched team. This time acts as\nthe joining time.","format":"int64","type":"string"},"toTeamId":{"description":"The unique identifier of the team joined.","type":"string"}},"type":"object"},"v1ReferralProgramEnded":{"properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the referral program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object"},"v1ReferralProgramStarted":{"properties":{"atEpoch":{"description":"Epoch at which the referral program started.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaReferralProgram","description":"Referral program that has started."},"startedAt":{"description":"Time in Unix nanoseconds when the referral program started.","format":"int64","type":"string"}},"type":"object"},"v1ReferralProgramUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the referral program was updated.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaReferralProgram","description":"The updated referral program."},"updatedAt":{"description":"Time in Unix nanoseconds when the referral program was updated.","format":"int64","type":"string"}},"type":"object"},"v1ReferralSetCreated":{"properties":{"createdAt":{"description":"Time in Unix nanoseconds when the set was created.","format":"int64","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"setId":{"description":"Unique ID of the created set.","type":"string"},"updatedAt":{"description":"Time in Unix nanoseconds when the set was updated.","format":"int64","type":"string"}},"type":"object"},"v1ReferralSetStatsUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the set's statistics are updated.","format":"uint64","type":"string"},"refereesStats":{"description":"Referees' statistics for that epoch.","items":{"$ref":"#/components/schemas/v1RefereeStats"},"type":"array"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Taker volume of the referrer","type":"string"},"rewardFactor":{"description":"Reward factor applied to the trades.","type":"string"},"rewardsFactorMultiplier":{"description":"Rewards factor multiplier for the trades.","type":"string"},"rewardsMultiplier":{"description":"Rewards multiplier applied to the trades.","type":"string"},"setId":{"description":"Unique ID of the set.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object"},"v1ReferrerRewardsGenerated":{"properties":{"generatedReward":{"description":"Amount of rewards generated per party.","items":{"$ref":"#/components/schemas/v1PartyAmount"},"type":"array"},"referrer":{"description":"Referrer party.","type":"string"}},"title":"Rewards generated for referrers by each of their referees","type":"object"},"v1RewardPayoutEvent":{"properties":{"amount":{"type":"string"},"asset":{"type":"string"},"epochSeq":{"type":"string"},"gameId":{"type":"string"},"lockedUntilEpoch":{"type":"string"},"party":{"type":"string"},"percentOfTotalReward":{"type":"string"},"quantumAmount":{"type":"string"},"rewardType":{"type":"string"},"timestamp":{"format":"int64","type":"string"}},"type":"object"},"v1SettleDistressed":{"properties":{"margin":{"title":"Margin value as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"},"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID i.e. a party's public key for the event","type":"string"},"price":{"title":"Price as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places","type":"string"}},"title":"Settle distressed event contains information on distressed trading parties who are closed out","type":"object"},"v1SettleMarket":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"}},"title":"Settle market event to notify data node that a market has been settled\nso positions and PL can be updated accordingly","type":"object"},"v1SettlePosition":{"properties":{"marketId":{"title":"Market ID for the event","type":"string"},"partyId":{"title":"Party ID (public key) for the event","type":"string"},"positionFactor":{"title":"Position factor - 10 ^ number of position decimal places","type":"string"},"price":{"title":"Price of settlement as a string","type":"string"},"tradeSettlements":{"items":{"$ref":"#/components/schemas/v1TradeSettlement"},"title":"A collection of 1 or more trade settlements","type":"array"}},"title":"Settle position event contains position settlement information for a party","type":"object"},"v1Signature":{"description":"Signature definition that allows the network to authenticate external data.","properties":{"algo":{"description":"Algorithm used to create the signature.","type":"string"},"value":{"description":"Hex encoded bytes of the signature.","type":"string"},"version":{"description":"Version of the algorithm used to create the signature.","format":"int64","type":"integer"}},"type":"object"},"v1Signer":{"properties":{"ethAddress":{"$ref":"#/components/schemas/v1ETHAddress","description":"In case of an open oracle - Ethereum address will be submitted."},"pubKey":{"$ref":"#/components/schemas/v1PubKey","description":"List of authorized public keys that signed the data for this\nsource. All the public keys in the data should be contained in these\npublic keys."}},"type":"object"},"v1StakeLinking":{"properties":{"amount":{"description":"Amount of stake deposited or removed.","type":"string"},"blockHeight":{"description":"Block when the event happened.","format":"uint64","type":"string"},"blockTime":{"description":"Block time.","format":"int64","type":"string"},"ethereumAddress":{"description":"Ethereum address from which the stake link was initiated.","type":"string"},"finalizedAt":{"description":"Time at which the Vega network finalised the state of the event.","format":"int64","type":"string"},"id":{"title":"Internal ID for this staking event","type":"string"},"logIndex":{"description":"Log index.","format":"uint64","type":"string"},"party":{"description":"Party to whom the event is directed at.","type":"string"},"status":{"$ref":"#/components/schemas/v1StakeLinkingStatus","description":"Status of the event."},"ts":{"description":"Timestamp in Unix nanoseconds of when the event was emitted by Ethereum.","format":"int64","type":"string"},"txHash":{"description":"Hash of the transaction in which the event happened.","type":"string"},"type":{"$ref":"#/components/schemas/v1StakeLinkingType","description":"Stake linking event type."}},"title":"StakeLinking - an event notifying of stake being deposited or removed for a given party\nThese events are emitted for every Staking deposit or removed accepted by the network","type":"object"},"v1StakeLinkingStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_ACCEPTED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates an event waiting for confirmation from the Vega network\n - STATUS_ACCEPTED: Indicates an event accepted by the Vega network\n - STATUS_REJECTED: Indicates an event rejected by the Vega network","type":"string"},"v1StakeLinkingType":{"default":"TYPE_UNSPECIFIED","enum":["TYPE_UNSPECIFIED","TYPE_LINK","TYPE_UNLINK"],"title":"- TYPE_UNSPECIFIED: Default value\n - TYPE_LINK: Indicate of a stake deposit instruction\n - TYPE_UNLINK: Indicate of a stake remove instruction","type":"string"},"v1StateVar":{"properties":{"eventId":{"type":"string"},"id":{"type":"string"},"state":{"type":"string"}},"title":"StateVar event updates on state changes in state variable consensus","type":"object"},"v1StopOrderEvent":{"properties":{"stopOrder":{"$ref":"#/components/schemas/vegaStopOrder"},"submission":{"$ref":"#/components/schemas/v1OrderSubmission"}},"type":"object"},"v1StopOrderSetup":{"description":"Price and expiry configuration for a stop order.","properties":{"expiresAt":{"description":"Timestamp, in Unix nanoseconds, for when the stop order should expire. If not set the stop order will not expire.","format":"int64","type":"string"},"expiryStrategy":{"$ref":"#/components/schemas/StopOrderExpiryStrategy","description":"Strategy to adopt if the expiry time is reached."},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission","description":"Order to be submitted once the trigger is breached."},"price":{"description":"Order will be submitted if the last traded price on the market breaches the given price.","type":"string"},"sizeOverrideSetting":{"$ref":"#/components/schemas/StopOrderSizeOverrideSetting","title":"Indicates if this order is linked to an order or position to derive the order size"},"sizeOverrideValue":{"$ref":"#/components/schemas/StopOrderSizeOverrideValue","title":"If this order is linked to a position, provide an optional scaling factor"},"trailingPercentOffset":{"description":"Order will be submitted if the last traded price has moved the given percent from the highest/lowest mark price since the stop order was submitted.","type":"string"}},"type":"object"},"v1StopOrdersCancellation":{"description":"A command that instructs the network to cancel untriggered stop orders that were submitted by the sender of this transaction.\nIf any cancelled stop order is part of an OCO, both stop orders will be cancelled.\nIt is not possible to cancel another party's stop orders with this command.","properties":{"marketId":{"description":"Restrict cancellations to those submitted to the given market. If not set, all stop orders across all markets will be cancelled.","type":"string"},"stopOrderId":{"description":"Restrict cancellations to a stop order with the given ID. If set, then a market ID must also be provided.","type":"string"}},"type":"object"},"v1StopOrdersSubmission":{"description":"A command that allows a party to submit a stop order for a given market.\nA stop order is a normal order that remains off the order book and is only submitted if a given trigger is breached from a particular direction.\nIf both rises-above and falls-below are configured, then if one is triggered the other will be cancelled (OCO).","properties":{"fallsBelow":{"$ref":"#/components/schemas/v1StopOrderSetup","description":"Stop order that will be triggered if the price falls below a given trigger price."},"risesAbove":{"$ref":"#/components/schemas/v1StopOrderSetup","description":"Stop order that will be triggered if the price rises above a given trigger price."}},"type":"object"},"v1TeamCreated":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"atEpoch":{"description":"Epoch at which the team was created.","format":"uint64","type":"string"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"createdAt":{"description":"Time in Unix nanoseconds when the team is created.","format":"int64","type":"string"},"name":{"description":"Name of the team.","type":"string"},"referrer":{"description":"The party that created the team.","type":"string"},"teamId":{"description":"The unique identifier of the created team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"v1TeamUpdated":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"Link to an image of the team's avatar.","type":"string"},"closed":{"description":"Tells if a party can join the team or not.","type":"boolean"},"name":{"description":"Name of the team.","type":"string"},"teamId":{"description":"The unique identifier for the updated team.","type":"string"},"teamUrl":{"description":"Link to the team's homepage.","type":"string"}},"type":"object"},"v1TimeUpdate":{"properties":{"timestamp":{"format":"int64","title":"Timestamp containing latest update from Vega blockchain aka Vega-time","type":"string"}},"title":"Time update event contains the latest time update from Vega blockchain and indicates the start of a new block","type":"object"},"v1TradeSettlement":{"properties":{"marketPrice":{"title":"Price of settlement as a string (in market decimals)","type":"string"},"price":{"title":"Price of settlement as string (in asset decimals)","type":"string"},"size":{"format":"int64","title":"Size of trade settlement","type":"string"}},"title":"Trade settlement is part of the settle position event","type":"object"},"v1TransactionResult":{"properties":{"announceNode":{"$ref":"#/components/schemas/v1AnnounceNode"},"applyReferralCode":{"$ref":"#/components/schemas/v1ApplyReferralCode"},"batchMarketInstructions":{"$ref":"#/components/schemas/v1BatchMarketInstructions"},"batchProposal":{"$ref":"#/components/schemas/v1BatchProposalSubmission"},"cancelTransfer":{"$ref":"#/components/schemas/commandsv1CancelTransfer"},"createReferralSet":{"$ref":"#/components/schemas/v1CreateReferralSet"},"delegateSubmission":{"$ref":"#/components/schemas/v1DelegateSubmission"},"ethereumKeyRotateSubmission":{"$ref":"#/components/schemas/v1EthereumKeyRotateSubmission"},"failure":{"$ref":"#/components/schemas/TransactionResultFailureDetails"},"hash":{"title":"Hash of the transaction","type":"string"},"issueSignatures":{"$ref":"#/components/schemas/v1IssueSignatures"},"joinTeam":{"$ref":"#/components/schemas/v1JoinTeam"},"keyRotateSubmission":{"$ref":"#/components/schemas/v1KeyRotateSubmission"},"liquidityProvisionAmendment":{"$ref":"#/components/schemas/v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"$ref":"#/components/schemas/v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"$ref":"#/components/schemas/v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"$ref":"#/components/schemas/v1OracleDataSubmission"},"orderAmendment":{"$ref":"#/components/schemas/v1OrderAmendment"},"orderCancellation":{"$ref":"#/components/schemas/v1OrderCancellation"},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"$ref":"#/components/schemas/v1ProposalSubmission"},"protocolUpgradeProposal":{"$ref":"#/components/schemas/v1ProtocolUpgradeProposal"},"status":{"description":"Status of the transaction, did it succeed or an error was raised.","type":"boolean"},"stopOrderCancellation":{"$ref":"#/components/schemas/v1StopOrdersCancellation"},"stopOrderSubmission":{"$ref":"#/components/schemas/v1StopOrdersSubmission"},"success":{"$ref":"#/components/schemas/TransactionResultSuccessDetails"},"transfer":{"$ref":"#/components/schemas/vegacommandsv1Transfer"},"undelegateSubmission":{"$ref":"#/components/schemas/v1UndelegateSubmission"},"updateMarginMode":{"$ref":"#/components/schemas/v1UpdateMarginMode"},"updatePartyProfile":{"$ref":"#/components/schemas/v1UpdatePartyProfile"},"updateReferralSet":{"$ref":"#/components/schemas/v1UpdateReferralSet"},"voteSubmission":{"$ref":"#/components/schemas/v1VoteSubmission"},"withdrawSubmission":{"$ref":"#/components/schemas/v1WithdrawSubmission"}},"type":"object"},"v1TransferFees":{"properties":{"amount":{"description":"Amount of fees paid.","type":"string"},"discountApplied":{"description":"Amount that was subtracted from the transfer fee based on available discounts.","type":"string"},"epoch":{"description":"Epoch when the transfer was dispatched, and fees were paid.","format":"uint64","type":"string"},"transferId":{"description":"Transfer that triggered the collection of fees.","type":"string"}},"type":"object"},"v1TransferFeesDiscount":{"properties":{"amount":{"description":"Amount that the transfer fee was discounted by.","type":"string"},"asset":{"description":"Asset that the transfer fee discount is relevant to.","type":"string"},"epoch":{"description":"Epoch in which the discount was first available.","format":"uint64","type":"string"},"party":{"description":"Party that the transfer fee discount applies to.","type":"string"}},"type":"object"},"v1TransferStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_DONE","STATUS_REJECTED","STATUS_STOPPED","STATUS_CANCELLED"],"title":"- STATUS_UNSPECIFIED: Default value\n - STATUS_PENDING: Indicates a transfer still being processed\n - STATUS_DONE: Indicates a transfer accepted by the Vega network\n - STATUS_REJECTED: Indicates a transfer rejected by the Vega network\n - STATUS_STOPPED: Indicates a transfer stopped by the Vega network\ne.g: no funds left to cover the transfer\n - STATUS_CANCELLED: Indicates a transfer cancelled by the user","type":"string"},"v1TxErrorEvent":{"properties":{"announceNode":{"$ref":"#/components/schemas/v1AnnounceNode"},"batchMarketInstructions":{"$ref":"#/components/schemas/v1BatchMarketInstructions"},"cancelTransfer":{"$ref":"#/components/schemas/commandsv1CancelTransfer"},"delegateSubmission":{"$ref":"#/components/schemas/v1DelegateSubmission"},"errMsg":{"title":"Error message describing what went wrong","type":"string"},"issueSignatures":{"$ref":"#/components/schemas/v1IssueSignatures"},"liquidityProvisionAmendment":{"$ref":"#/components/schemas/v1LiquidityProvisionAmendment"},"liquidityProvisionCancellation":{"$ref":"#/components/schemas/v1LiquidityProvisionCancellation"},"liquidityProvisionSubmission":{"$ref":"#/components/schemas/v1LiquidityProvisionSubmission"},"oracleDataSubmission":{"$ref":"#/components/schemas/v1OracleDataSubmission"},"orderAmendment":{"$ref":"#/components/schemas/v1OrderAmendment"},"orderCancellation":{"$ref":"#/components/schemas/v1OrderCancellation"},"orderSubmission":{"$ref":"#/components/schemas/v1OrderSubmission"},"partyId":{"title":"Unique party ID for the related party","type":"string"},"proposal":{"$ref":"#/components/schemas/v1ProposalSubmission"},"protocolUpgradeProposal":{"$ref":"#/components/schemas/v1ProtocolUpgradeProposal"},"transfer":{"$ref":"#/components/schemas/vegacommandsv1Transfer"},"undelegateSubmission":{"$ref":"#/components/schemas/v1UndelegateSubmission"},"voteSubmission":{"$ref":"#/components/schemas/v1VoteSubmission"},"withdrawSubmission":{"$ref":"#/components/schemas/v1WithdrawSubmission"}},"type":"object"},"v1UndelegateSubmission":{"description":"Command to allow a token holder to instruct the network to remove their delegated stake from a given validator node.","properties":{"amount":{"description":"Amount to undelegate, as an unsigned integer scaled to the governance asset's decimal places.\nIf not set, then all delegations to the given validator node will be removed.","type":"string"},"method":{"$ref":"#/components/schemas/v1UndelegateSubmissionMethod","description":"Method of delegation."},"nodeId":{"description":"Node ID to undelegate stake from.","type":"string"}},"type":"object"},"v1UndelegateSubmissionMethod":{"default":"METHOD_UNSPECIFIED","description":" - METHOD_NOW: Undelegate straight away, losing all rewards for the current epoch.\n - METHOD_AT_END_OF_EPOCH: Undelegate at the end of an epoch, retaining all rewards for the current epoch.","enum":["METHOD_UNSPECIFIED","METHOD_NOW","METHOD_AT_END_OF_EPOCH"],"type":"string"},"v1UpdateMarginMode":{"properties":{"marginFactor":{"title":"Margin factor to use for margin in isolated mode. It is a multiplier that defines how much margin needs to be set aside","type":"string"},"marketId":{"description":"Market to change margin mode for.","type":"string"},"mode":{"$ref":"#/components/schemas/UpdateMarginModeMode","description":"Margin mode to use."}},"type":"object"},"v1UpdatePartyProfile":{"description":"Command to associate metadata to a public key, known as a party ID.\nPartial update is not supported, meaning previous values must be included in\nthe update, otherwise they are removed.","properties":{"alias":{"description":"Alias given to the party. It must be unique network-wide.","type":"string"},"metadata":{"description":"Freeform data to associate to the party.\nSupport a maximum of 10 entries.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"}},"type":"object"},"v1UpdateReferralSet":{"description":"A command that allows the referrer of a referral set to update team details for a referral set.\nAny field that is left unset or has a default value indicates that this field on the original referral set will be left unchanged.","properties":{"id":{"description":"ID of the referral set to update.","type":"string"},"isTeam":{"description":"Whether or not the referral set should be considered a team that can participate in team games on the network.","type":"boolean"},"team":{"$ref":"#/components/schemas/v1UpdateReferralSetTeam","description":"Team details, if the referral set is to be considered a team."}},"type":"object"},"v1UpdateReferralSetTeam":{"properties":{"allowList":{"description":"List of public keys that are allowed to join the team.\nOnly applicable to closed teams. Removing a party from the allow list does not remove\nthe party from the team.","items":{"type":"string"},"type":"array"},"avatarUrl":{"description":"New link to an avatar for the team.","type":"string"},"closed":{"description":"Whether or not the team is closed to new party members. When closed, only parties specified in the allow list can\njoin the team.","type":"boolean"},"name":{"description":"New name of the team.","type":"string"},"teamUrl":{"description":"New link to the team's homepage.","type":"string"}},"type":"object"},"v1ValidatorRankingEvent":{"properties":{"epochSeq":{"title":"Epoch seq for which the status is valid","type":"string"},"nextStatus":{"title":"Status of the validator in the next epoch","type":"string"},"nodeId":{"type":"string"},"performanceScore":{"title":"Performance base score","type":"string"},"previousStatus":{"title":"Status of the validator in the previous epoch","type":"string"},"rankingScore":{"title":"Final score","type":"string"},"stakeScore":{"title":"Stake based score - no anti-whaling","type":"string"},"tmVotingPower":{"format":"int64","title":"Tendermint voting power of the validator","type":"integer"}},"title":"Event that explains the status of the validator for the coming epoch","type":"object"},"v1ValidatorScoreEvent":{"properties":{"epochSeq":{"type":"string"},"multisigScore":{"type":"string"},"nodeId":{"type":"string"},"normalisedScore":{"type":"string"},"rawValidatorScore":{"type":"string"},"validatorPerformance":{"type":"string"},"validatorScore":{"type":"string"},"validatorStatus":{"type":"string"}},"title":"ValidatorScoreEvent is the score a validator gets for a given epoch","type":"object"},"v1ValidatorUpdate":{"properties":{"added":{"title":"Flag indicating if the validator has been added to or removed from vega","type":"boolean"},"avatarUrl":{"title":"AvatarURL of the validator","type":"string"},"country":{"title":"Country code (ISO 3166-1 alpha-2) for the location of the node","type":"string"},"epochSeq":{"format":"uint64","title":"Epoch in which the node was announced or removed from the network","type":"string"},"ethereumAddress":{"title":"Ethereum public key of validator node","type":"string"},"fromEpoch":{"format":"uint64","title":"Epoch in which the announced pending node will start participating in the network","type":"string"},"infoUrl":{"title":"URL with more info on the node","type":"string"},"name":{"title":"Name of the validator","type":"string"},"nodeId":{"title":"Node ID of the validator node","type":"string"},"submitterAddress":{"title":"Ethereum public key being used as the submitter to allow automatic signature generation","type":"string"},"tmPubKey":{"title":"Public key of Tendermint","type":"string"},"vegaPubKey":{"title":"Vega public key of validator node","type":"string"},"vegaPubKeyIndex":{"format":"int64","title":"Vega public key derivation index","type":"integer"}},"title":"Validator update event contains information about validator node","type":"object"},"v1VestingBalancesSummary":{"properties":{"epochSeq":{"description":"Epoch for which these balances are valid.","format":"uint64","type":"string"},"partiesVestingSummary":{"description":"Parties' summaries.","items":{"$ref":"#/components/schemas/v1PartyVestingSummary"},"type":"array"}},"title":"Summary of the vesting and locked balances for an epoch","type":"object"},"v1VestingStatsUpdated":{"description":"Stats of all parties invested in the vesting program.","properties":{"atEpoch":{"description":"Epoch at which the vesting statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties stats.","items":{"$ref":"#/components/schemas/v1PartyVestingStats"},"type":"array"}},"type":"object"},"v1VolumeDiscountProgramEnded":{"properties":{"atEpoch":{"description":"Epoch at which the referral program ended.","format":"uint64","type":"string"},"endedAt":{"description":"Time in Unix nanoseconds when the referral program ended.","format":"int64","type":"string"},"id":{"description":"Unique ID of the volume discount program.","type":"string"},"version":{"description":"Program update version.","format":"uint64","type":"string"}},"type":"object"},"v1VolumeDiscountProgramStarted":{"properties":{"atEpoch":{"description":"Epoch at which the volume discount program started.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaVolumeDiscountProgram","description":"Volume discount program that has started."},"startedAt":{"description":"Time in Unix nanoseconds when the volume discount program started.","format":"int64","type":"string"}},"type":"object"},"v1VolumeDiscountProgramUpdated":{"properties":{"atEpoch":{"description":"Epoch at which the volume discount program was updated.","format":"uint64","type":"string"},"program":{"$ref":"#/components/schemas/vegaVolumeDiscountProgram","description":"The updated volume discount program."},"updatedAt":{"description":"Time in Unix nanoseconds when the volume discount program was updated.","format":"int64","type":"string"}},"type":"object"},"v1VolumeDiscountStatsUpdated":{"description":"Stats of all parties eligible for volume discount.","properties":{"atEpoch":{"description":"Epoch at which the volume discount statistics are updated.","format":"uint64","type":"string"},"stats":{"description":"All parties' stats.","items":{"$ref":"#/components/schemas/v1PartyVolumeDiscountStats"},"type":"array"}},"type":"object"},"v1VoteSubmission":{"description":"Command that allows a token holder to vote for or against an active governance proposal.","properties":{"proposalId":{"description":"Submit vote for the specified proposal ID.","type":"string"},"value":{"$ref":"#/components/schemas/vegaVoteValue","description":"Actual value of the vote."}},"type":"object"},"v1WithdrawSubmission":{"description":"Command to instruct the network to process an asset withdrawal from the Vega network.\nThe process is specific to the destination foreign chain, for example, a withdrawal to Ethereum will generate signatures\nthat allow funds to be taken across the bridge.","properties":{"amount":{"description":"Amount to be withdrawn, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to be withdrawn.","type":"string"},"ext":{"$ref":"#/components/schemas/vegaWithdrawExt","description":"Details specific to the foreign chain, such as the receiver address."}},"type":"object"},"v2AccountBalance":{"properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Asset balance represented as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.\nBalances cannot be negative.","type":"string"},"marketId":{"description":"Market ID for the account, this field will be empty if the asset is in a general account.","type":"string"},"owner":{"description":"Party that owns the account.\nSpecial values include `network` - represents the Vega network and is\nmost commonly seen during liquidation of a distressed trading position.","type":"string"},"type":{"$ref":"#/components/schemas/vegaAccountType","description":"Account type of this account."}},"title":"Represents the current balance of an account for an asset on Vega, for a particular owner or party","type":"object"},"v2AccountEdge":{"description":"Account data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages with reference to this account.","type":"string"},"node":{"$ref":"#/components/schemas/v2AccountBalance","description":"Account balance data."}},"type":"object"},"v2AccountFilter":{"description":"Account filter is used to filter account data.\n\nAn account is defined as a set of asset ID, type, party ID, and market ID.\n- Every account has an associated asset and type.\n- Certain account types such as the global reward pool for example, do not have an associated party.\n These are denoted by the special party ID 'network'.\n- Certain account types do not have an associated market such as the general party accounts, for example.\n These are denoted by the special market ID '' (an empty string).","properties":{"accountTypes":{"description":"Restrict accounts to those connected to any of the types in this list. Pass an empty list for no filter.","items":{"$ref":"#/components/schemas/vegaAccountType"},"type":"array"},"assetId":{"description":"Restrict accounts to those holding balances in this asset ID.","type":"string"},"marketIds":{"description":"Restrict accounts to those connected to the markets in this list. Pass an empty list for no filter.","items":{"type":"string"},"type":"array"},"partyIds":{"description":"Restrict accounts to those owned by the parties in this list. Pass an empty list for no filter.","items":{"type":"string"},"type":"array"}},"type":"object"},"v2AccountSnapshotPage":{"properties":{"accounts":{"description":"List of account balances.","items":{"$ref":"#/components/schemas/v2AccountBalance"},"type":"array"},"lastPage":{"description":"Indicator if the current page is the last one or not.","type":"boolean"}},"title":"'Initial image' snapshot containing current account balances - may be sent over several response messages","type":"object"},"v2AccountUpdates":{"properties":{"accounts":{"description":"List of account balances.","items":{"$ref":"#/components/schemas/v2AccountBalance"},"type":"array"}},"title":"List of account updates in the last block","type":"object"},"v2AccountsConnection":{"description":"Page of accounts data and corresponding page information.","properties":{"edges":{"description":"Page of accounts data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2AccountEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2AggregatedBalance":{"properties":{"accountType":{"$ref":"#/components/schemas/vegaAccountType","description":"If grouping by account type, the account type."},"assetId":{"description":"If grouping by asset, the asset ID.","type":"string"},"balance":{"description":"Balance of the set of requested accounts at the time above.","type":"string"},"marketId":{"title":"If grouping by market, the market ID","type":"string"},"partyId":{"description":"If grouping by party, the party ID.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of the block in which the balance exists.","format":"int64","type":"string"}},"title":"AggregatedBalance data contains the balance of the set of requested accounts combined with corresponding\nparty ID, market ID and account type details","type":"object"},"v2AggregatedBalanceConnection":{"properties":{"edges":{"description":"Page of aggregated balance data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2AggregatedBalanceEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of aggregated balance objects and corresponding page information","type":"object"},"v2AggregatedBalanceEdge":{"description":"Aggregated balance data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2AggregatedBalance","description":"Balance of the set of requested accounts."}},"type":"object"},"v2AggregatedLedgerEntriesConnection":{"description":"Page of aggregated ledger entries data and corresponding page information.","properties":{"edges":{"description":"Page of 'AggregatedLedgerEntry' data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2AggregatedLedgerEntriesEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2AggregatedLedgerEntriesEdge":{"properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2AggregatedLedgerEntry","description":"'AggregatedLedgerEntry' data."}},"title":"Represents the aggregated ledger entry data with corresponding cursor for it","type":"object"},"v2AggregatedLedgerEntry":{"properties":{"assetId":{"description":"Asset ID for the asset associated with the entry.","type":"string"},"fromAccountBalance":{"description":"Sender account balance after the transfer.","type":"string"},"fromAccountMarketId":{"description":"Sender market ID.","type":"string"},"fromAccountPartyId":{"description":"Sender's party ID.","type":"string"},"fromAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Type of account sent from."},"quantity":{"description":"Amount of ledger entries for the set of requested accounts at the time above.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds of the block in which the result is referring to.","format":"int64","type":"string"},"toAccountBalance":{"description":"Receiver account balance after the transfer.","type":"string"},"toAccountMarketId":{"description":"Receiver market ID.","type":"string"},"toAccountPartyId":{"description":"Receiver's party ID.","type":"string"},"toAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Type of account received to."},"transferType":{"$ref":"#/components/schemas/vegaTransferType","description":"Transfer type."}},"title":"Represents an aggregated view of ledger entry data, sender and receiver accounts,\ndetails and balances for both sides after the transfer has been made","type":"object"},"v2AssetEdge":{"description":"Assets data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaAsset","description":"Asset data returned."}},"type":"object"},"v2AssetsConnection":{"properties":{"edges":{"description":"Page of assets data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2AssetEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of asset data and corresponding page information","type":"object"},"v2CandleDataConnection":{"properties":{"edges":{"description":"Page of candle data items and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2CandleEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of candles data and corresponding page information","type":"object"},"v2CandleEdge":{"description":"Candle data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/apiv2Candle","description":"Candlestick data, i.e. high, low, open, and closing prices for an interval of trading."}},"type":"object"},"v2Checkpoint":{"properties":{"atBlock":{"description":"Block number at which the checkpoint is made.","format":"uint64","type":"string"},"blockHash":{"description":"Block hash at which the checkpoint is made.","type":"string"},"hash":{"description":"Hash of the checkpoint.","type":"string"}},"title":"Actual data regarding a checkpoint","type":"object"},"v2CheckpointEdge":{"description":"Checkpoint data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2Checkpoint","description":"Data relating to a single checkpoint generated by the Vega network."}},"type":"object"},"v2CheckpointsConnection":{"properties":{"edges":{"description":"Page of checkpoints data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2CheckpointEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of checkpoints data and corresponding page information","type":"object"},"v2CollateralIncreaseEstimate":{"properties":{"bestCase":{"title":"Estimate assuming no slippage","type":"string"},"worstCase":{"title":"Estimate assuming slippage cap is applied","type":"string"}},"title":"Estimates the additional funds needed to support the specified position","type":"object"},"v2CoreSnapshotConnection":{"description":"Page of core snapshot data and corresponding page information.","properties":{"edges":{"description":"Page of core snapshot data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2CoreSnapshotEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2CoreSnapshotEdge":{"description":"Core snapshot data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1CoreSnapshotData","description":"Core snapshot data."}},"type":"object"},"v2DateRange":{"description":"Date range for queries that can return historical data\nTimestamps should be provided as unix time in Unix nanoseconds and are inclusive.","properties":{"endTimestamp":{"description":"Timestamp in Unix nanoseconds indicating the end of the date range.","format":"int64","type":"string"},"startTimestamp":{"description":"Timestamp in Unix nanoseconds indicating the start of the date range.","format":"int64","type":"string"}},"type":"object"},"v2DelegationEdge":{"description":"Delegation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaDelegation","description":"How much a party is delegating to a node and when."}},"type":"object"},"v2DelegationsConnection":{"properties":{"edges":{"description":"Page of delegations data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2DelegationEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of delegations data and corresponding page information","type":"object"},"v2DepositEdge":{"description":"Deposits data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaDeposit","description":"Data associated with a single deposit made on the Vega network."}},"type":"object"},"v2DepositsConnection":{"properties":{"edges":{"description":"Page of deposits data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2DepositEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of deposits data received and corresponding page information","type":"object"},"v2ERC20MultiSigSignerAddedBundle":{"properties":{"epochSeq":{"description":"Epoch in which the validator was added.","type":"string"},"newSigner":{"description":"Ethereum address of the signer to be removed.","type":"string"},"nonce":{"description":"Nonce used in the signing operation.","type":"string"},"signatures":{"description":"Bundle of signatures from current validators to sign in the new signer.","type":"string"},"submitter":{"description":"Ethereum address of the submitter.","type":"string"},"timestamp":{"description":"Unixnano timestamp for when the validator was added.","format":"int64","type":"string"}},"title":"Signature bundle data to be added","type":"object"},"v2ERC20MultiSigSignerAddedBundleEdge":{"description":"Signature bundle data that is to be added with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerAddedBundle","description":"Signature bundle data to be added."}},"type":"object"},"v2ERC20MultiSigSignerAddedConnection":{"properties":{"edges":{"description":"Page of signature bundle data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerAddedBundleEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of signature data items to be added and corresponding page information","type":"object"},"v2ERC20MultiSigSignerRemovedBundle":{"properties":{"epochSeq":{"description":"Epoch in which the validator was removed.","type":"string"},"nonce":{"description":"Nonce used in the signing operation.","type":"string"},"oldSigner":{"description":"Ethereum address of the signer to be removed.","type":"string"},"signatures":{"description":"Bundle of signatures from current validators to sign in the new signer.","type":"string"},"submitter":{"description":"Ethereum address of the submitter.","type":"string"},"timestamp":{"description":"Unixnano timestamp for when the validator was added.","format":"int64","type":"string"}},"title":"Signature bundle data to be removed","type":"object"},"v2ERC20MultiSigSignerRemovedBundleEdge":{"description":"Signature bundle data to be removed, with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerRemovedBundle","description":"Signature bundle data to be added."}},"type":"object"},"v2ERC20MultiSigSignerRemovedConnection":{"description":"Page of signature data items to be removed and corresponding page information.","properties":{"edges":{"description":"Page of signature bundle data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerRemovedBundleEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2EpochRewardSummaryConnection":{"properties":{"edges":{"description":"Page of rewards summary data for epochs and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2EpochRewardSummaryEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of rewards summary data for epoch and corresponding page information","type":"object"},"v2EpochRewardSummaryEdge":{"description":"Rewards summary data for epoch with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaEpochRewardSummary","description":"Rewards summary data for epoch."}},"type":"object"},"v2EstimateFeeResponse":{"properties":{"fee":{"$ref":"#/components/schemas/vegaFee","description":"Summary of the estimated fees for this order if it were to trade now."}},"title":"Response that is received from EstimateFeeRequest, contains the estimated fees for a given order","type":"object"},"v2EstimateMarginResponse":{"properties":{"marginLevels":{"$ref":"#/components/schemas/vegaMarginLevels","description":"Summary of the estimated margins for this order if it were to trade now."}},"title":"Response to an estimate margin request, containing the estimated margin levels for a given order","type":"object"},"v2EstimatePositionResponse":{"description":"Response for the estimated margin level, margin account balance change, and liquidation price for the specified position.","properties":{"collateralIncreaseEstimate":{"$ref":"#/components/schemas/v2CollateralIncreaseEstimate","description":"Estimated margin account balance increase."},"liquidation":{"$ref":"#/components/schemas/v2LiquidationEstimate","description":"Liquidation price range estimate for the specified position. Only populated if available collateral was specified in the request."},"margin":{"$ref":"#/components/schemas/v2MarginEstimate","description":"Margin level range estimate for the specified position."}},"type":"object"},"v2EstimateTransferFeeResponse":{"properties":{"discount":{"description":"Discount applied to the fee.","type":"string"},"fee":{"description":"Estimated fee for the transfer.","type":"string"}},"title":"Results of estimation of transfer fee and the fee discount","type":"object"},"v2EthereumKeyRotationEdge":{"description":"Ethereum key rotation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1EthereumKeyRotation","description":"Data relating to an Ethereum key rotation performed by a node on the Vega network."}},"type":"object"},"v2EthereumKeyRotationsConnection":{"properties":{"edges":{"description":"Page of Ethereum key rotations data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2EthereumKeyRotationEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of Ethereum key rotations data and corresponding page information","type":"object"},"v2FeesStatsForParty":{"properties":{"assetId":{"description":"Settlement asset of the market.","type":"string"},"refereesDiscountApplied":{"description":"Total referral discounts applied to referee fees.","type":"string"},"totalMakerFeesReceived":{"description":"Total maker fees received by the maker side.","type":"string"},"totalRewardsReceived":{"description":"Total referral rewards received by referrer of the referral set.","type":"string"},"volumeDiscountApplied":{"description":"Total volume discounts applied to referee fees.","type":"string"}},"type":"object"},"v2FundingPaymentConnection":{"description":"Page of funding payment data and corresponding page information.","properties":{"edges":{"description":"Page of funding payment data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2FundingPaymentEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2FundingPaymentEdge":{"description":"Funding payment data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/apiv2FundingPayment","description":"Funding payment data."}},"type":"object"},"v2FundingPeriodConnection":{"description":"Page of funding period data and corresponding page information.","properties":{"edges":{"description":"Page of funding period data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2FundingPeriodEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2FundingPeriodDataPointConnection":{"description":"Page of funding period data points and corresponding page information.","properties":{"edges":{"description":"Page of funding period data points and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2FundingPeriodDataPointEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2FundingPeriodDataPointEdge":{"description":"Funding period data point with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1FundingPeriodDataPoint","description":"Funding period data point."}},"type":"object"},"v2FundingPeriodEdge":{"description":"Funding period data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1FundingPeriod","description":"Funding period data."}},"type":"object"},"v2Game":{"description":"Data relating to a game.","properties":{"epoch":{"description":"Epoch at which the last game metrics were captured.","format":"uint64","type":"string"},"id":{"title":"Unique ID of the game","type":"string"},"individual":{"$ref":"#/components/schemas/v2IndividualGameEntities","title":"Individual entities that are participating in the game"},"participants":{"description":"The number of participants in the game.","format":"uint64","type":"string"},"team":{"$ref":"#/components/schemas/v2TeamGameEntities","title":"Team entities that are participating in the game"}},"type":"object"},"v2GameEdge":{"description":"Game information and corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2Game","description":"Game data."}},"type":"object"},"v2GamesConnection":{"description":"Page of games data and corresponding page information.","properties":{"edges":{"description":"Page of games data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2GameEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2GetActiveNetworkHistoryPeerAddressesResponse":{"properties":{"ipAddresses":{"description":"List of IP addresses for the active peers.","items":{"type":"string"},"type":"array"}},"title":"Response containing the addresses of active network history peers","type":"object"},"v2GetAssetResponse":{"properties":{"asset":{"$ref":"#/components/schemas/vegaAsset","description":"Asset information that is returned."}},"title":"Response from getting an asset","type":"object"},"v2GetCurrentReferralProgramResponse":{"properties":{"currentReferralProgram":{"$ref":"#/components/schemas/apiv2ReferralProgram","description":"Referral program currently activated on the network."}},"title":"Response containing the current referral program","type":"object"},"v2GetCurrentVolumeDiscountProgramResponse":{"properties":{"currentVolumeDiscountProgram":{"$ref":"#/components/schemas/apiv2VolumeDiscountProgram","description":"Volume discount program currently activated on the network."}},"title":"Response containing the current referral program","type":"object"},"v2GetDepositResponse":{"properties":{"deposit":{"$ref":"#/components/schemas/vegaDeposit","description":"Deposit matching the ID from the request."}},"title":"Response that is received from getting deposit data","type":"object"},"v2GetERC20ListAssetBundleResponse":{"properties":{"assetSource":{"description":"Address of the asset on Ethereum.","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","type":"string"},"vegaAssetId":{"description":"Asset ID for the underlying Vega asset.","type":"string"}},"title":"Response from listing the signature bundle to an ERC-20 token in the collateral bridge","type":"object"},"v2GetERC20SetAssetLimitsBundleResponse":{"properties":{"assetSource":{"description":"Address of the asset on Ethereum.","type":"string"},"lifetimeLimit":{"description":"Lifetime limit deposit for this asset.","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: `0x + sig1 + sig2 + ... + sixN`.","type":"string"},"threshold":{"description":"Threshold withdraw for this asset.","type":"string"},"vegaAssetId":{"description":"Asset ID for the underlying Vega asset.","type":"string"}},"title":"Response for the signature bundle to update the token limits i.e. maxLifetimeDeposit and withdrawThreshold for a given ERC20 token that is already allowlisted in the collateral bridge","type":"object"},"v2GetERC20WithdrawalApprovalResponse":{"properties":{"amount":{"description":"Amount to be withdrawn.","type":"string"},"assetSource":{"description":"Address of asset on Ethereum.","type":"string"},"creation":{"description":"Creation timestamps.","format":"int64","type":"string"},"nonce":{"description":"Nonce that uniquely identifies this signature bundle and prevents resubmission.","type":"string"},"signatures":{"description":"Signatures bundle as hex encoded data, prefixed with `0x`\ne.g: 0x + sig1 + sig2 + ... + sixN.","type":"string"},"targetAddress":{"description":"Ethereum address, prefixed with `0x`, that will receive the withdrawn assets.","type":"string"}},"title":"Response with all information required to bundle the call to finalise the withdrawal on the erc20 bridge\nfunction withdraw_asset(address asset_source, uint256 asset_id, uint256 amount, uint256 expiry, uint256 nonce, bytes memory signatures)","type":"object"},"v2GetEpochResponse":{"properties":{"epoch":{"$ref":"#/components/schemas/vegaEpoch","description":"Data specific to a single epoch on the Vega network. This includes the epoch number,\nstart and end times, and the nodes that participated in the epoch."}},"title":"Response from getting epoch","type":"object"},"v2GetFeesStatsForPartyResponse":{"description":"Response that is sent when requesting fees statistics for a given party.","properties":{"feesStatsForParty":{"description":"Fees statistics for the given request.","items":{"$ref":"#/components/schemas/v2FeesStatsForParty"},"type":"array"}},"type":"object"},"v2GetFeesStatsResponse":{"description":"Response that is sent when requesting fees statistics.","properties":{"feesStats":{"$ref":"#/components/schemas/v1FeesStats","description":"Fees statistics for the given request."}},"type":"object"},"v2GetGovernanceDataResponse":{"properties":{"data":{"$ref":"#/components/schemas/vegaGovernanceData","description":"Governance data content, i.e. proposal and votes for and against."}},"title":"Response from getting governance data","type":"object"},"v2GetLastTradeResponse":{"properties":{"trade":{"$ref":"#/components/schemas/vegaTrade","description":"Information about the trade, if one is found."}},"title":"Response for the latest trade that occurred on Vega for a given market","type":"object"},"v2GetLatestMarketDataResponse":{"properties":{"marketData":{"$ref":"#/components/schemas/vegaMarketData","description":"Market data that was requested."}},"title":"Response that is received when listing the latest market data for a given market","type":"object"},"v2GetLatestMarketDepthResponse":{"properties":{"buy":{"description":"Zero or more price levels for the buy side of the market depth data.","items":{"$ref":"#/components/schemas/vegaPriceLevel"},"type":"array"},"lastTrade":{"$ref":"#/components/schemas/vegaTrade","description":"Last trade recorded on Vega."},"marketId":{"description":"Market ID of the depth levels returned.","type":"string"},"sell":{"description":"Zero or more price levels for the sell side of the market depth data.","items":{"$ref":"#/components/schemas/vegaPriceLevel"},"type":"array"},"sequenceNumber":{"description":"Sequence number incremented after each update.","format":"uint64","type":"string"}},"title":"Response that is received when latest market depth data is queried","type":"object"},"v2GetMarketDataHistoryByIDResponse":{"properties":{"marketData":{"$ref":"#/components/schemas/v2MarketDataConnection","description":"Page of market data history with the corresponding page information."}},"title":"Response that is received when querying Market Data History","type":"object"},"v2GetMarketResponse":{"properties":{"market":{"$ref":"#/components/schemas/vegaMarket","description":"Information about the market requested."}},"title":"Response from getting a market by ID","type":"object"},"v2GetMostRecentNetworkHistorySegmentResponse":{"properties":{"segment":{"$ref":"#/components/schemas/v2HistorySegment","description":"Data relating to a history segment created by a Vega data node."},"swarmKeySeed":{"description":"Key seed for the swarm section.","type":"string"}},"title":"Response from getting most recent history segment","type":"object"},"v2GetNetworkDataResponse":{"properties":{"nodeData":{"$ref":"#/components/schemas/vegaNodeData","description":"Summary of information with respect to nodes on the Vega network."}},"title":"Response from getting network data","type":"object"},"v2GetNetworkHistoryBootstrapPeersResponse":{"properties":{"bootstrapPeers":{"description":"List of peers that can be used to bootstrap a Vega data node.","items":{"type":"string"},"type":"array"}},"title":"Response containing the nodes network history bootstrap peers","type":"object"},"v2GetNetworkHistoryStatusResponse":{"properties":{"connectedPeers":{"description":"List of peers connected to the IPFS swarm.","items":{"type":"string"},"type":"array"},"ipfsAddress":{"description":"IPFS address of the data node currently connected to.","type":"string"},"swarmKey":{"description":"Swarm key used by the IPFS swarm.","type":"string"},"swarmKeySeed":{"description":"Swarm key seed used by the IPFS swarm.","type":"string"}},"title":"Response containing the status of network history","type":"object"},"v2GetNetworkLimitsResponse":{"properties":{"limits":{"$ref":"#/components/schemas/vegaNetworkLimits","description":"List of received network limits."}},"title":"Response received when querying the current network limits","type":"object"},"v2GetNetworkParameterResponse":{"properties":{"networkParameter":{"$ref":"#/components/schemas/vegaNetworkParameter","description":"Network parameter key and value."}},"title":"Response that is received when getting a network parameter","type":"object"},"v2GetNodeResponse":{"properties":{"node":{"$ref":"#/components/schemas/vegaNode","description":"Data specific to a single node on the Vega network."}},"title":"Response from getting node","type":"object"},"v2GetOracleSpecResponse":{"properties":{"oracleSpec":{"$ref":"#/components/schemas/vegaOracleSpec","description":"External data spec matching the ID."}},"title":"Response for a oracle spec","type":"object"},"v2GetOrderResponse":{"properties":{"order":{"$ref":"#/components/schemas/vegaOrder","description":"Order details, if one was found."}},"title":"Response received from the query for getting a single order","type":"object"},"v2GetPartyActivityStreakResponse":{"properties":{"activityStreak":{"$ref":"#/components/schemas/v1PartyActivityStreak","description":"Party's activity streak in a given epoch."}},"title":"Response when getting a party's activity streaks across epochs","type":"object"},"v2GetPartyResponse":{"properties":{"party":{"$ref":"#/components/schemas/vegaParty","description":"Data for the party requested."}},"title":"Response from getting party by ID","type":"object"},"v2GetPartyVestingStatsResponse":{"properties":{"epochSeq":{"description":"Epoch for which this information is valid.","format":"uint64","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"quantumBalance":{"description":"The balance of the party, in quantum.","type":"string"},"rewardBonusMultiplier":{"description":"Reward bonus multiplier.","type":"string"}},"title":"Vesting reward statistics for a given party","type":"object"},"v2GetProtocolUpgradeStatusResponse":{"properties":{"ready":{"description":"Indicator if the upgrade is ready or not.","type":"boolean"}},"title":"Response from getting protocol upgrade status","type":"object"},"v2GetReferralSetStatsResponse":{"description":"Response containing the volume discount statistics for the given epoch.","properties":{"stats":{"$ref":"#/components/schemas/v2ReferralSetStatsConnection","description":"Referral set statistics for the epoch."}},"type":"object"},"v2GetRiskFactorsResponse":{"properties":{"riskFactor":{"$ref":"#/components/schemas/vegaRiskFactor","description":"Risk factor emitted by the risk model for a given market."}},"title":"Response that is received from getting a risk factor","type":"object"},"v2GetStakeResponse":{"properties":{"currentStakeAvailable":{"description":"Current stake available information.","type":"string"},"stakeLinkings":{"$ref":"#/components/schemas/v2StakesConnection","description":"Paged list of stake data with corresponding page information."}},"title":"Response that is received from requesting stake information","type":"object"},"v2GetStopOrderResponse":{"description":"Response received from the query for getting a single stop order.","properties":{"order":{"$ref":"#/components/schemas/v1StopOrderEvent","description":"Order details, if one was found."}},"type":"object"},"v2GetTotalTransferFeeDiscountResponse":{"properties":{"totalDiscount":{"description":"Total per party per asset discount available.","type":"string"}},"title":"Returns total transfer fee discount available","type":"object"},"v2GetTransferResponse":{"properties":{"transferNode":{"$ref":"#/components/schemas/v2TransferNode","description":"Transfer and its fees requested by ID."}},"title":"Response that is received when querying transfers by ID","type":"object"},"v2GetVegaTimeResponse":{"properties":{"timestamp":{"description":"Timestamp representation of current VegaTime as represented in Unix nanoseconds, for example\n`1580473859111222333` corresponds to `2020-01-31T12:30:59.111222333Z`.","format":"int64","type":"string"}},"title":"Response for the current consensus coordinated time on the Vega network, referred to as \"VegaTime\"","type":"object"},"v2GetVestingBalancesSummaryResponse":{"description":"List of vesting and locked balances for a party.","properties":{"epochSeq":{"description":"Epoch for which these balances are valid.","format":"uint64","type":"string"},"lockedBalances":{"description":"List of locked balances for the party.","items":{"$ref":"#/components/schemas/v1PartyLockedBalance"},"type":"array"},"partyId":{"description":"Party ID.","type":"string"},"vestingBalances":{"description":"List of vesting balances for the party.","items":{"$ref":"#/components/schemas/v1PartyVestingBalance"},"type":"array"}},"type":"object"},"v2GetVolumeDiscountStatsResponse":{"description":"Response containing the volume discount statistics for the given epoch.","properties":{"stats":{"$ref":"#/components/schemas/v2VolumeDiscountStatsConnection","description":"Volume discount statistics for an epoch."}},"type":"object"},"v2GetWithdrawalResponse":{"properties":{"withdrawal":{"$ref":"#/components/schemas/vegaWithdrawal","description":"Withdrawal matching the ID from the request."}},"title":"Response for a withdrawal request","type":"object"},"v2GovernanceDataConnection":{"properties":{"edges":{"description":"Page of governance data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2GovernanceDataEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of governance data and corresponding page information","type":"object"},"v2GovernanceDataEdge":{"description":"Governance data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaGovernanceData","description":"Governance data content, i.e. proposal and votes for and against."}},"type":"object"},"v2HistorySegment":{"properties":{"chainId":{"description":"Chain ID of the history segment.","type":"string"},"databaseVersion":{"description":"Database schema version of the history segment.","format":"int64","type":"string"},"fromHeight":{"description":"Starting height of the history segment.","format":"int64","type":"string"},"historySegmentId":{"description":"History segment ID.","type":"string"},"previousHistorySegmentId":{"description":"Previous history segment ID.","type":"string"},"toHeight":{"description":"Ending height of the history segment.","format":"int64","type":"string"}},"title":"Describes a network history segment","type":"object"},"v2IndividualGameEntities":{"properties":{"individual":{"description":"List of individual party IDs, and the metrics associated with each participant.","items":{"$ref":"#/components/schemas/v2IndividualGameEntity"},"type":"array"}},"title":"List of individuals that are participating in a game","type":"object"},"v2IndividualGameEntity":{"description":"Data relating to an individual participating in a game.\nThis can be used for both team members who are participating in a team game,\nor individuals participating in an individual entity game.","properties":{"individual":{"title":"Party ID of the individual participating","type":"string"},"rank":{"description":"Rank of the individual either in the game or within their team.","format":"uint64","type":"string"},"rewardEarned":{"title":"Reward earned by the individual during the epoch","type":"string"},"rewardMetric":{"$ref":"#/components/schemas/vegaDispatchMetric","title":"Reward metric applied to the individual"},"totalRewardsEarned":{"title":"Total rewards earned by the individual for the game","type":"string"},"volume":{"title":"Volume traded by the individual","type":"string"}},"type":"object"},"v2InfoResponse":{"properties":{"commitHash":{"description":"Commit hash from which the data node was built.","type":"string"},"version":{"description":"Semver formatted version of the data node.","type":"string"}},"title":"Response that is received from the node information query","type":"object"},"v2IntervalToCandleId":{"properties":{"candleId":{"description":"Unique id of the candle.","type":"string"},"interval":{"description":"Interval for the candle.","type":"string"}},"title":"Maps an interval for a given market to its corresponding candle ID","type":"object"},"v2KeyRotationConnection":{"properties":{"edges":{"description":"Page of key rotation data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2KeyRotationEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of key rotations data and corresponding page information","type":"object"},"v2KeyRotationEdge":{"description":"Key rotation data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1KeyRotation","description":"Data relating to a key rotation that was performed by a node on the Vega network."}},"type":"object"},"v2LedgerEntryFilter":{"description":"Ledger entry filter sets filters on returned set of ledger entries.","properties":{"closeOnAccountFilters":{"description":"Determines whether an entry must have accounts matching both the account_from_filter\nand the account_to_filter. If set to 'true', entries must have matches in both filters.\nIf set to `false`, entries matching only the account_from_filter or the account_to_filter will also be included.","type":"boolean"},"fromAccountFilter":{"$ref":"#/components/schemas/v2AccountFilter","description":"Used to set values for filtering sender accounts. Party must be provided in this filter or 'to' account filter, or both."},"toAccountFilter":{"$ref":"#/components/schemas/v2AccountFilter","description":"Used to set values for filtering receiver accounts. Party must be provided in this filter or 'from' account filter, or both."},"transferId":{"title":"List ledger entries that are associated with a specific transfer ID. If provided, all other filters are ignored","type":"string"},"transferTypes":{"description":"List of transfer types that is used for filtering sender and receiver accounts.","items":{"$ref":"#/components/schemas/vegaTransferType"},"type":"array"}},"type":"object"},"v2LiquidationEstimate":{"description":"Liquidation estimate for both worst and best case possible.","properties":{"bestCase":{"$ref":"#/components/schemas/v2LiquidationPrice","description":"Liquidation price estimate assuming no slippage."},"worstCase":{"$ref":"#/components/schemas/v2LiquidationPrice","description":"Liquidation price estimate assuming slippage cap is applied."}},"type":"object"},"v2LiquidationPrice":{"description":"Liquidation price estimate for either only the current open volume and position given some or all buy orders get filled, or position given some or all sell orders get filled.","properties":{"includingBuyOrders":{"description":"Liquidation price assuming buy orders start getting filled.","type":"string"},"includingSellOrders":{"description":"Liquidation price assuming sell orders start getting filled.","type":"string"},"openVolumeOnly":{"description":"Liquidation price for current open volume ignoring any active orders.","type":"string"}},"type":"object"},"v2LiquidityProvider":{"description":"Liquidity provider information.","properties":{"feeShare":{"$ref":"#/components/schemas/vegaLiquidityProviderFeeShare","description":"Information used for calculating an LP's fee share, such as the equity like share,\naverage entry valuation and liquidity score for the liquidity provider for the specified market."},"marketId":{"description":"ID of the market the liquidity provider is active in.","type":"string"},"partyId":{"description":"Party ID of the liquidity provider.","type":"string"},"sla":{"$ref":"#/components/schemas/vegaLiquidityProviderSLA","description":"Information about LP's SLA performance."}},"type":"object"},"v2LiquidityProviderConnection":{"description":"Page of liquidity provider data and corresponding page information.","properties":{"edges":{"description":"Page of liquidity provider data.","items":{"$ref":"#/components/schemas/v2LiquidityProviderEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2LiquidityProviderEdge":{"description":"Liquidity provider data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further data.","type":"string"},"node":{"$ref":"#/components/schemas/v2LiquidityProvider","description":"Liquidity provider information returned by the API."}},"type":"object"},"v2LiquidityProvisionWithPendingEdge":{"description":"Liquidity provision data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/apiv2LiquidityProvision","description":"Data corresponding to a liquidity provider's commitment."}},"type":"object"},"v2LiquidityProvisionsConnection":{"properties":{"edges":{"description":"Page of liquidity provisions data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2LiquidityProvisionsEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of liquidity provisions data and corresponding page information","type":"object"},"v2LiquidityProvisionsEdge":{"description":"Liquidity provision data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaLiquidityProvision","description":"Data corresponding to a liquidity provider's commitment."}},"type":"object"},"v2LiquidityProvisionsWithPendingConnection":{"properties":{"edges":{"description":"Page of liquidity provisions data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2LiquidityProvisionWithPendingEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used to fetch further pages."}},"title":"Page of liquidity provisions data and corresponding page information","type":"object"},"v2ListAccountsResponse":{"description":"Response that is received from listing accounts query.","properties":{"accounts":{"$ref":"#/components/schemas/v2AccountsConnection","description":"Page of accounts data and corresponding page information."}},"type":"object"},"v2ListAllLiquidityProvisionsResponse":{"properties":{"liquidityProvisions":{"$ref":"#/components/schemas/v2LiquidityProvisionsWithPendingConnection","description":"Page of liquidity provisions data and corresponding page information."}},"title":"Response from listing liquidity provisions","type":"object"},"v2ListAllNetworkHistorySegmentsResponse":{"properties":{"segments":{"description":"Page of history segments data and corresponding page information.","items":{"$ref":"#/components/schemas/v2HistorySegment"},"type":"array"}},"title":"Response with a list of all the nodes history segments","type":"object"},"v2ListAllPositionsResponse":{"properties":{"positions":{"$ref":"#/components/schemas/v2PositionConnection","description":"Page of positions data and corresponding page information."}},"title":"Response to query for listing of positions, given the filter is supplied","type":"object"},"v2ListAssetsResponse":{"properties":{"assets":{"$ref":"#/components/schemas/v2AssetsConnection","description":"Page of assets data and corresponding page information."}},"title":"Response from listing assets","type":"object"},"v2ListBalanceChangesResponse":{"description":"Response that is received from querying balances changes.","properties":{"balances":{"$ref":"#/components/schemas/v2AggregatedBalanceConnection","description":"Page of aggregated balances data and corresponding page information."}},"type":"object"},"v2ListCandleDataResponse":{"properties":{"candles":{"$ref":"#/components/schemas/v2CandleDataConnection","description":"Page of candle data and corresponding page information."}},"title":"Response for list of candles for a market at an interval","type":"object"},"v2ListCandleIntervalsResponse":{"properties":{"intervalToCandleId":{"description":"List of the mappings.","items":{"$ref":"#/components/schemas/v2IntervalToCandleId"},"type":"array"}},"title":"List of mapped pairs `interval` -> `candle ID` for a given market","type":"object"},"v2ListCheckpointsResponse":{"properties":{"checkpoints":{"$ref":"#/components/schemas/v2CheckpointsConnection","description":"Page of checkpoints data and corresponding page information."}},"title":"Response message containing all checkpoints requested","type":"object"},"v2ListCoreSnapshotsResponse":{"description":"Response from a ListCoreSnapshots RPC call; a paginated list of the core snapshots.","properties":{"coreSnapshots":{"$ref":"#/components/schemas/v2CoreSnapshotConnection","description":"Page of core snapshot data and corresponding page information."}},"type":"object"},"v2ListDelegationsResponse":{"properties":{"delegations":{"$ref":"#/components/schemas/v2DelegationsConnection","description":"Page of delegations data and corresponding page information."}},"title":"Response from listing delegations","type":"object"},"v2ListDepositsResponse":{"properties":{"deposits":{"$ref":"#/components/schemas/v2DepositsConnection","description":"Page of deposits data and corresponding page information."}},"title":"Response from listing deposits","type":"object"},"v2ListERC20MultiSigSignerAddedBundlesResponse":{"properties":{"bundles":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerAddedConnection","description":"Page of bundles for that validator - it may have been added multiple times if removed in between - and corresponding page information."}},"title":"Response from adding a signature bundle to the signer list of a multisig contract for a particular validator","type":"object"},"v2ListERC20MultiSigSignerRemovedBundlesResponse":{"properties":{"bundles":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerRemovedConnection","description":"Page of signer bundle data items for that validator and corresponding page information."}},"title":"Response when removing a signature bundle from the signer list of the multisig contract for a particular validator","type":"object"},"v2ListEntitiesResponse":{"properties":{"accounts":{"items":{"$ref":"#/components/schemas/vegaAccount"},"type":"array"},"assets":{"items":{"$ref":"#/components/schemas/vegaAsset"},"type":"array"},"balanceChanges":{"items":{"$ref":"#/components/schemas/v2AccountBalance"},"type":"array"},"delegations":{"items":{"$ref":"#/components/schemas/vegaDelegation"},"type":"array"},"deposits":{"items":{"$ref":"#/components/schemas/vegaDeposit"},"type":"array"},"erc20MultiSigSignerAddedBundles":{"items":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerAddedBundle"},"type":"array"},"erc20MultiSigSignerRemovedBundles":{"items":{"$ref":"#/components/schemas/v2ERC20MultiSigSignerRemovedBundle"},"type":"array"},"ethereumKeyRotations":{"items":{"$ref":"#/components/schemas/v1EthereumKeyRotation"},"type":"array"},"keyRotations":{"items":{"$ref":"#/components/schemas/v1KeyRotation"},"type":"array"},"ledgerEntries":{"items":{"$ref":"#/components/schemas/vegaLedgerEntry"},"type":"array"},"liquidityProvisions":{"items":{"$ref":"#/components/schemas/vegaLiquidityProvision"},"type":"array"},"marginLevels":{"items":{"$ref":"#/components/schemas/vegaMarginLevels"},"type":"array"},"markets":{"items":{"$ref":"#/components/schemas/vegaMarket"},"type":"array"},"networkParameters":{"items":{"$ref":"#/components/schemas/vegaNetworkParameter"},"type":"array"},"nodeSignatures":{"items":{"$ref":"#/components/schemas/v1NodeSignature"},"type":"array"},"nodes":{"items":{"$ref":"#/components/schemas/v2NodeBasic"},"type":"array"},"oracleData":{"items":{"$ref":"#/components/schemas/vegaOracleData"},"type":"array"},"oracleSpecs":{"items":{"$ref":"#/components/schemas/vegaOracleSpec"},"type":"array"},"orders":{"items":{"$ref":"#/components/schemas/vegaOrder"},"type":"array"},"parties":{"items":{"$ref":"#/components/schemas/vegaParty"},"type":"array"},"positions":{"items":{"$ref":"#/components/schemas/vegaPosition"},"type":"array"},"proposals":{"items":{"$ref":"#/components/schemas/vegaProposal"},"type":"array"},"protocolUpgradeProposals":{"items":{"$ref":"#/components/schemas/v1ProtocolUpgradeEvent"},"type":"array"},"rewards":{"items":{"$ref":"#/components/schemas/vegaReward"},"type":"array"},"trades":{"items":{"$ref":"#/components/schemas/vegaTrade"},"type":"array"},"transfers":{"items":{"$ref":"#/components/schemas/vegaeventsv1Transfer"},"type":"array"},"votes":{"items":{"$ref":"#/components/schemas/vegaVote"},"type":"array"},"withdrawals":{"items":{"$ref":"#/components/schemas/vegaWithdrawal"},"type":"array"}},"title":"Response from listing entities that were created for a given transaction hash","type":"object"},"v2ListEpochRewardSummariesResponse":{"properties":{"summaries":{"$ref":"#/components/schemas/v2EpochRewardSummaryConnection","description":"Page of rewards details for a single party and corresponding page information."}},"title":"Return message with reward details in for a single party","type":"object"},"v2ListEthereumKeyRotationsResponse":{"properties":{"keyRotations":{"$ref":"#/components/schemas/v2EthereumKeyRotationsConnection","description":"Page of Ethereum key rotations data and corresponding page information."}},"title":"Response message containing Ethereum key rotations","type":"object"},"v2ListFundingPaymentsResponse":{"properties":{"fundingPayments":{"$ref":"#/components/schemas/v2FundingPaymentConnection","description":"Page of funding period data and corresponding page information."}},"title":"Response from listing funding payments","type":"object"},"v2ListFundingPeriodDataPointsResponse":{"description":"Response from listing funding period data points.","properties":{"fundingPeriodDataPoints":{"$ref":"#/components/schemas/v2FundingPeriodDataPointConnection","description":"Page of funding period data points and corresponding page information."}},"type":"object"},"v2ListFundingPeriodsResponse":{"properties":{"fundingPeriods":{"$ref":"#/components/schemas/v2FundingPeriodConnection","description":"Page of funding period data and corresponding page information."}},"title":"Response from listing funding periods","type":"object"},"v2ListGamesResponse":{"description":"Response containing games data.","properties":{"games":{"$ref":"#/components/schemas/v2GamesConnection","description":"Page of games data and corresponding page information."}},"type":"object"},"v2ListGovernanceDataRequestType":{"default":"TYPE_UNSPECIFIED","description":"- TYPE_ALL: List all proposals\n - TYPE_NEW_MARKET: List new market proposals\n - TYPE_UPDATE_MARKET: List update market proposals\n - TYPE_NETWORK_PARAMETERS: List change Vega network parameter proposals\n - TYPE_NEW_ASSET: New asset proposals\n - TYPE_NEW_FREE_FORM: Proposals for creating a new free form proposal\n - TYPE_UPDATE_ASSET: Update asset proposals\n - TYPE_NEW_SPOT_MARKET: Propose a new spot market\n - TYPE_UPDATE_SPOT_MARKET: Update an existing spot market\n - TYPE_NEW_TRANSFER: Propose a new transfer\n - TYPE_CANCEL_TRANSFER: Proposal to cancel a transfer\n - TYPE_UPDATE_MARKET_STATE: Proposal for updating the state of a market\n - TYPE_UPDATE_REFERRAL_PROGRAM: Proposal to update the referral program\n - TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM: Proposal to update the volume discount program","enum":["TYPE_UNSPECIFIED","TYPE_ALL","TYPE_NEW_MARKET","TYPE_UPDATE_MARKET","TYPE_NETWORK_PARAMETERS","TYPE_NEW_ASSET","TYPE_NEW_FREE_FORM","TYPE_UPDATE_ASSET","TYPE_NEW_SPOT_MARKET","TYPE_UPDATE_SPOT_MARKET","TYPE_NEW_TRANSFER","TYPE_CANCEL_TRANSFER","TYPE_UPDATE_MARKET_STATE","TYPE_UPDATE_REFERRAL_PROGRAM","TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM"],"title":"Filter for the types of governance proposals to view","type":"string"},"v2ListGovernanceDataResponse":{"properties":{"connection":{"$ref":"#/components/schemas/v2GovernanceDataConnection","description":"Page of governance data and corresponding page information."}},"title":"Response from listing governance data","type":"object"},"v2ListKeyRotationsResponse":{"properties":{"rotations":{"$ref":"#/components/schemas/v2KeyRotationConnection","description":"Page of key rotations data and corresponding page information."}},"title":"Response message containing Vega key rotations","type":"object"},"v2ListLatestMarketDataResponse":{"properties":{"marketsData":{"items":{"$ref":"#/components/schemas/vegaMarketData"},"type":"array"}},"title":"Response that is received when listing the latest market data for every market","type":"object"},"v2ListLedgerEntriesResponse":{"properties":{"ledgerEntries":{"$ref":"#/components/schemas/v2AggregatedLedgerEntriesConnection","description":"Page of aggregated ledger entries data and corresponding page information."}},"title":"Response that is received when listing ledger entries","type":"object"},"v2ListLiquidityProvidersResponse":{"description":"Response for listing liquidity providers.","properties":{"liquidityProviders":{"$ref":"#/components/schemas/v2LiquidityProviderConnection","description":"Page of liquidity providers and corresponding page information."}},"type":"object"},"v2ListLiquidityProvisionsResponse":{"properties":{"liquidityProvisions":{"$ref":"#/components/schemas/v2LiquidityProvisionsConnection","description":"Page of liquidity provisions data and corresponding page information."}},"title":"Response from listing liquidity provisions","type":"object"},"v2ListMarginLevelsResponse":{"properties":{"marginLevels":{"$ref":"#/components/schemas/v2MarginConnection","description":"Page of margin levels data and corresponding page information."}},"title":"Response from listing margin levels","type":"object"},"v2ListMarketsResponse":{"properties":{"markets":{"$ref":"#/components/schemas/v2MarketConnection","description":"Page of markets and corresponding page information."}},"title":"Response from listing markets","type":"object"},"v2ListNetworkParametersResponse":{"properties":{"networkParameters":{"$ref":"#/components/schemas/v2NetworkParameterConnection","description":"Page of network parameters and corresponding page information."}},"title":"Response containing all of the Vega network parameters","type":"object"},"v2ListNodeSignaturesResponse":{"properties":{"signatures":{"$ref":"#/components/schemas/v2NodeSignaturesConnection","description":"Page of nodes signatures and corresponding page information."}},"title":"Response to specify the ID of the resource to retrieve aggregated signatures for","type":"object"},"v2ListNodesResponse":{"properties":{"nodes":{"$ref":"#/components/schemas/v2NodesConnection","description":"Page of node data and corresponding page information."}},"title":"Response from listing nodes","type":"object"},"v2ListOracleDataResponse":{"properties":{"oracleData":{"$ref":"#/components/schemas/v2OracleDataConnection","description":"Page of seen oracle data and corresponding page information."}},"title":"Response to get all seen oracle data","type":"object"},"v2ListOracleSpecsResponse":{"properties":{"oracleSpecs":{"$ref":"#/components/schemas/v2OracleSpecsConnection","description":"Page of active oracle specs and corresponding page information."}},"title":"Response to get all active oracle specs","type":"object"},"v2ListOrderVersionsResponse":{"properties":{"orders":{"$ref":"#/components/schemas/v2OrderConnection","description":"Page of order versions and corresponding page information."}},"title":"Response that is received when listing possible order versions","type":"object"},"v2ListOrdersResponse":{"properties":{"orders":{"$ref":"#/components/schemas/v2OrderConnection","description":"Page of orders data and corresponding page information."}},"title":"Response that is received from the query to list orders","type":"object"},"v2ListPaidLiquidityFeesResponse":{"description":"Paid liquidity fees response.","properties":{"paidLiquidityFees":{"$ref":"#/components/schemas/v2PaidLiquidityFeesConnection","description":"Page of paid liquidity fees and corresponding page information."}},"type":"object"},"v2ListPartiesProfilesResponse":{"description":"Response from listing parties' profiles.","properties":{"profiles":{"$ref":"#/components/schemas/v2PartiesProfilesConnection","description":"Page of profile data and corresponding page information."}},"type":"object"},"v2ListPartiesResponse":{"properties":{"parties":{"$ref":"#/components/schemas/v2PartyConnection","description":"Page of parties data and corresponding page information."}},"title":"Response from listing parties","type":"object"},"v2ListPartyMarginModesResponse":{"description":"Response containing party margin modes.","properties":{"partyMarginModes":{"$ref":"#/components/schemas/v2PartyMarginModesConnection","description":"Page of party margin modes data and corresponding page information."}},"type":"object"},"v2ListPositionsResponse":{"properties":{"positions":{"$ref":"#/components/schemas/v2PositionConnection","description":"Page of positions data and corresponding page information."}},"title":"Response for a list of positions for a party","type":"object"},"v2ListProtocolUpgradeProposalsResponse":{"properties":{"protocolUpgradeProposals":{"$ref":"#/components/schemas/v2ProtocolUpgradeProposalConnection","description":"Page of protocol upgrade proposals and corresponding page information."}},"title":"Response type from a ListProtocolUpgradeProposals RPC call; a paginated list of protocol upgrade proposals","type":"object"},"v2ListReferralSetRefereesResponse":{"properties":{"referralSetReferees":{"$ref":"#/components/schemas/v2ReferralSetRefereeConnection","description":"Page of referral set referee data and corresponding page information."}},"title":"Response containing information about a referral set's referees","type":"object"},"v2ListReferralSetsResponse":{"properties":{"referralSets":{"$ref":"#/components/schemas/v2ReferralSetConnection","description":"Page of referral set data and corresponding page information."}},"title":"Response containing information about a referral set or sets","type":"object"},"v2ListRewardSummariesResponse":{"properties":{"summaries":{"description":"Page of rewards details data and corresponding page information.","items":{"$ref":"#/components/schemas/vegaRewardSummary"},"type":"array"}},"title":"Response from listing reward details in for a single party","type":"object"},"v2ListRewardsResponse":{"properties":{"rewards":{"$ref":"#/components/schemas/v2RewardsConnection","description":"Page of rewards data and corresponding page information."}},"title":"Response for listing reward details for a single party","type":"object"},"v2ListStopOrdersResponse":{"description":"Response that is received from the query to list stop orders.","properties":{"orders":{"$ref":"#/components/schemas/v2StopOrderConnection","description":"Page of stop orders data and corresponding page information."}},"type":"object"},"v2ListSuccessorMarketsResponse":{"description":"Response from a list successor markets request.","properties":{"successorMarkets":{"$ref":"#/components/schemas/v2SuccessorMarketConnection","description":"List of markets in the succession line."}},"type":"object"},"v2ListTeamMembersStatisticsResponse":{"description":"Response for the list team members' statistics request containing the statistics.","properties":{"statistics":{"$ref":"#/components/schemas/v2TeamMembersStatisticsConnection","description":"Page of team members' statistics data and corresponding page information."}},"type":"object"},"v2ListTeamRefereeHistoryResponse":{"description":"Response that is sent when listing the referee history for a given team.","properties":{"teamRefereeHistory":{"$ref":"#/components/schemas/v2TeamRefereeHistoryConnection","description":"Page of team referee history data and corresponding page information."}},"type":"object"},"v2ListTeamRefereesResponse":{"description":"Response that is sent when listing the referees for a given team.","properties":{"teamReferees":{"$ref":"#/components/schemas/v2TeamRefereeConnection","description":"Page of team referee data and corresponding page information."}},"type":"object"},"v2ListTeamsResponse":{"description":"Response for the list teams request containing the team information.","properties":{"teams":{"$ref":"#/components/schemas/v2TeamConnection","description":"Page of team data and corresponding page information."}},"type":"object"},"v2ListTeamsStatisticsResponse":{"description":"Response for the list teams' statistics request containing the statistics.","properties":{"statistics":{"$ref":"#/components/schemas/v2TeamsStatisticsConnection","description":"Page of teams' statistics data and corresponding page information."}},"type":"object"},"v2ListTradesResponse":{"properties":{"trades":{"$ref":"#/components/schemas/v2TradeConnection","description":"Page of trades data and corresponding page information."}},"title":"Response from listing trades","type":"object"},"v2ListTransfersResponse":{"properties":{"transfers":{"$ref":"#/components/schemas/v2TransferConnection","description":"Page of transfers data and corresponding page information."}},"title":"Response that is received when listing transfers","type":"object"},"v2ListVotesResponse":{"properties":{"votes":{"$ref":"#/components/schemas/v2VoteConnection","description":"Page of votes data received and corresponding page information."}},"title":"Response that is received when listing Votes","type":"object"},"v2ListWithdrawalsResponse":{"properties":{"withdrawals":{"$ref":"#/components/schemas/v2WithdrawalsConnection","description":"Page of withdrawals data and corresponding page information."}},"title":"Response from listing withdrawals data","type":"object"},"v2MarginConnection":{"description":"Page of margins data and corresponding page information.","properties":{"edges":{"description":"Page of margins data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2MarginEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2MarginEdge":{"description":"Margin data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaMarginLevels","description":"Margin levels data that satisfy a list margin levels request."}},"type":"object"},"v2MarginEstimate":{"description":"Margin level estimate for both worst and best case possible.","properties":{"bestCase":{"$ref":"#/components/schemas/vegaMarginLevels","description":"Margin level estimate assuming no slippage."},"worstCase":{"$ref":"#/components/schemas/vegaMarginLevels","description":"Margin level estimate assuming slippage cap is applied."}},"type":"object"},"v2MarketConnection":{"description":"Page of markets and corresponding page information.","properties":{"edges":{"description":"Page of markets and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2MarketEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2MarketDataConnection":{"properties":{"edges":{"description":"Page of market data items and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2MarketDataEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of market data items and corresponding page information","type":"object"},"v2MarketDataEdge":{"description":"Market data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaMarketData","description":"Data generated by a market when open."}},"type":"object"},"v2MarketEdge":{"description":"Market information with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaMarket","description":"Information about the market."}},"type":"object"},"v2NetworkParameterConnection":{"properties":{"edges":{"description":"Page of network parameters data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2NetworkParameterEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of network parameters and corresponding page information","type":"object"},"v2NetworkParameterEdge":{"description":"Network parameter with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaNetworkParameter","description":"Name and associated value of a network parameter."}},"type":"object"},"v2NodeBasic":{"description":"Represents a basic node without any epoch specific details like delegations, staking, rewards etc.","properties":{"avatarUrl":{"description":"Avatar URL.","type":"string"},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Unique ID identifying the node.","type":"string"},"infoUrl":{"description":"URL that provides more information about the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"name":{"description":"Node name.","type":"string"},"pubKey":{"description":"Node operator's public key.","type":"string"},"status":{"$ref":"#/components/schemas/vegaNodeStatus","description":"Node status."},"tmPubKey":{"description":"Tendermint public key of the node.","type":"string"}},"type":"object"},"v2NodeEdge":{"description":"Node data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaNode","description":"Data specific to a single node on the Vega network."}},"type":"object"},"v2NodeSignatureEdge":{"description":"Nodes signature edge with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1NodeSignature","description":"Node signature data."}},"type":"object"},"v2NodeSignaturesConnection":{"description":"Page of node signatures and corresponding page information.","properties":{"edges":{"description":"Page of node signatures and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2NodeSignatureEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2NodesConnection":{"properties":{"edges":{"description":"Page of node data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2NodeEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of node data and corresponding page information","type":"object"},"v2ObserveAccountsResponse":{"description":"Response that is received when subscribing to a stream of accounts.","properties":{"snapshot":{"$ref":"#/components/schemas/v2AccountSnapshotPage","description":"'Initial image' snapshot containing current account balances."},"updates":{"$ref":"#/components/schemas/v2AccountUpdates","description":"List of account updates in the last block."}},"type":"object"},"v2ObserveCandleDataResponse":{"properties":{"candle":{"$ref":"#/components/schemas/apiv2Candle","description":"Candle data."}},"title":"Response that is received when subscribing to a stream of candles","type":"object"},"v2ObserveEventBusResponse":{"properties":{"events":{"description":"List of events that occurred on the Vega event bus.","items":{"$ref":"#/components/schemas/v1BusEvent"},"type":"array"}},"title":"Response to a subscribed stream of events from the Vega event bus","type":"object"},"v2ObserveGovernanceResponse":{"properties":{"data":{"$ref":"#/components/schemas/vegaGovernanceData","description":"Governance data, i.e. proposal and votes for and against."}},"title":"Response from governance subscription","type":"object"},"v2ObserveLedgerMovementsResponse":{"properties":{"ledgerMovement":{"$ref":"#/components/schemas/vegaLedgerMovement","description":"Ledger movements data with list of ledger entries and and post-transfer balances."}},"title":"Response from ledger movements subscription","type":"object"},"v2ObserveLiquidityProvisionsResponse":{"properties":{"liquidityProvisions":{"items":{"$ref":"#/components/schemas/vegaLiquidityProvision"},"type":"array"}},"title":"Response from liquidity provisions subscription","type":"object"},"v2ObserveMarginLevelsResponse":{"properties":{"marginLevels":{"$ref":"#/components/schemas/vegaMarginLevels","description":"Margin levels data that match the subscription request filters."}},"title":"Response from subscribing to margin levels data","type":"object"},"v2ObserveMarketsDataResponse":{"properties":{"marketData":{"description":"List of market data.","items":{"$ref":"#/components/schemas/vegaMarketData"},"type":"array"}},"title":"Response that is received for market data subscription","type":"object"},"v2ObserveMarketsDepthResponse":{"description":"Response that is received for MarketDepth subscription.","properties":{"marketDepth":{"description":"List of market depth data.","items":{"$ref":"#/components/schemas/vegaMarketDepth"},"type":"array"}},"type":"object"},"v2ObserveMarketsDepthUpdatesResponse":{"properties":{"update":{"description":"List of market depth update data.","items":{"$ref":"#/components/schemas/vegaMarketDepthUpdate"},"type":"array"}},"title":"Response that is received for market depth update subscription","type":"object"},"v2ObserveOrdersResponse":{"description":"Response that is received from an orders subscription.","properties":{"snapshot":{"$ref":"#/components/schemas/v2OrderSnapshotPage","description":"An 'initial image' snapshot containing current live orders."},"updates":{"$ref":"#/components/schemas/v2OrderUpdates","description":"List of order updates in the last block."}},"type":"object"},"v2ObservePositionsResponse":{"properties":{"snapshot":{"$ref":"#/components/schemas/v2PositionSnapshotPage","description":"An 'initial image' snapshot containing current positions."},"updates":{"$ref":"#/components/schemas/v2PositionUpdates","description":"List of position updates in the last block."}},"title":"Response received from a positions subscription request","type":"object"},"v2ObserveTradesResponse":{"properties":{"trades":{"description":"List of 0 or more trades.","items":{"$ref":"#/components/schemas/vegaTrade"},"type":"array"}},"title":"Stream of trades","type":"object"},"v2ObserveTransactionResultsResponse":{"properties":{"transactionResults":{"description":"List of 0 or more transaction results.","items":{"$ref":"#/components/schemas/v1TransactionResult"},"type":"array"}},"title":"Stream of transaction results","type":"object"},"v2ObserveVotesResponse":{"properties":{"vote":{"$ref":"#/components/schemas/vegaVote","description":"Data associated with governance votes that are published to the stream."}},"title":"Response that is received from votes subscription","type":"object"},"v2OracleDataConnection":{"description":"Page of oracle data and corresponding page information.","properties":{"edges":{"description":"Page of oracle data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2OracleDataEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2OracleDataEdge":{"description":"Oracle data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaOracleData","description":"Data that was received from an external oracle."}},"type":"object"},"v2OracleSpecEdge":{"description":"Oracle specs data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaOracleSpec","description":"External spec data that satisfies the list request."}},"type":"object"},"v2OracleSpecsConnection":{"properties":{"edges":{"description":"Page of oracle specs data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2OracleSpecEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of oracle specs and corresponding page information","type":"object"},"v2OrderConnection":{"description":"Page of orders data and corresponding page information.","properties":{"edges":{"description":"Page of orders and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2OrderEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2OrderEdge":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaOrder","description":"Data associated with an order submitted to a Vega node."}},"type":"object"},"v2OrderFilter":{"properties":{"dateRange":{"$ref":"#/components/schemas/v2DateRange","description":"Restrict orders to those placed during the given date range. If not set, all orders will be returned."},"excludeLiquidity":{"description":"Indicator if liquidity provisions should be included or not in the list.","type":"boolean"},"liveOnly":{"description":"Restrict orders to those that are live. If not set, it is treated as being false.","type":"boolean"},"marketIds":{"description":"Restrict orders to those placed on the given market IDs.","items":{"type":"string"},"type":"array"},"partyIds":{"description":"Restrict orders to those placed by the given party IDs.","items":{"type":"string"},"type":"array"},"reference":{"description":"Restrict orders to those with the given reference.","type":"string"},"statuses":{"description":"Restrict orders to those with the given statuses.","items":{"$ref":"#/components/schemas/vegaOrderStatus"},"type":"array"},"timeInForces":{"description":"Restrict orders to those with the given Time In Force.","items":{"$ref":"#/components/schemas/OrderTimeInForce"},"type":"array"},"types":{"description":"Restrict orders to those with the given types.","items":{"$ref":"#/components/schemas/vegaOrderType"},"type":"array"}},"title":"Order filter that contains all filtering conditions and values that are applied to the orders listing","type":"object"},"v2OrderInfo":{"description":"Basic description of an order.","properties":{"isMarketOrder":{"description":"Boolean that indicates if it is a market order.","required":["is_market_order"],"type":"boolean"},"price":{"description":"Price for the order. The price is an unsigned integer. For example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","required":["price"],"type":"string"},"remaining":{"description":"Size remaining.","format":"uint64","required":["remaining"],"type":"string"},"side":{"$ref":"#/components/schemas/vegaSide","description":"Side for the order, e.g. buy or sell."}},"required":["price","remaining","isMarketOrder"],"type":"object"},"v2OrderSnapshotPage":{"description":"'Initial image' of live orders, may be sent over multiple response messages.","properties":{"lastPage":{"description":"Indicator if the last page is reached or not.","type":"boolean"},"orders":{"description":"List of order data parts.","items":{"$ref":"#/components/schemas/vegaOrder"},"type":"array"}},"type":"object"},"v2OrderUpdates":{"description":"List of order updates in the last block.","properties":{"orders":{"description":"List of orders data.","items":{"$ref":"#/components/schemas/vegaOrder"},"type":"array"}},"type":"object"},"v2PageInfo":{"properties":{"endCursor":{"description":"End cursor.","type":"string"},"hasNextPage":{"description":"Indicator if there is a next page.","type":"boolean"},"hasPreviousPage":{"description":"Indicator if there is a previous page.","type":"boolean"},"startCursor":{"description":"Start cursor.","type":"string"}},"title":"Page information for cursor based pagination","type":"object"},"v2Pagination":{"description":"All data returned from the API is ordered in a well-defined manner.\nThe specific columns and the order in which the sorting is performed\ndepend on the API endpoint being called. However, the primary sorting\ncolumn is usually the timestamp of the block in which the data was last updated.\n\nTo prevent excessively large response messages and to avoid overloading\ndatabase resources, the API employs a cursor-based pagination mechanism.\n\nThis Pagination message can be optionally provided as part of the request to specify:\n- The starting point within the total result set for beginning the page\n- The size of the returned page\n- The ordering of the data within that page\n\nIf no Pagination message is provided, the API will return the first page of\ndata using the default page size. The default page size is 1000.\n\nTo retrieve subsequent pages, the caller must examine the PageInfo structure\nreturned in the response to find a cursor string that uniquely identifies the\nlast row of that page. This cursor should then be passed in the 'after' field\nof the Pagination message in a subsequent request.\n\nFor paging backward, take the cursor for the first row of the page from PageInfo\nand pass it in the 'before' field of the Pagination message.\n\nPagination message that uses both first/after and last/before is considered invalid.","properties":{"after":{"description":"If paging forwards, the cursor string for the last row of the previous page.","type":"string"},"before":{"description":"If paging forwards, the cursor string for the first row of the previous page.","type":"string"},"first":{"description":"Number of records to be returned that sort greater than row identified by cursor supplied in 'after'.","format":"int32","type":"integer"},"last":{"description":"Number of records to be returned that sort less than row identified by cursor supplied in 'before'.","format":"int32","type":"integer"},"newestFirst":{"description":"Whether to order the results with the newest records first. If not set, the default value is true.","type":"boolean"}},"type":"object"},"v2PaidLiquidityFeesConnection":{"description":"Paid liquidity fees data and corresponding page information.","properties":{"edges":{"description":"Page of paid liquidity fees data.","items":{"$ref":"#/components/schemas/v2PaidLiquidityFeesEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2PaidLiquidityFeesEdge":{"description":"Paid liquidity fees data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further data.","type":"string"},"node":{"$ref":"#/components/schemas/v1PaidLiquidityFeesStats","description":"Paid liquidity fees data returned by the API."}},"type":"object"},"v2PartiesProfilesConnection":{"description":"Page of profile data per party and corresponding page information.","properties":{"edges":{"description":"Page of profiles and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2PartyProfileEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2PartyConnection":{"description":"Page of parties data and corresponding page information.","properties":{"edges":{"description":"Page of parties and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2PartyEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2PartyEdge":{"description":"Party data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaParty","description":"Data associated with a party."}},"type":"object"},"v2PartyMarginMode":{"description":"Margin mode selected for the given party and market.","properties":{"atEpoch":{"description":"Epoch at which the update happened.","format":"uint64","type":"string"},"marginFactor":{"description":"Margin factor for the market. Isolated mode only.","type":"string"},"marginMode":{"$ref":"#/components/schemas/vegaMarginMode","description":"Selected margin mode."},"marketId":{"description":"Unique ID of the market.","type":"string"},"maxTheoreticalLeverage":{"description":"Maximum theoretical leverage for the market. Isolated mode only.","type":"string"},"minTheoreticalMarginFactor":{"description":"Minimum theoretical margin factor for the market. Isolated mode only.","type":"string"},"partyId":{"description":"Unique ID of the party.","type":"string"}},"type":"object"},"v2PartyMarginModeEdge":{"description":"Party margin mode information and corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2PartyMarginMode","description":"Party margin mode data."}},"type":"object"},"v2PartyMarginModesConnection":{"description":"Page of party margin modes data and corresponding page information.","properties":{"edges":{"description":"Page of party margin modes data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2PartyMarginModeEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2PartyProfileEdge":{"description":"Party's profile data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaPartyProfile","description":"Data associated with a party's profile."}},"type":"object"},"v2PingResponse":{"title":"Ping response from the data node","type":"object"},"v2PositionConnection":{"properties":{"edges":{"description":"Page of positions data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2PositionEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of positions and corresponding page information","type":"object"},"v2PositionEdge":{"description":"Position data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaPosition","description":"Position data for a party on a market."}},"type":"object"},"v2PositionSnapshotPage":{"properties":{"lastPage":{"description":"Indicator if last page is reached or not.","type":"boolean"},"positions":{"description":"List of positions data.","items":{"$ref":"#/components/schemas/vegaPosition"},"type":"array"}},"title":"'Initial image' of current positions, may be sent over multiple response messages","type":"object"},"v2PositionUpdates":{"properties":{"positions":{"description":"List of positions data.","items":{"$ref":"#/components/schemas/vegaPosition"},"type":"array"}},"title":"List of position updates in the last block","type":"object"},"v2PositionsFilter":{"properties":{"marketIds":{"description":"Restrict positions to those on the given markets.","items":{"type":"string"},"type":"array"},"partyIds":{"description":"Restrict positions to those related to the given parties.","items":{"type":"string"},"type":"array"}},"title":"Filter to apply to the ListAllPositionsRequest","type":"object"},"v2ProtocolUpgradeProposalConnection":{"properties":{"edges":{"description":"Page of protocol upgrade proposals data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2ProtocolUpgradeProposalEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of protocol upgrade proposals and corresponding page information","type":"object"},"v2ProtocolUpgradeProposalEdge":{"description":"Protocol upgrade proposal data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1ProtocolUpgradeEvent","description":"Protocol upgrade proposal data."}},"type":"object"},"v2QuantumRewardsPerEpoch":{"properties":{"epoch":{"description":"Epoch for which this information is valid.","format":"uint64","type":"string"},"totalQuantumRewards":{"description":"Total rewards accumulated over the epoch period, expressed in quantum value.","type":"string"}},"type":"object"},"v2ReferralSet":{"description":"Data relating to a referral set.","properties":{"createdAt":{"description":"Timestamp, in Unix nanoseconds, when the set was created.","format":"int64","type":"string"},"id":{"description":"Unique ID of the created set.","type":"string"},"referrer":{"description":"Party that created the set.","type":"string"},"updatedAt":{"description":"Timestamp, in Unix nanoseconds, when the set was updated.","format":"int64","type":"string"}},"type":"object"},"v2ReferralSetConnection":{"description":"Page of referral set data and corresponding page information.","properties":{"edges":{"description":"Page of referral set data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2ReferralSetEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2ReferralSetEdge":{"description":"Referral set data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2ReferralSet","description":"Referral set data."}},"type":"object"},"v2ReferralSetReferee":{"properties":{"atEpoch":{"description":"Epoch at which the party joined the set.","format":"uint64","type":"string"},"joinedAt":{"description":"Timestamp, in Unix nanoseconds, when the party joined the set.","format":"int64","type":"string"},"referee":{"description":"Party that joined the set.","type":"string"},"referralSetId":{"description":"Unique ID of the referral set the referee joined.","type":"string"},"totalRefereeGeneratedRewards":{"description":"Total rewards generated by the referee over the aggregation period.","type":"string"},"totalRefereeNotionalTakerVolume":{"description":"Total notional volume of the referee's aggressive trades over the aggregation period.","type":"string"}},"title":"Data relating to referees that have joined a referral set","type":"object"},"v2ReferralSetRefereeConnection":{"description":"Page of data about the referral set's referees and corresponding page information.","properties":{"edges":{"description":"Page of referral set referee data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2ReferralSetRefereeEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2ReferralSetRefereeEdge":{"description":"Data about the Referral set's referees with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2ReferralSetReferee","description":"Referral set referee data."}},"type":"object"},"v2ReferralSetStats":{"description":"Referral set statistics for a given epoch for a party.","properties":{"atEpoch":{"description":"Epoch at which the set's statistics were updated.","format":"uint64","type":"string"},"discountFactor":{"description":"Discount factor applied to the party.","type":"string"},"epochNotionalTakerVolume":{"description":"Current referee notional taker volume.","type":"string"},"partyId":{"description":"Party ID.","type":"string"},"referralSetRunningNotionalTakerVolume":{"description":"Running volume for the set based on the window length of the current\nreferral program.","type":"string"},"referrerTakerVolume":{"title":"Referrer's taker volume","type":"string"},"rewardFactor":{"description":"Reward factor applied to the party.","type":"string"},"rewardsFactorMultiplier":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"},"rewardsMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral rewards due to the referrer.","type":"string"},"wasEligible":{"description":"Indicates if the referral set was eligible to be part of the referral program.","type":"boolean"}},"type":"object"},"v2ReferralSetStatsConnection":{"description":"Page of volume discount stats data and corresponding page information.","properties":{"edges":{"description":"Page of volume discount statistics data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2ReferralSetStatsEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2ReferralSetStatsEdge":{"description":"Referral set stats data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2ReferralSetStats","description":"Referral set stats data."}},"type":"object"},"v2RewardEdge":{"description":"Rewards data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaReward","description":"Details for a single reward payment."}},"type":"object"},"v2RewardSummaryFilter":{"properties":{"assetIds":{"description":"Restrict reward summaries to those connected to the assets in the given list.","items":{"type":"string"},"type":"array"},"fromEpoch":{"description":"Restrict rewards summaries to those that were paid after and including the given epoch ID.","format":"uint64","type":"string"},"marketIds":{"description":"Restrict reward summaries to those connected to the markets in the given list.","items":{"type":"string"},"type":"array"},"toEpoch":{"description":"Restrict rewards summaries to those that were paid up to and including the given epoch ID.","format":"uint64","type":"string"}},"title":"Filter to restrict the results returned by the ListEpochRewardSummaries","type":"object"},"v2RewardsConnection":{"description":"Page of rewards data and corresponding page information.","properties":{"edges":{"description":"Page of rewards data items and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2RewardEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2StakeLinkingEdge":{"description":"Stake linking data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1StakeLinking","description":"Stake linking represent the intent from a party to deposit."}},"type":"object"},"v2StakesConnection":{"description":"Page of stake data and corresponding page information.","properties":{"edges":{"description":"Page of stake data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2StakeLinkingEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2StopOrderConnection":{"description":"Page of stop orders data and corresponding page information.","properties":{"edges":{"description":"Page of stop orders and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2StopOrderEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2StopOrderEdge":{"description":"Order data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v1StopOrderEvent","description":"Data associated with an order submitted to a Vega node."}},"type":"object"},"v2StopOrderFilter":{"description":"Stop order filter that contains all filtering conditions and values that are applied to the stop orders listing.","properties":{"dateRange":{"$ref":"#/components/schemas/v2DateRange","description":"Restrict orders to those placed during the given date range. If not set, all orders will be returned."},"expiryStrategies":{"description":"Restrict orders to those with the given expiry strategies.","items":{"$ref":"#/components/schemas/StopOrderExpiryStrategy"},"type":"array"},"liveOnly":{"title":"Live stop orders only","type":"boolean"},"marketIds":{"description":"Restrict orders to those placed on the given market IDs.","items":{"type":"string"},"type":"array"},"partyIds":{"description":"Restrict orders to those placed by the given party IDs.","items":{"type":"string"},"type":"array"},"statuses":{"description":"Restrict orders to those with the given statuses.","items":{"$ref":"#/components/schemas/vegaStopOrderStatus"},"type":"array"}},"title":"Stop order filter","type":"object"},"v2SuccessorMarket":{"description":"Successor market information includes the market that is a member of the succession line\nand any governance data that is associated with proposals for child markets\nwhether enacted or not.","properties":{"market":{"$ref":"#/components/schemas/vegaMarket","description":"The market that is a member of the succession line."},"proposals":{"description":"All proposals for child markets that have the market as a parent.","items":{"$ref":"#/components/schemas/vegaGovernanceData"},"type":"array"}},"type":"object"},"v2SuccessorMarketConnection":{"description":"Page of successor market records and corresponding page information.","properties":{"edges":{"description":"Page of successor markets and their cursors.","items":{"$ref":"#/components/schemas/v2SuccessorMarketEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information for pagination control."}},"type":"object"},"v2SuccessorMarketEdge":{"properties":{"cursor":{"description":"Cursor identifying the record for pagination control.","type":"string"},"node":{"$ref":"#/components/schemas/v2SuccessorMarket","description":"Successor market record."}},"title":"Successor market record with the corresponding cursor for paginated results","type":"object"},"v2Table":{"default":"TABLE_UNSPECIFIED","enum":["TABLE_UNSPECIFIED","TABLE_BALANCES","TABLE_CHECKPOINTS","TABLE_DELEGATIONS","TABLE_LEDGER","TABLE_ORDERS","TABLE_TRADES","TABLE_MARKET_DATA","TABLE_MARGIN_LEVELS","TABLE_POSITIONS","TABLE_LIQUIDITY_PROVISIONS","TABLE_MARKETS","TABLE_DEPOSITS","TABLE_WITHDRAWALS","TABLE_BLOCKS","TABLE_REWARDS"],"type":"string"},"v2TeamConnection":{"description":"Page of team data and corresponding page information.","properties":{"edges":{"description":"Page of team data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2TeamEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2TeamEdge":{"description":"Team data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/apiv2Team","description":"Team data."}},"type":"object"},"v2TeamGameEntities":{"properties":{"team":{"description":"List of teams, the participant members of a team, and the metrics associated with each participant.","items":{"$ref":"#/components/schemas/v2TeamGameEntity"},"type":"array"}},"title":"List of teams that are participating in a game","type":"object"},"v2TeamGameEntity":{"description":"Data relating to a team participating in a game.","properties":{"rank":{"format":"uint64","title":"Rank of the team in the game","type":"string"},"rewardEarned":{"title":"Reward earned by the team","type":"string"},"rewardMetric":{"$ref":"#/components/schemas/vegaDispatchMetric","title":"Reward metric applied to the team"},"team":{"$ref":"#/components/schemas/v2TeamGameParticipation","title":"Team participation breakdown"},"totalRewardsEarned":{"title":"Total rewards earned by the individual for the team","type":"string"},"volume":{"title":"Volume traded by the team","type":"string"}},"type":"object"},"v2TeamGameParticipation":{"description":"Breakdown of a team's participation in a game.","properties":{"membersParticipating":{"items":{"$ref":"#/components/schemas/v2IndividualGameEntity"},"title":"Individual team member metrics for their participation in the game","type":"array"},"teamId":{"title":"ID of the team participating","type":"string"}},"type":"object"},"v2TeamMemberStatistics":{"description":"Team member's statistics record containing the team member's information.","properties":{"gamesPlayed":{"description":"List of games played over the requested epoch period.","items":{"type":"string"},"type":"array"},"partyId":{"description":"Party ID the statistics are related to.","type":"string"},"quantumRewards":{"description":"List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.","items":{"$ref":"#/components/schemas/v2QuantumRewardsPerEpoch"},"type":"array"},"totalGamesPlayed":{"description":"Total number of games played.","format":"uint64","type":"string"},"totalQuantumRewards":{"description":"Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"},"totalQuantumVolume":{"description":"Total of volume accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"}},"type":"object"},"v2TeamMemberStatisticsEdge":{"description":"Team member data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2TeamMemberStatistics","description":"Team member's statistics data."}},"type":"object"},"v2TeamMembersStatisticsConnection":{"description":"Page of team members' statistics and corresponding page information.","properties":{"edges":{"description":"Page of team member data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2TeamMemberStatisticsEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2TeamReferee":{"properties":{"joinedAt":{"description":"Timestamp in Unix nanoseconds when the party joined the team.","format":"int64","type":"string"},"joinedAtEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"referee":{"description":"Party that joined the team.","type":"string"},"teamId":{"description":"ID of the team the referee joined.","type":"string"}},"title":"A team's referee info","type":"object"},"v2TeamRefereeConnection":{"description":"Page of team referee data and corresponding page information.","properties":{"edges":{"description":"Page of team referee data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2TeamRefereeEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2TeamRefereeEdge":{"description":"Team referee data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2TeamReferee","description":"Team referee data."}},"type":"object"},"v2TeamRefereeHistory":{"properties":{"joinedAt":{"description":"Timestamp in Unix nanoseconds when the party joined the team.","format":"int64","type":"string"},"joinedAtEpoch":{"description":"Epoch at which the party joined the team.","format":"uint64","type":"string"},"teamId":{"description":"ID of the team the referee joined.","type":"string"}},"title":"A referee's team change information","type":"object"},"v2TeamRefereeHistoryConnection":{"description":"Page of history data about a referee's team membership and corresponding page information.","properties":{"edges":{"description":"Page of team referee history data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2TeamRefereeHistoryEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2TeamRefereeHistoryEdge":{"description":"Team referee history data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2TeamRefereeHistory","description":"Team referee data."}},"type":"object"},"v2TeamStatistics":{"description":"Team's statistics record containing the team information.","properties":{"gamesPlayed":{"description":"List of games played over the requested epoch period.","items":{"type":"string"},"type":"array"},"quantumRewards":{"description":"List of rewards over the requested epoch period, expressed in quantum\nvalue for each epoch.","items":{"$ref":"#/components/schemas/v2QuantumRewardsPerEpoch"},"type":"array"},"teamId":{"description":"Team ID the statistics are related to.","type":"string"},"totalGamesPlayed":{"description":"Total of games played.","format":"uint64","type":"string"},"totalQuantumRewards":{"description":"Total of rewards accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"},"totalQuantumVolume":{"description":"Total of volume accumulated over the requested epoch period, expressed in\nquantum value.","type":"string"}},"type":"object"},"v2TeamStatisticsEdge":{"description":"Team data item with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2TeamStatistics","description":"Team's statistics data."}},"type":"object"},"v2TeamsStatisticsConnection":{"description":"Page of teams' statistics and corresponding page information.","properties":{"edges":{"description":"Page of team data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2TeamStatisticsEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2TradeConnection":{"properties":{"edges":{"description":"Page of trades and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2TradeEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of trades and corresponding page information","type":"object"},"v2TradeEdge":{"description":"Trade data item with the corresponding cursor..","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaTrade","description":"Data associated with a trade that has been executed."}},"type":"object"},"v2TransferConnection":{"properties":{"edges":{"description":"Page of transfers data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2TransferEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of transfers data items and corresponding page information","type":"object"},"v2TransferDirection":{"default":"TRANSFER_DIRECTION_UNSPECIFIED","enum":["TRANSFER_DIRECTION_UNSPECIFIED","TRANSFER_DIRECTION_TRANSFER_FROM","TRANSFER_DIRECTION_TRANSFER_TO","TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM"],"title":"Direction of a transfer","type":"string"},"v2TransferEdge":{"description":"Transfers data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2TransferNode","description":"Data relating to a transfer that has been made."}},"type":"object"},"v2TransferNode":{"properties":{"fees":{"description":"Fees paid for this transfer.","items":{"$ref":"#/components/schemas/v1TransferFees"},"type":"array"},"transfer":{"$ref":"#/components/schemas/vegaeventsv1Transfer","description":"Data relating to a transfer that has been made."}},"type":"object"},"v2VolumeDiscountStats":{"description":"Volume discount statistics for a given epoch for all parties.","properties":{"atEpoch":{"description":"Epoch at which the statistics apply.","format":"uint64","type":"string"},"discountFactor":{"description":"Discount factor applied given the party's running volume.","type":"string"},"partyId":{"description":"Party ID for which the statistics apply.","type":"string"},"runningVolume":{"description":"The party's running volume.","type":"string"}},"type":"object"},"v2VolumeDiscountStatsConnection":{"description":"Page of volume discount stats data and corresponding page information.","properties":{"edges":{"description":"Page of volume discount statistics data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2VolumeDiscountStatsEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"type":"object"},"v2VolumeDiscountStatsEdge":{"description":"Volume discount stats data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/v2VolumeDiscountStats","description":"Volume discount stats data."}},"type":"object"},"v2VoteConnection":{"properties":{"edges":{"description":"Page of vote data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2VoteEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of vote data items and corresponding page information","type":"object"},"v2VoteEdge":{"description":"Votes data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaVote","description":"Data associated with a governance vote."}},"type":"object"},"v2WithdrawalEdge":{"description":"Withdrawals data with the corresponding cursor.","properties":{"cursor":{"description":"Cursor that can be used to fetch further pages.","type":"string"},"node":{"$ref":"#/components/schemas/vegaWithdrawal","description":"Data associated with a single withdrawal made from the Vega network."}},"type":"object"},"v2WithdrawalsConnection":{"properties":{"edges":{"description":"Page of withdrawals data and their corresponding cursors.","items":{"$ref":"#/components/schemas/v2WithdrawalEdge"},"type":"array"},"pageInfo":{"$ref":"#/components/schemas/v2PageInfo","description":"Page information that is used for fetching further pages."}},"title":"Page of withdrawals data and corresponding page information","type":"object"},"vegaAccount":{"properties":{"asset":{"description":"Asset ID for the account.","type":"string"},"balance":{"description":"Balance of the asset, the balance is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places\nand importantly balances cannot be negative.","type":"string"},"id":{"description":"Unique account ID, used internally by Vega.","type":"string"},"marketId":{"description":"Market ID for the account, if `AccountType.ACCOUNT_TYPE_GENERAL` this will be empty.","type":"string"},"owner":{"description":"Party that the account belongs to, special values include `network`, which represents the Vega network and is\nmost commonly seen during liquidation of distressed trading positions.","type":"string"},"type":{"$ref":"#/components/schemas/vegaAccountType","description":"Account type related to this account."}},"title":"Represents an account for an asset on Vega for a particular owner or party","type":"object"},"vegaAccountDetails":{"properties":{"assetId":{"description":"Asset ID of the asset for this account.","type":"string"},"marketId":{"description":"Not specified if account is not related to a market.","type":"string"},"owner":{"description":"Not specified if network account.","type":"string"},"type":{"$ref":"#/components/schemas/vegaAccountType","description":"Type of the account."}},"type":"object"},"vegaAccountType":{"default":"ACCOUNT_TYPE_UNSPECIFIED","description":"- ACCOUNT_TYPE_UNSPECIFIED: Default value\n - ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market\n - ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market\n - ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions.\nEach party will have a margin account for each market they have traded in.\nRequired initial margin is allocated to each market from user's general account.\nCollateral in the margin account can't be withdrawn or used as margin on another market until\nit is released back to the general account.\nVega protocol uses an internal accounting system to segregate funds held as\nmargin from other funds to ensure they are never lost or 'double spent'\n\nMargin account funds will vary as margin requirements on positions change\n - ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will\nhave multiple general accounts, one for each asset they want\nto trade with\n\nGeneral accounts are where funds are initially deposited or withdrawn from,\nit is also the account where funds are taken to fulfil fees and initial margin requirements\n - ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega\n - ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets\n - ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book\nand are then matched with an incoming order to create a trade - These fees reward parties\nwho provide the best priced liquidity that actually allows trading to take place\n - ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments\n - ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)\n - ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset\n - ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset\n - ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)\n - ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers\n - ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers\n - ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers\n - ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold\n - ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds\n - ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.\n - ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.\n - ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury\n - ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period\n - ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period\n - ACCOUNT_TYPE_REWARD_AVERAGE_POSITION: Per asset market reward account given for average position\n - ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return\n - ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility\n - ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking\n - ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts\n - ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode","enum":["ACCOUNT_TYPE_UNSPECIFIED","ACCOUNT_TYPE_INSURANCE","ACCOUNT_TYPE_SETTLEMENT","ACCOUNT_TYPE_MARGIN","ACCOUNT_TYPE_GENERAL","ACCOUNT_TYPE_FEES_INFRASTRUCTURE","ACCOUNT_TYPE_FEES_LIQUIDITY","ACCOUNT_TYPE_FEES_MAKER","ACCOUNT_TYPE_BOND","ACCOUNT_TYPE_EXTERNAL","ACCOUNT_TYPE_GLOBAL_INSURANCE","ACCOUNT_TYPE_GLOBAL_REWARD","ACCOUNT_TYPE_PENDING_TRANSFERS","ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES","ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES","ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS","ACCOUNT_TYPE_HOLDING","ACCOUNT_TYPE_LP_LIQUIDITY_FEES","ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION","ACCOUNT_TYPE_NETWORK_TREASURY","ACCOUNT_TYPE_VESTING_REWARDS","ACCOUNT_TYPE_VESTED_REWARDS","ACCOUNT_TYPE_REWARD_AVERAGE_POSITION","ACCOUNT_TYPE_REWARD_RELATIVE_RETURN","ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY","ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING","ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD","ACCOUNT_TYPE_ORDER_MARGIN"],"title":"Various collateral/account types as used by Vega","type":"string"},"vegaAsset":{"properties":{"details":{"$ref":"#/components/schemas/vegaAssetDetails","description":"Definition of the external source for this asset."},"id":{"description":"Internal identifier of the asset.","type":"string"},"status":{"$ref":"#/components/schemas/vegaAssetStatus","description":"Status of the asset."}},"title":"Vega representation of an external asset","type":"object"},"vegaAssetDetails":{"properties":{"builtinAsset":{"$ref":"#/components/schemas/vegaBuiltinAsset","description":"Vega built-in asset."},"decimals":{"description":"Number of decimal / precision handled by this asset.","format":"uint64","type":"string"},"erc20":{"$ref":"#/components/schemas/vegaERC20","description":"Ethereum ERC20 asset."},"name":{"description":"Name of the asset (e.g: Great British Pound).","type":"string"},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"},"symbol":{"description":"Symbol of the asset (e.g: GBP).","type":"string"}},"title":"Vega representation of an external asset","type":"object"},"vegaAssetDetailsUpdate":{"description":"Changes to apply on an existing asset.","properties":{"erc20":{"$ref":"#/components/schemas/vegaERC20Update","description":"Ethereum ERC20 asset update."},"quantum":{"description":"Minimum economically meaningful amount in the asset.","type":"string"}},"type":"object"},"vegaAssetStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PROPOSED","STATUS_REJECTED","STATUS_PENDING_LISTING","STATUS_ENABLED"],"title":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_PROPOSED: Asset is proposed and under vote\n - STATUS_REJECTED: Asset has been rejected from governance\n - STATUS_PENDING_LISTING: Asset is pending listing from the bridge\n - STATUS_ENABLED: Asset is fully usable in the network","type":"string"},"vegaAuctionDuration":{"properties":{"duration":{"description":"Duration of the auction in seconds.","format":"int64","type":"string"},"volume":{"description":"Target uncrossing trading volume.","format":"uint64","type":"string"}},"title":"Auction duration is used to configure 3 auction periods:\n1. `duration > 0`, `volume == 0`:\n The auction will last for at least N seconds\n2. `duration == 0`, `volume > 0`:\n The auction will end once the given volume will match at uncrossing\n3. `duration > 0`, `volume > 0`:\n The auction will take at least N seconds, but can end sooner if the market can trade a certain volume","type":"object"},"vegaAuctionTrigger":{"default":"AUCTION_TRIGGER_UNSPECIFIED","description":"- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered\n - AUCTION_TRIGGER_BATCH: Batch auction\n - AUCTION_TRIGGER_OPENING: Opening auction\n - AUCTION_TRIGGER_PRICE: Price monitoring trigger\n - AUCTION_TRIGGER_LIQUIDITY: Deprecated\n - AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity\n - AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated\n - AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance","enum":["AUCTION_TRIGGER_UNSPECIFIED","AUCTION_TRIGGER_BATCH","AUCTION_TRIGGER_OPENING","AUCTION_TRIGGER_PRICE","AUCTION_TRIGGER_LIQUIDITY","AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET","AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS","AUCTION_TRIGGER_GOVERNANCE_SUSPENSION"],"title":"Auction triggers indicate what condition triggered an auction (if market is in auction mode)","type":"string"},"vegaBatchProposalTerms":{"properties":{"changes":{"description":"List of individual changes included in the batch proposal.","items":{"$ref":"#/components/schemas/vegaBatchProposalTermsChange"},"type":"array"},"closingTimestamp":{"description":"Closing timestamp in Unix time; adheres to `minClose` and `maxClose` limits.","format":"int64","type":"string"},"proposalParams":{"$ref":"#/components/schemas/vegaProposalParameters","description":"Specific parameters defining the proposal's characteristics used for validation."}},"title":"Terms for a batch governance proposal on Vega","type":"object"},"vegaBatchProposalTermsChange":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Proposal change to cancel a governance initiated transfe."},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance initiated transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."}},"title":"Terms change for a batch governance proposal","type":"object"},"vegaBenefitTier":{"properties":{"minimumEpochs":{"description":"Required number of epochs a party must have been in a referral set to\naccess this tier.","type":"string"},"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"referralDiscountFactor":{"description":"Proportion of the referee's taker fees to be discounted.","type":"string"},"referralRewardFactor":{"description":"Proportion of the referee's taker fees to be rewarded to the referrer.","type":"string"}},"type":"object"},"vegaBuiltinAsset":{"properties":{"maxFaucetAmountMint":{"description":"Maximum amount that can be requested by a party through the built-in asset faucet at a time.","type":"string"}},"title":"Vega internal asset","type":"object"},"vegaCancelTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaCancelTransferConfiguration","title":"Configuration for cancellation of a governance-initiated transfer"}},"type":"object"},"vegaCancelTransferConfiguration":{"properties":{"transferId":{"description":"ID of the governance transfer proposal.","type":"string"}},"type":"object"},"vegaCompositePriceConfiguration":{"description":"Mark price configuration parameters.","properties":{"cashAmount":{"description":"Cash amount, in asset decimals, used for the calculation of the mark price from the order book.","type":"string"},"compositePriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"Which method is used for the calculation of the composite price for the market."},"dataSourcesSpec":{"description":"Additional price sources to be used for index price calculation.","items":{"$ref":"#/components/schemas/vegaDataSourceDefinition"},"type":"array"},"dataSourcesSpecBinding":{"items":{"$ref":"#/components/schemas/vegaSpecBindingForCompositePrice"},"title":"List of each price source and its corresponding binding","type":"array"},"decayPower":{"description":"Decay power used for the calculation of mark price.","format":"uint64","type":"string"},"decayWeight":{"description":"Decay weight used for calculation of mark price.","type":"string"},"sourceStalenessTolerance":{"description":"For how long a price source is considered valid. One entry for each data source\nsuch that the first is for the trade based mark price, the second is for the book based price\nthe third is for the first oracle, followed by more oracle data source staleness tolerance.","items":{"type":"string"},"type":"array"},"sourceWeights":{"description":"Weights for each composite price data source.","items":{"type":"string"},"type":"array"}},"type":"object"},"vegaCompositePriceType":{"default":"COMPOSITE_PRICE_TYPE_UNSPECIFIED","description":" - COMPOSITE_PRICE_TYPE_WEIGHTED: Composite price is calculated as a weighted average of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_MEDIAN: Composite price is calculated as a median of the underlying mark prices.\n - COMPOSITE_PRICE_TYPE_LAST_TRADE: Composite price is calculated as the last trade price.","enum":["COMPOSITE_PRICE_TYPE_UNSPECIFIED","COMPOSITE_PRICE_TYPE_WEIGHTED","COMPOSITE_PRICE_TYPE_MEDIAN","COMPOSITE_PRICE_TYPE_LAST_TRADE"],"type":"string"},"vegaDataSourceDefinition":{"description":"Represents the top level object that handles data sources.\nData source definition can be external or internal, with whatever\nnumber of data sources are defined for each type in the child objects below.","properties":{"external":{"$ref":"#/components/schemas/vegaDataSourceDefinitionExternal"},"internal":{"$ref":"#/components/schemas/vegaDataSourceDefinitionInternal"}},"type":"object"},"vegaDataSourceDefinitionExternal":{"description":"DataSourceDefinitionExternal is the top level object used for all external\ndata sources. It contains one of any of the defined `SourceType` variants.","properties":{"ethOracle":{"$ref":"#/components/schemas/vegaEthCallSpec","description":"Contains the data specification that is received from Ethereum sources."},"oracle":{"$ref":"#/components/schemas/vegaDataSourceSpecConfiguration"}},"type":"object"},"vegaDataSourceDefinitionInternal":{"description":"Top level object used for all internal data sources.\nIt contains one of any of the defined source type variants.","properties":{"time":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTime"},"timeTrigger":{"$ref":"#/components/schemas/vegaDataSourceSpecConfigurationTimeTrigger"}},"type":"object"},"vegaDataSourceSpec":{"description":"Data source spec describes the data source base that a product or a risk\nmodel wants to get from the data source engine. This message contains\nadditional information used by the API.","properties":{"createdAt":{"format":"int64","title":"Creation date and time","type":"string"},"data":{"$ref":"#/components/schemas/vegaDataSourceDefinition"},"id":{"description":"Hash generated from the DataSpec data.","type":"string"},"status":{"$ref":"#/components/schemas/vegaDataSourceSpecStatus","title":"Status describes the status of the data source spec"},"updatedAt":{"format":"int64","title":"Last Updated timestamp","type":"string"}},"type":"object"},"vegaDataSourceSpecConfiguration":{"description":"All types of external data sources use the same configuration set for meeting\nrequirements in order for the data to be useful for Vega - valid signatures\nand matching filters.","properties":{"filters":{"description":"Filters describes which source data are considered of interest or not for\nthe product (or the risk model).","items":{"$ref":"#/components/schemas/v1Filter"},"type":"array"},"signers":{"description":"Signers is the list of authorized signatures that signed the data for this\nsource. All the signatures in the data source data should be contained in\nthis external source. All the signatures in the data should be contained in\nthis list.","items":{"$ref":"#/components/schemas/v1Signer"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTime":{"description":"Internal data source used for emitting timestamps.","properties":{"conditions":{"description":"Conditions that the timestamps should meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"}},"type":"object"},"vegaDataSourceSpecConfigurationTimeTrigger":{"description":"Internal data source used for emitting timestamps automatically using predefined intervals and conditions.","properties":{"conditions":{"description":"Conditions that the timestamps need to meet in order to be considered.","items":{"$ref":"#/components/schemas/v1Condition"},"type":"array"},"triggers":{"items":{"$ref":"#/components/schemas/v1InternalTimeTrigger"},"title":"An internal time trigger","type":"array"}},"type":"object"},"vegaDataSourceSpecStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value.\n - STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.\n - STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to\ndata anymore.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_DEACTIVATED"],"title":"Status describe the status of the data source spec","type":"string"},"vegaDataSourceSpecToFutureBinding":{"properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used as settlement data.\nIf it is set to \"prices.BTC.value\", then the Future will use the value of\nthis property as settlement data.","type":"string"},"tradingTerminationProperty":{"description":"Name of the property in the data source data that signals termination of trading.","type":"string"}},"title":"DataSourceSpecToFutureBinding describes which property of the data source data is to be\nused as settlement data and which to use as the trading terminated trigger","type":"object"},"vegaDataSourceSpecToPerpetualBinding":{"description":"Describes which properties of the data source data is to be\nused for settlement.","properties":{"settlementDataProperty":{"description":"Name of the property in the source data that should be used for settlement data.\nIf it is set to \"prices.BTC.value\" for example, then the perpetual market will use the value of\nthis property to get settlement data.","type":"string"},"settlementScheduleProperty":{"description":"Name of the property in the source data that should be used to determine the perpetual's settlement schedule.","type":"string"}},"type":"object"},"vegaDelegation":{"properties":{"amount":{"description":"Amount delegated. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"epochSeq":{"description":"Epoch of delegation.","type":"string"},"nodeId":{"description":"Node ID to delegate to.","type":"string"},"party":{"description":"Party which is delegating.","type":"string"}},"type":"object"},"vegaDeposit":{"properties":{"amount":{"description":"Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Vega asset targeted by this deposit.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the deposit was created on the Vega network.","format":"int64","type":"string"},"creditedTimestamp":{"description":"Timestamp for when the Vega account was updated with the deposit.","format":"int64","type":"string"},"id":{"description":"Unique ID for the deposit.","type":"string"},"partyId":{"description":"Party ID of the user initiating the deposit.","type":"string"},"status":{"$ref":"#/components/schemas/vegaDepositStatus","description":"Status of the deposit."},"txHash":{"description":"Hash of the transaction from the foreign chain.","type":"string"}},"title":"Deposit on to the Vega network","type":"object"},"vegaDepositStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Deposit is being processed by the network\n - STATUS_CANCELLED: Deposit has been cancelled by the network\n - STATUS_FINALIZED: Deposit has been finalised and accounts have been updated","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_CANCELLED","STATUS_FINALIZED"],"title":"Status of the deposit","type":"string"},"vegaDispatchMetric":{"default":"DISPATCH_METRIC_UNSPECIFIED","enum":["DISPATCH_METRIC_UNSPECIFIED","DISPATCH_METRIC_MAKER_FEES_PAID","DISPATCH_METRIC_MAKER_FEES_RECEIVED","DISPATCH_METRIC_LP_FEES_RECEIVED","DISPATCH_METRIC_MARKET_VALUE","DISPATCH_METRIC_AVERAGE_POSITION","DISPATCH_METRIC_RELATIVE_RETURN","DISPATCH_METRIC_RETURN_VOLATILITY","DISPATCH_METRIC_VALIDATOR_RANKING"],"title":"- DISPATCH_METRIC_MAKER_FEES_PAID: Dispatch metric that uses the total maker fees paid in the market\n - DISPATCH_METRIC_MAKER_FEES_RECEIVED: Dispatch metric that uses the total maker fees received in the market\n - DISPATCH_METRIC_LP_FEES_RECEIVED: Dispatch metric that uses the total LP fees received in the market\n - DISPATCH_METRIC_MARKET_VALUE: Dispatch metric that uses total value of the market if above the required threshold and not paid given proposer bonus yet\n - DISPATCH_METRIC_AVERAGE_POSITION: Dispatch metric that uses the time weighted average position\n - DISPATCH_METRIC_RELATIVE_RETURN: Dispatch metric that uses the relative PNL of the party in the market\n - DISPATCH_METRIC_RETURN_VOLATILITY: Dispatch metric that uses return volatility of the party in the market\n - DISPATCH_METRIC_VALIDATOR_RANKING: Dispatch metric that uses the validator ranking of the validator as metric","type":"string"},"vegaDispatchStrategy":{"properties":{"assetForMetric":{"description":"Asset to use for metric.","type":"string"},"distributionStrategy":{"$ref":"#/components/schemas/vegaDistributionStrategy","title":"Controls how the reward is distributed between qualifying parties"},"entityScope":{"$ref":"#/components/schemas/vegaEntityScope","description":"Mandatory enum that defines the entities within scope."},"individualScope":{"$ref":"#/components/schemas/vegaIndividualScope","description":"Optional enum if the entity scope defined is for individuals, which determines the subset of individuals that are eligible to be rewarded."},"lockPeriod":{"format":"uint64","title":"Number of epochs after distribution to delay vesting of rewards by","type":"string"},"markets":{"description":"Optional markets in scope.","items":{"type":"string"},"type":"array"},"metric":{"$ref":"#/components/schemas/vegaDispatchMetric","description":"Metric to apply."},"nTopPerformers":{"title":"The proportion of the top performers in the team for a given metric to be averaged for the metric calculation if the scope is team","type":"string"},"notionalTimeWeightedAveragePositionRequirement":{"title":"Minimum notional time-weighted averaged position required for a party to be considered eligible. Defaults to 0","type":"string"},"rankTable":{"description":"Ordered list, using start rank, defining the rank bands and share ratio for each band. Mandatory for the rank distribution strategy.","items":{"$ref":"#/components/schemas/vegaRank"},"type":"array"},"stakingRequirement":{"title":"Minimum number of governance (e.g. VEGA) tokens staked for a party to be considered eligible. Defaults to 0","type":"string"},"teamScope":{"items":{"type":"string"},"title":"Optional list applicable if the reward type has a scope of teams, which allows the funder to define a list of team IDs that are eligible to be rewarded from this transfer","type":"array"},"windowLength":{"format":"uint64","title":"Number of epochs to evaluate the metric on","type":"string"}},"type":"object"},"vegaDistributionStrategy":{"default":"DISTRIBUTION_STRATEGY_UNSPECIFIED","description":" - DISTRIBUTION_STRATEGY_PRO_RATA: Rewards funded using the pro-rata strategy should be distributed pro-rata by each entity's reward metric, scaled by any active multipliers that party has.\n - DISTRIBUTION_STRATEGY_RANK: Rewards funded using the party rank.","enum":["DISTRIBUTION_STRATEGY_UNSPECIFIED","DISTRIBUTION_STRATEGY_PRO_RATA","DISTRIBUTION_STRATEGY_RANK"],"type":"string"},"vegaERC20":{"properties":{"contractAddress":{"description":"Address of the contract for the token, on the ethereum network.","type":"string"},"lifetimeLimit":{"description":"Lifetime limits deposit per address\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"title":"ERC20 token based asset, living on the ethereum network","type":"object"},"vegaERC20Update":{"properties":{"lifetimeLimit":{"description":"Lifetime limits deposit per address.\nThis will be interpreted against the asset decimals.\nnote: this is a temporary measure that can be changed by governance.","type":"string"},"withdrawThreshold":{"description":"Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay.\nThere’s no limit on the size of a withdrawal\nnote: this is a temporary measure that can be changed by governance.","type":"string"}},"type":"object"},"vegaEntityScope":{"default":"ENTITY_SCOPE_UNSPECIFIED","enum":["ENTITY_SCOPE_UNSPECIFIED","ENTITY_SCOPE_INDIVIDUALS","ENTITY_SCOPE_TEAMS"],"title":"- ENTITY_SCOPE_INDIVIDUALS: Rewards must be distributed directly to eligible parties.\n - ENTITY_SCOPE_TEAMS: Rewards must be distributed to directly eligible teams, and then amongst team members","type":"string"},"vegaEpoch":{"properties":{"delegations":{"description":"List of all delegations in epoch.","items":{"$ref":"#/components/schemas/vegaDelegation"},"type":"array"},"seq":{"description":"Sequence is used as epoch ID.","format":"uint64","type":"string"},"timestamps":{"$ref":"#/components/schemas/vegaEpochTimestamps","description":"Timestamps for start/end etc."},"validators":{"description":"Validators that participated in this epoch.","items":{"$ref":"#/components/schemas/vegaNode"},"type":"array"}},"type":"object"},"vegaEpochAction":{"default":"EPOCH_ACTION_UNSPECIFIED","description":"- EPOCH_ACTION_START: Epoch update is for a new epoch.\n - EPOCH_ACTION_END: Epoch update is for the end of an epoch.","enum":["EPOCH_ACTION_UNSPECIFIED","EPOCH_ACTION_START","EPOCH_ACTION_END"],"title":"What epoch action has occurred","type":"string"},"vegaEpochData":{"properties":{"offline":{"description":"Total number of offline epochs since node was created.","format":"int32","type":"integer"},"online":{"description":"Total number of online epochs since node was created.","format":"int32","type":"integer"},"total":{"description":"Total number of epochs since node was created.","format":"int32","type":"integer"}},"type":"object"},"vegaEpochRewardSummary":{"properties":{"amount":{"description":"Amount distributed. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"epoch":{"description":"Epoch in which the reward is being paid.","format":"uint64","type":"string"},"marketId":{"description":"Market ID in which the reward is being paid.","type":"string"},"rewardType":{"description":"Type of reward being paid.","type":"string"}},"title":"Details for rewards for a combination of asset, market, and reward type in a given epoch","type":"object"},"vegaEpochTimestamps":{"properties":{"endTime":{"description":"Timestamp in Unix nanoseconds for when the epoch ended, empty if not ended.","format":"int64","type":"string"},"expiryTime":{"description":"Timestamp in Unix nanoseconds for the epoch's expiry.","format":"int64","type":"string"},"firstBlock":{"description":"Height of first block in the epoch.","format":"uint64","type":"string"},"lastBlock":{"description":"Height of last block in the epoch, empty if not ended.","format":"uint64","type":"string"},"startTime":{"description":"Timestamp in Unix nanoseconds for when epoch started.","format":"int64","type":"string"}},"title":"Describes in both human readable and block time when an epoch spans","type":"object"},"vegaErc20WithdrawExt":{"properties":{"receiverAddress":{"description":"Address into which the bridge will release the funds.","type":"string"}},"title":"Extension of data required for the withdraw submissions","type":"object"},"vegaEthCallSpec":{"description":"Specifies a data source that derives its content from calling a read method\non an Ethereum contract.","properties":{"abi":{"description":"The ABI of that contract.","type":"string"},"address":{"description":"Ethereum address of the contract to call.","type":"string"},"args":{"description":"List of arguments to pass to method call.\nProtobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum\ntype according to the ABI.","items":{"type":"object"},"type":"array"},"filters":{"items":{"$ref":"#/components/schemas/v1Filter"},"title":"Filters the data returned from the contract method","type":"array"},"method":{"description":"Name of the method on the contract to call.","type":"string"},"normalisers":{"description":"Normalisers are used to convert the data returned from the contract method\ninto a standard format. The key of the map is the name of the property,\nwhich identifies the specific piece of data to other parts of the data\nsourcing framework, for example filters. The value is a JSONPath expression\nfor expressing where in the contract call result the required data is\nlocated, for example $[0] indicates the first result. $[1].price would look\nin the second result returned from the contract for a structure with a key\ncalled 'price' and use that if it exists.","items":{"$ref":"#/components/schemas/vegaNormaliser"},"type":"array"},"requiredConfirmations":{"format":"uint64","title":"Number of confirmations required before the query is considered verified","type":"string"},"sourceChainId":{"description":"The ID of the EVM based chain which is to be used to source the oracle data.","format":"uint64","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaEthCallTrigger","description":"Conditions for determining when to call the contract method."}},"type":"object"},"vegaEthCallTrigger":{"description":"Determines when the contract method should be called.","properties":{"timeTrigger":{"$ref":"#/components/schemas/vegaEthTimeTrigger"}},"type":"object"},"vegaEthTimeTrigger":{"description":"Trigger for an Ethereum call based on the Ethereum block timestamp. Can be\none-off or repeating.","properties":{"every":{"description":"Repeat the call every n seconds after the initial call. If no time for\ninitial call was specified, begin repeating immediately.","format":"uint64","type":"string"},"initial":{"description":"Trigger when the Ethereum time is greater or equal to this time, in Unix\nseconds.","format":"uint64","type":"string"},"until":{"description":"If repeating, stop once Ethereum time is greater than this time, in Unix\nseconds. If not set, then repeat indefinitely.","format":"uint64","type":"string"}},"type":"object"},"vegaExternalDataSourceSpec":{"properties":{"spec":{"$ref":"#/components/schemas/vegaDataSourceSpec"}},"type":"object"},"vegaFee":{"properties":{"infrastructureFee":{"description":"Fee amount paid for maintaining the Vega infrastructure. This field is an unsigned integer scaled using the asset's decimal places.","type":"string"},"infrastructureFeeReferrerDiscount":{"description":"Discount on infrastructure fee for eligible referrer.","type":"string"},"infrastructureFeeVolumeDiscount":{"description":"Discount on infrastructure fee based on the taker volume.","type":"string"},"liquidityFee":{"description":"Fee amount paid to market makers. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"liquidityFeeReferrerDiscount":{"description":"Discount on liquidity fee for eligible referrer.","type":"string"},"liquidityFeeVolumeDiscount":{"description":"Discount on liquidity fee basedo on taker volume.","type":"string"},"makerFee":{"description":"Fee amount paid to the non-aggressive party of the trade. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"makerFeeReferrerDiscount":{"description":"Referrer discounts.\nDiscount on maker fee for eligible referrer.","type":"string"},"makerFeeVolumeDiscount":{"description":"Volume discounts.\nDiscount on maker fee based on the taker volume.","type":"string"}},"title":"Represents any fees paid by a party, resulting from a trade","type":"object"},"vegaFeeFactors":{"properties":{"infrastructureFee":{"description":"Infrastructure fee charged network wide for staking and governance.","type":"string"},"liquidityFee":{"description":"Liquidity fee applied per market for market making.","type":"string"},"makerFee":{"description":"Market maker fee charged network wide.","type":"string"}},"title":"Fee factors definition","type":"object"},"vegaFees":{"properties":{"factors":{"$ref":"#/components/schemas/vegaFeeFactors","description":"Fee factors."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Liquidity fee settings for the market describing how the fee was calculated."}},"title":"Fees definition","type":"object"},"vegaFuture":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"Binding between the data spec and the data source."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source specification that describes the settlement data source filter."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source specification that describes the trading termination data source filter."},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the future.","type":"string"}},"title":"Future product definition","type":"object"},"vegaFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The external data source spec describing the data source of trading termination."},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaGovernanceData":{"properties":{"no":{"description":"All NO votes against the proposal above.","items":{"$ref":"#/components/schemas/vegaVote"},"type":"array"},"noParty":{"additionalProperties":{"$ref":"#/components/schemas/vegaVote"},"description":"All latest NO votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"},"proposal":{"$ref":"#/components/schemas/vegaProposal","description":"Governance proposal that is being voted on."},"proposalType":{"$ref":"#/components/schemas/vegaGovernanceDataType","description":"Type of proposal this data is for."},"proposals":{"description":"If proposal type is batch, proposals will contain all the proposals that are make up the batch.","items":{"$ref":"#/components/schemas/vegaProposal"},"type":"array"},"yes":{"description":"All YES votes in favour of the proposal above.","items":{"$ref":"#/components/schemas/vegaVote"},"type":"array"},"yesParty":{"additionalProperties":{"$ref":"#/components/schemas/vegaVote"},"description":"All latest YES votes by party which is guaranteed to be unique,\nwhere key (string) is the party ID i.e. public key and\nvalue (Vote) is the vote cast by the given party.","type":"object"}},"title":"Governance data","type":"object"},"vegaGovernanceDataType":{"default":"TYPE_SINGLE_OR_UNSPECIFIED","description":"- TYPE_SINGLE_OR_UNSPECIFIED: Single proposal only. In case it has not been specified, for example in older proposals, then this is the default.\n - TYPE_BATCH: Proposal contains a batch of proposals or a proposal that should be treated as part of a batch.","enum":["TYPE_SINGLE_OR_UNSPECIFIED","TYPE_BATCH"],"title":"Proposal type","type":"string"},"vegaGovernanceTransferType":{"default":"GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","enum":["GOVERNANCE_TRANSFER_TYPE_UNSPECIFIED","GOVERNANCE_TRANSFER_TYPE_ALL_OR_NOTHING","GOVERNANCE_TRANSFER_TYPE_BEST_EFFORT"],"type":"string"},"vegaIcebergOrder":{"properties":{"minimumVisibleSize":{"description":"If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.","format":"uint64","type":"string"},"peakSize":{"description":"Size of the order that will be made visible if the iceberg order is replenished after trading.","format":"uint64","type":"string"},"reservedRemaining":{"description":"Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.","format":"uint64","type":"string"}},"title":"Details of an iceberg order","type":"object"},"vegaIndividualScope":{"default":"INDIVIDUAL_SCOPE_UNSPECIFIED","description":" - INDIVIDUAL_SCOPE_ALL: All parties on the network are within the scope of this reward.\n - INDIVIDUAL_SCOPE_IN_TEAM: All parties that are part of a team are within the scope of this reward.\n - INDIVIDUAL_SCOPE_NOT_IN_TEAM: All parties that are not part of a team are within the scope of this reward.","enum":["INDIVIDUAL_SCOPE_UNSPECIFIED","INDIVIDUAL_SCOPE_ALL","INDIVIDUAL_SCOPE_IN_TEAM","INDIVIDUAL_SCOPE_NOT_IN_TEAM"],"type":"string"},"vegaInstrument":{"properties":{"code":{"description":"Code for the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaFuture","description":"Future."},"id":{"description":"Unique instrument ID.","type":"string"},"metadata":{"$ref":"#/components/schemas/vegaInstrumentMetadata","description":"Collection of instrument meta-data."},"name":{"description":"Name of the instrument.","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaPerpetual","description":"Perpetual."},"spot":{"$ref":"#/components/schemas/vegaSpot","description":"Spot."}},"title":"Instrument definition","type":"object"},"vegaInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaFutureProduct","description":"Future."},"name":{"description":"Instrument name.","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaPerpetualProduct","description":"Perpetual."},"spot":{"$ref":"#/components/schemas/vegaSpotProduct","description":"Spot."}},"title":"Instrument configuration","type":"object"},"vegaInstrumentMetadata":{"properties":{"tags":{"description":"List of 0 or more tags.","items":{"type":"string"},"type":"array"}},"title":"Instrument metadata definition","type":"object"},"vegaLedgerEntry":{"properties":{"amount":{"description":"Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"fromAccount":{"$ref":"#/components/schemas/vegaAccountDetails","description":"One or more accounts to transfer from."},"fromAccountBalance":{"description":"Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in nanoseconds of when the ledger entry was created.","format":"int64","type":"string"},"toAccount":{"$ref":"#/components/schemas/vegaAccountDetails","description":"One or more accounts to transfer to."},"toAccountBalance":{"description":"Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"transferId":{"description":"Transfer ID the ledger entry relates to.","type":"string"},"type":{"$ref":"#/components/schemas/vegaTransferType","description":"Transfer type for this entry."}},"title":"Represents a ledger entry on Vega","type":"object"},"vegaLedgerMovement":{"properties":{"balances":{"description":"Resulting balances once the ledger movement are applied.","items":{"$ref":"#/components/schemas/vegaPostTransferBalance"},"type":"array"},"entries":{"description":"All the entries for these ledger movements.","items":{"$ref":"#/components/schemas/vegaLedgerEntry"},"type":"array"}},"type":"object"},"vegaLiquidationStrategy":{"description":"Liquidation strategy used when the network holds a position resulting from position resolution.","properties":{"disposalFraction":{"description":"Fraction of the open position the market will try to close in a single attempt; range 0 through 1.","type":"string"},"disposalTimeStep":{"description":"Interval, in seconds, at which the network will attempt to close its position.","format":"int64","type":"string"},"fullDisposalSize":{"description":"Size of the position that the network will try to close in a single attempt.","format":"uint64","type":"string"},"maxFractionConsumed":{"description":"Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.","type":"string"}},"type":"object"},"vegaLiquidityFeeSettings":{"description":"Market settings that describe how the liquidity fee is calculated.","properties":{"feeConstant":{"description":"Constant liquidity fee used when using the constant fee method.","type":"string"},"method":{"$ref":"#/components/schemas/vegaLiquidityFeeSettingsMethod","description":"Method used to calculate the market's liquidity fee."}},"type":"object"},"vegaLiquidityFeeSettingsMethod":{"default":"METHOD_UNSPECIFIED","description":" - METHOD_MARGINAL_COST: Fee is the smallest value of all bids, such that liquidity providers with nominated fees less than or equal to this value still have sufficient commitment to fulfil the market's target stake.\n - METHOD_WEIGHTED_AVERAGE: Fee is the weighted average of all liquidity providers' nominated fees, weighted by their committment.\n - METHOD_CONSTANT: Fee is set by the market to a constant value irrespective of any liquidity provider's nominated fee.","enum":["METHOD_UNSPECIFIED","METHOD_MARGINAL_COST","METHOD_WEIGHTED_AVERAGE","METHOD_CONSTANT"],"type":"string"},"vegaLiquidityMonitoringParameters":{"properties":{"auctionExtension":{"description":"Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.","format":"int64","type":"string"},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."},"triggeringRatio":{"description":"Specifies the triggering ratio for entering liquidity auction.","type":"string"}},"title":"LiquidityMonitoringParameters contains settings used for liquidity monitoring","type":"object"},"vegaLiquidityOrder":{"properties":{"offset":{"description":"Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.","type":"string"},"proportion":{"description":"Relative proportion of the commitment to be allocated at a price level.","format":"int64","type":"integer"},"reference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"Pegged reference point for the order."}},"title":"Represents a liquidity order","type":"object"},"vegaLiquidityOrderReference":{"properties":{"liquidityOrder":{"$ref":"#/components/schemas/vegaLiquidityOrder","description":"Liquidity order from the original submission."},"orderId":{"description":"Unique ID of the pegged order generated to fulfil this liquidity order.","type":"string"}},"title":"Pair of a liquidity order and the ID of the generated order","type":"object"},"vegaLiquidityProviderFeeShare":{"properties":{"averageEntryValuation":{"description":"Average entry valuation of the liquidity provider for the market.","type":"string"},"averageScore":{"description":"Average liquidity score.","type":"string"},"equityLikeShare":{"description":"Share own by this liquidity provider.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"virtualStake":{"description":"The virtual stake of this liquidity provider.","type":"string"}},"title":"Equity like share of liquidity fee for each liquidity provider","type":"object"},"vegaLiquidityProviderSLA":{"properties":{"currentEpochFractionOfTimeOnBook":{"description":"Indicates how often LP meets the commitment during the current epoch.","type":"string"},"hysteresisPeriodFeePenalties":{"description":"Determines how the fee penalties from past epochs affect future fee revenue.","items":{"type":"string"},"type":"array"},"lastEpochBondPenalty":{"description":"Shows the bond penalties from past epochs.","type":"string"},"lastEpochFeePenalty":{"description":"Indicates the fee penalty amount applied in the previous epoch.","type":"string"},"lastEpochFractionOfTimeOnBook":{"description":"Indicates how often LP met the commitment in the previous epoch.","type":"string"},"notionalVolumeBuys":{"description":"Notional volume of orders within the range provided on the buy side of the book.","type":"string"},"notionalVolumeSells":{"description":"Notional volume of orders within the range provided on the sell side of the book.","type":"string"},"party":{"description":"Liquidity provider party ID.","type":"string"},"requiredLiquidity":{"description":"Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s\nsettlement currency, spread on both buy and sell sides of the order book within a defined range.","type":"string"}},"title":"SLA performance for each liquidity provider","type":"object"},"vegaLiquidityProvision":{"properties":{"buys":{"description":"Set of liquidity buy orders to meet the liquidity provision obligation.","items":{"$ref":"#/components/schemas/vegaLiquidityOrderReference"},"type":"array"},"commitmentAmount":{"description":"Specified as a unitless number that represents the amount of settlement asset of the market.\nThis field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"createdAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was created.","format":"int64","type":"string"},"fee":{"description":"Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.","type":"string"},"id":{"description":"Unique ID for the liquidity provision.","type":"string"},"marketId":{"description":"Market ID for the liquidity provision.","type":"string"},"partyId":{"description":"Unique party ID for the creator of the provision.","type":"string"},"reference":{"description":"Reference shared between this liquidity provision and all its orders.","type":"string"},"sells":{"description":"Set of liquidity sell orders to meet the liquidity provision obligation.","items":{"$ref":"#/components/schemas/vegaLiquidityOrderReference"},"type":"array"},"status":{"$ref":"#/components/schemas/vegaLiquidityProvisionStatus","description":"Status of this liquidity provision."},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the liquidity provision was updated.","format":"int64","type":"string"},"version":{"description":"Version of this liquidity provision.","format":"uint64","type":"string"}},"title":"Liquidity provider commitment","type":"object"},"vegaLiquidityProvisionStatus":{"default":"STATUS_UNSPECIFIED","description":"Status of a liquidity provision.\n\n - STATUS_UNSPECIFIED: Always invalid\n - STATUS_ACTIVE: Liquidity provision is active\n - STATUS_STOPPED: Liquidity provision was stopped by the network\n - STATUS_CANCELLED: Liquidity provision was cancelled by the liquidity provider\n - STATUS_REJECTED: Liquidity provision was invalid and got rejected\n - STATUS_UNDEPLOYED: Liquidity provision is valid and accepted by network, but orders aren't deployed\n - STATUS_PENDING: Liquidity provision is valid and accepted by network\nbut has never been deployed. If when it's possible to deploy the orders for the first time\nmargin check fails, then they will be cancelled without any penalties.","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_STOPPED","STATUS_CANCELLED","STATUS_REJECTED","STATUS_UNDEPLOYED","STATUS_PENDING"],"type":"string"},"vegaLiquiditySLAParameters":{"properties":{"commitmentMinTimeFraction":{"description":"Specifies the minimum fraction of time LPs must spend \"on the book\" providing their committed liquidity.","type":"string"},"performanceHysteresisEpochs":{"description":"Specifies the number of liquidity epochs over which past performance will continue to affect rewards.","format":"uint64","type":"string"},"priceRange":{"type":"string"},"slaCompetitionFactor":{"description":"Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers\nthat achieved a higher SLA performance than them.","type":"string"}},"type":"object"},"vegaLogNormalModelParams":{"properties":{"mu":{"description":"Mu parameter, annualised growth rate of the underlying asset.","format":"double","type":"number"},"r":{"description":"R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.","format":"double","type":"number"},"sigma":{"description":"Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model parameters for log normal","type":"object"},"vegaLogNormalRiskModel":{"properties":{"params":{"$ref":"#/components/schemas/vegaLogNormalModelParams","description":"Risk model parameters for log normal."},"riskAversionParameter":{"description":"Risk Aversion Parameter.","format":"double","type":"number"},"tau":{"description":"Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall\ncalculation to obtain the maintenance margin, must be a strictly non-negative real number.","format":"double","type":"number"}},"title":"Risk model for log normal","type":"object"},"vegaMarginCalculator":{"properties":{"scalingFactors":{"$ref":"#/components/schemas/vegaScalingFactors","description":"Scaling factors for margin calculation."}},"title":"Margin Calculator definition","type":"object"},"vegaMarginLevels":{"properties":{"asset":{"description":"Asset ID for which the margin levels apply.","type":"string"},"collateralReleaseLevel":{"description":"Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"initialMargin":{"description":"Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"maintenanceMargin":{"description":"Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"marginFactor":{"description":"Margin factor, relevant only for isolated margin, 0 otherwise.","type":"string"},"marginMode":{"$ref":"#/components/schemas/vegaMarginMode","description":"Margin mode for the party, cross margin or isolated margin."},"marketId":{"description":"Market ID for which the margin levels apply.","type":"string"},"orderMargin":{"description":"Margin required to cover orders in isolated margin mode.","type":"string"},"partyId":{"description":"Party ID for whom the margin levels apply.","type":"string"},"searchLevel":{"description":"Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the ledger entry was created.","format":"int64","type":"string"}},"title":"Represents the margin levels for a party on a market at a given time","type":"object"},"vegaMarginMode":{"default":"MARGIN_MODE_UNSPECIFIED","enum":["MARGIN_MODE_UNSPECIFIED","MARGIN_MODE_CROSS_MARGIN","MARGIN_MODE_ISOLATED_MARGIN"],"title":"- MARGIN_MODE_UNSPECIFIED: Never valid.\n - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market\n - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed","type":"string"},"vegaMarket":{"properties":{"decimalPlaces":{"description":"Number of decimal places that a price must be shifted by in order to get a\ncorrect price denominated in the currency of the market, for example:\n`realPrice = price / 10^decimalPlaces`.","format":"uint64","type":"string"},"fees":{"$ref":"#/components/schemas/vegaFees","description":"Fees configuration that apply to the market."},"id":{"description":"Unique ID for the market.","type":"string"},"insurancePoolFraction":{"description":"The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.","type":"string"},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","description":"Liquidation strategy used by this market."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"LiquidityMonitoringParameters for the market."},"liquiditySlaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Liquidity SLA parameters for the market."},"lpPriceRange":{"description":"Percentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price calculation configuration."},"marketTimestamps":{"$ref":"#/components/schemas/vegaMarketTimestamps","description":"Timestamps for when the market state changes."},"openingAuction":{"$ref":"#/components/schemas/vegaAuctionDuration","description":"Auction duration specifies how long the opening auction will run (minimum\nduration and optionally a minimum traded volume)."},"parentMarketId":{"title":"ID of the market this market succeeds","type":"string"},"positionDecimalPlaces":{"description":"The number of decimal places for a position.","format":"int64","type":"string"},"priceMonitoringSettings":{"$ref":"#/components/schemas/vegaPriceMonitoringSettings","description":"PriceMonitoringSettings for the market."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"state":{"$ref":"#/components/schemas/vegaMarketState","description":"Current state of the market."},"successorMarketId":{"description":"ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.","type":"string"},"tradableInstrument":{"$ref":"#/components/schemas/vegaTradableInstrument","description":"Tradable instrument configuration."},"tradingMode":{"$ref":"#/components/schemas/MarketTradingMode","description":"Current mode of execution of the market."}},"title":"Market definition","type":"object"},"vegaMarketData":{"properties":{"auctionEnd":{"description":"Time in seconds until the end of the auction (zero if currently not in auction period).","format":"int64","type":"string"},"auctionStart":{"description":"Time until next auction, or start time of the current auction if market is in auction period.","format":"int64","type":"string"},"bestBidPrice":{"description":"Highest price level on an order book for buy orders, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"bestBidVolume":{"description":"Aggregated volume being bid at the best bid price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestOfferPrice":{"description":"Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestOfferVolume":{"description":"Aggregated volume being offered at the best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market is configured to 5 decimal places.","format":"uint64","type":"string"},"bestStaticBidPrice":{"description":"Highest price on the order book for buy orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticBidVolume":{"description":"Total volume at the best static bid price excluding pegged orders.","format":"uint64","type":"string"},"bestStaticOfferPrice":{"description":"Lowest price on the order book for sell orders not including pegged orders.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"bestStaticOfferVolume":{"description":"Total volume at the best static offer price, excluding pegged orders.","format":"uint64","type":"string"},"extensionTrigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","description":"When a market auction is extended, this field indicates what caused the extension."},"indicativePrice":{"description":"Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.","type":"string"},"indicativeVolume":{"description":"Indicative volume (zero if not in auction).","format":"uint64","type":"string"},"lastTradedPrice":{"description":"Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"liquidityProviderFeeShare":{"description":"Equity like share of liquidity fee for each liquidity provider.","items":{"$ref":"#/components/schemas/vegaLiquidityProviderFeeShare"},"type":"array"},"liquidityProviderSla":{"description":"SLA performance for each liquidity provider.","items":{"$ref":"#/components/schemas/vegaLiquidityProviderSLA"},"type":"array"},"markPrice":{"description":"Mark price, as an unsigned integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"markPriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"The method used for calculating the mark price."},"market":{"title":"Market ID for the data","type":"string"},"marketGrowth":{"description":"Market growth at the last market time window.","type":"string"},"marketState":{"$ref":"#/components/schemas/vegaMarketState","description":"Current state of the market."},"marketTradingMode":{"$ref":"#/components/schemas/MarketTradingMode","description":"Current trading mode for the market."},"marketValueProxy":{"description":"Market value proxy.","type":"string"},"midPrice":{"description":"Arithmetic average of the best bid price and best offer price, as an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"nextMarkToMarket":{"description":"Time in Unix nanoseconds when the next mark-to-market calculation will occur.","format":"int64","type":"string"},"nextNetworkCloseout":{"description":"Time in Unix nanoseconds when the market will next submit a trade to reduce its position.","format":"int64","type":"string"},"openInterest":{"description":"Sum of the size of all positions greater than zero on the market.","format":"uint64","type":"string"},"priceMonitoringBounds":{"description":"One or more price monitoring bounds for the current timestamp.","items":{"$ref":"#/components/schemas/vegaPriceMonitoringBounds"},"type":"array"},"productData":{"$ref":"#/components/schemas/vegaProductData","description":"Data related to the particular product type of the market."},"staticMidPrice":{"description":"Arithmetic average of the best static bid price and best static offer price.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"suppliedStake":{"description":"Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"targetStake":{"description":"Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds at which this mark price was relevant.","format":"int64","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaAuctionTrigger","description":"When a market is in an auction trading mode, this field indicates what triggered the auction."}},"title":"Represents data generated by a market when open","type":"object"},"vegaMarketDepth":{"properties":{"buy":{"description":"Collection of price levels for the buy side of the book.","items":{"$ref":"#/components/schemas/vegaPriceLevel"},"type":"array"},"marketId":{"description":"Market ID for which the depth levels apply.","type":"string"},"sell":{"description":"Collection of price levels for the sell side of the book.","items":{"$ref":"#/components/schemas/vegaPriceLevel"},"type":"array"},"sequenceNumber":{"description":"Sequence number for the market depth data returned.","format":"uint64","type":"string"}},"title":"Represents market depth or order book data for the specified market on Vega","type":"object"},"vegaMarketDepthUpdate":{"properties":{"buy":{"description":"Collection of updated price levels for the buy side of the book.","items":{"$ref":"#/components/schemas/vegaPriceLevel"},"type":"array"},"marketId":{"description":"Market ID for which the market depth updates are for.","type":"string"},"previousSequenceNumber":{"description":"Sequence number of the previous market depth update, for checking there are no gaps.","format":"uint64","type":"string"},"sell":{"description":"Collection of updated price levels for the sell side of the book.","items":{"$ref":"#/components/schemas/vegaPriceLevel"},"type":"array"},"sequenceNumber":{"description":"Sequence number for the market depth update data returned. It is increasing but not monotonic.","format":"uint64","type":"string"}},"title":"Represents the changed market depth since the last update","type":"object"},"vegaMarketState":{"default":"STATE_UNSPECIFIED","description":"- STATE_UNSPECIFIED: Default value, invalid\n - STATE_PROPOSED: Governance proposal valid and accepted\n - STATE_REJECTED: Outcome of governance votes is to reject the market\n - STATE_PENDING: Governance vote passes/wins\n - STATE_CANCELLED: Market triggers cancellation condition or governance\nvotes to close before market becomes Active\n - STATE_ACTIVE: Enactment date reached and usual auction exit checks pass\n - STATE_SUSPENDED: Price monitoring or liquidity monitoring trigger\n - STATE_CLOSED: Governance vote to close (Not currently implemented)\n - STATE_TRADING_TERMINATED: Defined by the product (i.e. from a product parameter,\nspecified in market definition, giving close date/time)\n - STATE_SETTLED: Settlement triggered and completed as defined by product\n - STATE_SUSPENDED_VIA_GOVERNANCE: Market has been suspended via governance","enum":["STATE_UNSPECIFIED","STATE_PROPOSED","STATE_REJECTED","STATE_PENDING","STATE_CANCELLED","STATE_ACTIVE","STATE_SUSPENDED","STATE_CLOSED","STATE_TRADING_TERMINATED","STATE_SETTLED","STATE_SUSPENDED_VIA_GOVERNANCE"],"title":"Current state of the market","type":"string"},"vegaMarketStateUpdateType":{"default":"MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","enum":["MARKET_STATE_UPDATE_TYPE_UNSPECIFIED","MARKET_STATE_UPDATE_TYPE_TERMINATE","MARKET_STATE_UPDATE_TYPE_SUSPEND","MARKET_STATE_UPDATE_TYPE_RESUME"],"title":"- MARKET_STATE_UPDATE_TYPE_UNSPECIFIED: Default value, always invalid\n - MARKET_STATE_UPDATE_TYPE_TERMINATE: Request to terminate a market via governance\n - MARKET_STATE_UPDATE_TYPE_SUSPEND: Request to suspend a market via governance\n - MARKET_STATE_UPDATE_TYPE_RESUME: Request to resume a market via governance","type":"string"},"vegaMarketTimestamps":{"properties":{"close":{"description":"Time when the market closed.","format":"int64","type":"string"},"open":{"description":"Time when the market has left the opening auction and is ready to accept trades.","format":"int64","type":"string"},"pending":{"description":"Time when the market has been voted in and began its opening auction.","format":"int64","type":"string"},"proposed":{"description":"Time when the market is first proposed.","format":"int64","type":"string"}},"title":"Time stamps for important times about creating, enacting etc the market","type":"object"},"vegaMetadata":{"description":"Generic structure holding a key/value pair.","properties":{"key":{"description":"Key of the metadata.","type":"string"},"value":{"description":"Value of the metadata.","type":"string"}},"type":"object"},"vegaNetworkLimits":{"properties":{"canProposeAsset":{"description":"Are asset proposals allowed at this point in time.","type":"boolean"},"canProposeMarket":{"description":"Are market proposals allowed at this point in time.","type":"boolean"},"canProposePerpetualMarket":{"description":"Are perpetual market proposals allowed at this point in time.","type":"boolean"},"canProposeSpotMarket":{"description":"Are spot market proposals allowed at this point in time.","type":"boolean"},"genesisLoaded":{"description":"True once the genesis file is loaded.","type":"boolean"},"proposeAssetEnabled":{"description":"Are asset proposals enabled on this chain.","type":"boolean"},"proposeAssetEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).","format":"int64","type":"string"},"proposeMarketEnabled":{"description":"Are market proposals enabled on this chain.","type":"boolean"},"proposeMarketEnabledFrom":{"description":"Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).","format":"int64","type":"string"}},"title":"Network limits, defined in the genesis file","type":"object"},"vegaNetworkParameter":{"properties":{"key":{"description":"Unique key of the network parameter.","type":"string"},"value":{"description":"Value for the network parameter.","type":"string"}},"title":"Represents a network parameter on Vega","type":"object"},"vegaNewAsset":{"properties":{"changes":{"$ref":"#/components/schemas/vegaAssetDetails","description":"Configuration of the new asset."}},"title":"New asset on Vega","type":"object"},"vegaNewFreeform":{"description":"Freeform proposal\nThis message is just used as a placeholder to sort out the nature of the\nproposal once parsed.","type":"object"},"vegaNewMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewMarketConfiguration","description":"Configuration of the new market."}},"title":"New market on Vega","type":"object"},"vegaNewMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new futures market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","description":"Liquidation strategy for this market."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional new futures market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"successor":{"$ref":"#/components/schemas/vegaSuccessorConfiguration","description":"Successor configuration. If this proposal is meant to succeed a given market, then this should be set."}},"title":"Configuration for a new futures market on Vega","type":"object"},"vegaNewSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewSpotMarketConfiguration","description":"Configuration of the new spot market."}},"title":"New spot market on Vega","type":"object"},"vegaNewSpotMarketConfiguration":{"properties":{"decimalPlaces":{"description":"Decimal places used for the new spot market, sets the smallest price increment on the book.","format":"uint64","type":"string"},"instrument":{"$ref":"#/components/schemas/vegaInstrumentConfiguration","description":"New spot market instrument configuration."},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional new spot market metadata, tags.","items":{"type":"string"},"type":"array"},"positionDecimalPlaces":{"description":"Decimal places for order sizes, sets what size the smallest order / position on the spot market can be.","format":"int64","type":"string"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration for a new spot market on Vega","type":"object"},"vegaNewTransfer":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNewTransferConfiguration","description":"Configuration for a new transfer."}},"title":"New governance transfer","type":"object"},"vegaNewTransferConfiguration":{"properties":{"amount":{"title":"Maximum amount to transfer","type":"string"},"asset":{"title":"ID of asset to transfer","type":"string"},"destination":{"title":"Specifies the account to transfer to, depending on the account type:\nNetwork treasury: leave empty\nParty: party's public key\nMarket insurance pool: market ID","type":"string"},"destinationType":{"$ref":"#/components/schemas/vegaAccountType","title":"Specifies the account type to transfer to: reward pool, party, network insurance pool, market insurance pool"},"fractionOfBalance":{"title":"Maximum fraction of the source account's balance to transfer as a decimal - i.e. 0.1 = 10% of the balance","type":"string"},"oneOff":{"$ref":"#/components/schemas/vegaOneOffTransfer"},"recurring":{"$ref":"#/components/schemas/vegaRecurringTransfer"},"source":{"title":"If network treasury, field is empty, otherwise uses the market ID","type":"string"},"sourceType":{"$ref":"#/components/schemas/vegaAccountType","title":"Source account type, such as network treasury, market insurance pool"},"transferType":{"$ref":"#/components/schemas/vegaGovernanceTransferType","title":"\"All or nothing\" or \"best effort\":\nAll or nothing: Transfers the specified amount or does not transfer anything\nBest effort: Transfers the specified amount or the max allowable amount if this is less than the specified amount"}},"type":"object"},"vegaNode":{"properties":{"avatarUrl":{"description":"Avatar url.","type":"string"},"delegations":{"description":"Node's delegations.","items":{"$ref":"#/components/schemas/vegaDelegation"},"type":"array"},"epochData":{"$ref":"#/components/schemas/vegaEpochData","description":"Information about epoch."},"ethereumAddress":{"description":"Ethereum public key of the node.","type":"string"},"id":{"description":"Node ID i.e. the node's wallet ID.","type":"string"},"infoUrl":{"description":"URL where users can find out more information on the node.","type":"string"},"location":{"description":"Country code for the location of the node.","type":"string"},"maxIntendedStake":{"description":"Max amount of (wanted) stake. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"name":{"description":"Node name.","type":"string"},"pendingStake":{"description":"Amount of stake on the next epoch. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"pubKey":{"description":"Public key of the node operator.","type":"string"},"rankingScore":{"$ref":"#/components/schemas/vegaRankingScore","description":"Node ranking information."},"rewardScore":{"$ref":"#/components/schemas/vegaRewardScore","description":"Node reward score."},"stakedByDelegates":{"description":"Amount of stake that has been delegated by token holders. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedByOperator":{"description":"Amount the node operator has put up themselves. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"stakedTotal":{"description":"Total amount staked on node. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"status":{"$ref":"#/components/schemas/vegaNodeStatus","description":"Node status."},"tmPubKey":{"description":"Public key of Tendermint.","type":"string"}},"type":"object"},"vegaNodeData":{"properties":{"ersatzNodes":{"$ref":"#/components/schemas/vegaNodeSet","description":"Details on the set of ersatz (standby) nodes in the network."},"inactiveNodes":{"description":"Total number of nodes that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"pendingNodes":{"$ref":"#/components/schemas/vegaNodeSet","description":"Details on the set of pending nodes in the network."},"stakedTotal":{"description":"Total staked amount across all nodes. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"tendermintNodes":{"$ref":"#/components/schemas/vegaNodeSet","description":"Details on the set of consensus nodes in the network."},"totalNodes":{"description":"Total number of nodes across all node sets.","format":"int64","type":"integer"},"uptime":{"description":"Total uptime for all epochs across all nodes.","format":"float","type":"number"}},"type":"object"},"vegaNodeSet":{"properties":{"demoted":{"description":"IDs of nodes that were demoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"inactive":{"description":"Number of nodes in the node set that had a performance score of 0 at the end of the last epoch.","format":"int64","type":"integer"},"maximum":{"description":"Total number of nodes allowed in the node set.","format":"int64","type":"integer"},"promoted":{"description":"IDs of nodes that were promoted into this node set at the start of the epoch.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of nodes in the node set.","format":"int64","type":"integer"}},"title":"Details on the collection of nodes for a particular validator status","type":"object"},"vegaNodeStatus":{"default":"NODE_STATUS_UNSPECIFIED","description":"- NODE_STATUS_VALIDATOR: Node is a validating node\n - NODE_STATUS_NON_VALIDATOR: Node is a non-validating node","enum":["NODE_STATUS_UNSPECIFIED","NODE_STATUS_VALIDATOR","NODE_STATUS_NON_VALIDATOR"],"title":"Node status type","type":"string"},"vegaNormaliser":{"properties":{"expression":{"type":"string"},"name":{"type":"string"}},"type":"object"},"vegaOneOffTransfer":{"properties":{"deliverOn":{"description":"Timestamp in Unix nanoseconds for when the transfer should be delivered into the receiver's account.","format":"int64","type":"string"}},"title":"Specific details for a one off transfer","type":"object"},"vegaOracleData":{"properties":{"externalData":{"$ref":"#/components/schemas/v1ExternalData"}},"type":"object"},"vegaOracleSpec":{"properties":{"externalDataSourceSpec":{"$ref":"#/components/schemas/vegaExternalDataSourceSpec"}},"title":"Oracle spec contains an embedded external data source spec.\nIt will be generated by the compiler as: OracleSpec_ExternalDataSourceSpec_*","type":"object"},"vegaOrder":{"properties":{"batchId":{"description":"Batch ID for the order, used internally for orders submitted during auctions\nto keep track of the auction batch this order falls under. Required for fees calculation.","format":"uint64","type":"string"},"createdAt":{"description":"Timestamp for when the order was created at, in nanoseconds.","format":"int64","type":"string"},"expiresAt":{"description":"Timestamp in Unix nanoseconds for when the order will expire.","format":"int64","type":"string"},"icebergOrder":{"$ref":"#/components/schemas/vegaIcebergOrder","title":"Details of an iceberg order"},"id":{"description":"Unique ID generated for the order.","type":"string"},"liquidityProvisionId":{"description":"Set if the order was created as part of a liquidity provision, will be empty if not.","type":"string"},"marketId":{"description":"Market ID for the order.","type":"string"},"partyId":{"description":"Party ID for the order.","type":"string"},"peggedOrder":{"$ref":"#/components/schemas/vegaPeggedOrder","description":"Pegged order details, used only if the order represents a pegged order."},"postOnly":{"description":"Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.","type":"boolean"},"price":{"description":"Price for the order, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"reason":{"$ref":"#/components/schemas/vegaOrderError","description":"Futher details for why an order with status `STATUS_REJECTED` was rejected."},"reduceOnly":{"description":"Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only.\nIf set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.","type":"boolean"},"reference":{"description":"Reference given for the order.","type":"string"},"remaining":{"description":"Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.","format":"uint64","type":"string"},"side":{"$ref":"#/components/schemas/vegaSide","description":"Side for the order, e.g. SIDE_BUY or SIDE_SELL."},"size":{"description":"Size for the order, for example, in a futures market the size equals the number of contracts.","format":"uint64","type":"string"},"status":{"$ref":"#/components/schemas/vegaOrderStatus","description":"Current status of the order."},"timeInForce":{"$ref":"#/components/schemas/OrderTimeInForce","title":"Time in force indicates how long an order will remain active before it is executed or expires.\n- See OrderTimeInForce"},"type":{"$ref":"#/components/schemas/vegaOrderType","description":"Type for the order."},"updatedAt":{"description":"Timestamp in Unix nanoseconds for when the order was last updated.","format":"int64","type":"string"},"version":{"description":"Version for the order, initial value is version 1 and is incremented after each successful amend.","format":"uint64","type":"string"}},"title":"Orders can be submitted, amended and cancelled on Vega in an attempt to make trades with other parties","type":"object"},"vegaOrderError":{"default":"ORDER_ERROR_UNSPECIFIED","description":"- ORDER_ERROR_UNSPECIFIED: Default value, no error reported\n - ORDER_ERROR_INVALID_MARKET_ID: Order was submitted for a market that does not exist\n - ORDER_ERROR_INVALID_ORDER_ID: Order was submitted with an invalid ID\n - ORDER_ERROR_OUT_OF_SEQUENCE: Order was amended with a sequence number that was not previous version + 1\n - ORDER_ERROR_INVALID_REMAINING_SIZE: Order was amended with an invalid remaining size (e.g. remaining greater than total size)\n - ORDER_ERROR_TIME_FAILURE: Node was unable to get Vega (blockchain) time\n - ORDER_ERROR_REMOVAL_FAILURE: Failed to remove an order from the book\n - ORDER_ERROR_INVALID_EXPIRATION_DATETIME: Order with `TimeInForce.TIME_IN_FORCE_GTT` was submitted or amended\nwith an expiration that was badly formatted or otherwise invalid\n - ORDER_ERROR_INVALID_ORDER_REFERENCE: Order was submitted or amended with an invalid reference field\n - ORDER_ERROR_EDIT_NOT_ALLOWED: Order amend was submitted for an order field that cannot not be amended (e.g. order ID)\n - ORDER_ERROR_AMEND_FAILURE: Amend failure because amend details do not match original order\n - ORDER_ERROR_NOT_FOUND: Order not found in an order book or store\n - ORDER_ERROR_INVALID_PARTY_ID: Order was submitted with an invalid or missing party ID\n - ORDER_ERROR_MARKET_CLOSED: Order was submitted for a market that has closed\n - ORDER_ERROR_MARGIN_CHECK_FAILED: Order was submitted, but the party did not have enough collateral to cover the order\n - ORDER_ERROR_MISSING_GENERAL_ACCOUNT: Order was submitted, but the party did not have an account for this asset\n - ORDER_ERROR_INTERNAL_ERROR: Unspecified internal error\n - ORDER_ERROR_INVALID_SIZE: Order was submitted with an invalid or missing size (e.g. 0)\n - ORDER_ERROR_INVALID_PERSISTENCE: Order was submitted with an invalid persistence for its type\n - ORDER_ERROR_INVALID_TYPE: Order was submitted with an invalid type field\n - ORDER_ERROR_SELF_TRADING: Order was stopped as it would have traded with another order submitted from the same party\n - ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES: Order was submitted, but the party did not have enough collateral to cover the fees for the order\n - ORDER_ERROR_INCORRECT_MARKET_TYPE: Order was submitted with an incorrect or invalid market type\n - ORDER_ERROR_INVALID_TIME_IN_FORCE: Order was submitted with invalid time in force\n - ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION: Good For Normal order has reached the market when it is in auction mode\n - ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING: Good For Auction order has reached the market when it is in continuous trading mode\n - ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT: Attempt to amend order to GTT without ExpiryAt\n - ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT: Attempt to amend ExpiryAt to a value before CreatedAt\n - ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT: Attempt to amend to GTC without an ExpiryAt value\n - ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC: Amending to FOK or IOC is invalid\n - ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN: Amending to GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN: Amending from GFA or GFN is invalid\n - ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION: IOC orders are not allowed during auction\n - ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION: FOK orders are not allowed during auction\n - ORDER_ERROR_MUST_BE_LIMIT_ORDER: Pegged orders must be LIMIT orders\n - ORDER_ERROR_MUST_BE_GTT_OR_GTC: Pegged orders can only have TIF GTC or GTT\n - ORDER_ERROR_WITHOUT_REFERENCE_PRICE: Pegged order must have a reference price\n - ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE: Buy pegged order cannot reference best ask price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO: Pegged order offset must be >= 0\n - ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE: Sell pegged order cannot reference best bid price\n - ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO: Pegged order offset must be > zero\n - ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE: Party has an insufficient balance, or does not have\na general account to submit the order (no deposits made\nfor the required asset)\n - ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER: Cannot amend details of a non pegged details\n - ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER: Could not re-price a pegged order because a market price is unavailable\n - ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER: It is not possible to amend the price of an existing pegged order\n - ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS: FOK, IOC, or GFN order was rejected because it resulted in trades outside the price bounds\n - ORDER_ERROR_TOO_MANY_PEGGED_ORDERS: Unable to submit pegged order, temporarily too many pegged orders across all markets\n - ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE: Post order would trade\n - ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION: Post order would trade\n - ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED: Isolated margin check failed\n - ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE: In isolated margin pegged orders are rejected","enum":["ORDER_ERROR_UNSPECIFIED","ORDER_ERROR_INVALID_MARKET_ID","ORDER_ERROR_INVALID_ORDER_ID","ORDER_ERROR_OUT_OF_SEQUENCE","ORDER_ERROR_INVALID_REMAINING_SIZE","ORDER_ERROR_TIME_FAILURE","ORDER_ERROR_REMOVAL_FAILURE","ORDER_ERROR_INVALID_EXPIRATION_DATETIME","ORDER_ERROR_INVALID_ORDER_REFERENCE","ORDER_ERROR_EDIT_NOT_ALLOWED","ORDER_ERROR_AMEND_FAILURE","ORDER_ERROR_NOT_FOUND","ORDER_ERROR_INVALID_PARTY_ID","ORDER_ERROR_MARKET_CLOSED","ORDER_ERROR_MARGIN_CHECK_FAILED","ORDER_ERROR_MISSING_GENERAL_ACCOUNT","ORDER_ERROR_INTERNAL_ERROR","ORDER_ERROR_INVALID_SIZE","ORDER_ERROR_INVALID_PERSISTENCE","ORDER_ERROR_INVALID_TYPE","ORDER_ERROR_SELF_TRADING","ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES","ORDER_ERROR_INCORRECT_MARKET_TYPE","ORDER_ERROR_INVALID_TIME_IN_FORCE","ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION","ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING","ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT","ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT","ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT","ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC","ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN","ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN","ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION","ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION","ORDER_ERROR_MUST_BE_LIMIT_ORDER","ORDER_ERROR_MUST_BE_GTT_OR_GTC","ORDER_ERROR_WITHOUT_REFERENCE_PRICE","ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO","ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE","ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO","ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE","ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER","ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER","ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS","ORDER_ERROR_TOO_MANY_PEGGED_ORDERS","ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE","ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION","ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED","ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE"],"title":"OrderError codes are returned in the Order.reason field - If there is an issue\nwith an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED`","type":"string"},"vegaOrderStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_ACTIVE: Used for active unfilled or partially filled orders\n - STATUS_EXPIRED: Used for expired GTT orders\n - STATUS_CANCELLED: Used for orders cancelled by the party that created the order\n - STATUS_STOPPED: Used for unfilled FOK or IOC orders, and for orders that were stopped by the network\n - STATUS_FILLED: Used for closed fully filled orders\n - STATUS_REJECTED: Used for orders when not enough collateral was available to fill the margin requirements\n - STATUS_PARTIALLY_FILLED: Used for closed partially filled IOC orders\n - STATUS_PARKED: Order has been removed from the order book and has been parked,\nthis applies to pegged orders and liquidity orders (orders created from a liquidity provision shape)","enum":["STATUS_UNSPECIFIED","STATUS_ACTIVE","STATUS_EXPIRED","STATUS_CANCELLED","STATUS_STOPPED","STATUS_FILLED","STATUS_REJECTED","STATUS_PARTIALLY_FILLED","STATUS_PARKED"],"title":"Status values for an order","type":"string"},"vegaOrderType":{"default":"TYPE_UNSPECIFIED","description":"- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_LIMIT: Used for Limit orders\n - TYPE_MARKET: Used for Market orders\n - TYPE_NETWORK: Used for orders where the initiating party is the network (with distressed parties)","enum":["TYPE_UNSPECIFIED","TYPE_LIMIT","TYPE_MARKET","TYPE_NETWORK"],"title":"Type values for an order","type":"string"},"vegaParty":{"properties":{"alias":{"description":"Alias given to the party.","type":"string"},"id":{"description":"Unique ID for the party, typically represented by a public key.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"}},"title":"Party represents an entity who wishes to trade on or query a Vega network","type":"object"},"vegaPartyProfile":{"description":"Holds metadata associated to a party.","properties":{"alias":{"description":"Alias given to the party.","type":"string"},"metadata":{"description":"Metadata to associate to a party, in a key/value format where the key\ndescribes the type of metadata in the value field.","items":{"$ref":"#/components/schemas/vegaMetadata"},"type":"array"},"partyId":{"description":"Party ID associated to the profile.","type":"string"}},"type":"object"},"vegaPeggedOrder":{"properties":{"offset":{"description":"Offset from the price reference.","type":"string"},"reference":{"$ref":"#/components/schemas/vegaPeggedReference","description":"Price point the order is linked to."}},"title":"Pegged orders are limit orders where the price is specified in the form REFERENCE +/- OFFSET\nThey can be used for any limit order that is valid during continuous trading","type":"object"},"vegaPeggedReference":{"default":"PEGGED_REFERENCE_UNSPECIFIED","description":"- PEGGED_REFERENCE_UNSPECIFIED: Default value for PeggedReference, no reference given\n - PEGGED_REFERENCE_MID: Mid price reference\n - PEGGED_REFERENCE_BEST_BID: Best bid price reference\n - PEGGED_REFERENCE_BEST_ASK: Best ask price reference","enum":["PEGGED_REFERENCE_UNSPECIFIED","PEGGED_REFERENCE_MID","PEGGED_REFERENCE_BEST_BID","PEGGED_REFERENCE_BEST_ASK"],"title":"Pegged reference defines which price point a pegged order is linked to - meaning\nthe price for a pegged order is calculated from the value of the reference price point","type":"string"},"vegaPerpetual":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceSpec","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfig":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Optional configuration for the index price used in funding payment calculation."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Quote name of the instrument.","type":"string"},"settlementAsset":{"description":"Underlying asset for the perpetual.","type":"string"}},"title":"Perpetual product definition","type":"object"},"vegaPerpetualData":{"description":"Represents market data specific to a perpetual market.","properties":{"externalTwap":{"description":"Time-weighted-average the external data points for the in-progress funding period.","type":"string"},"fundingPayment":{"description":"Current funding payment for the in-progress funding period.","type":"string"},"fundingRate":{"description":"Current funding rate for the in-progress funding period.","type":"string"},"indexPrice":{"description":"The index price used for perps.","type":"string"},"indexPriceType":{"$ref":"#/components/schemas/vegaCompositePriceType","description":"The method used for calculating the index price (perps only)."},"internalTwap":{"description":"Time-weighted-average the internal data-points for the in-progress funding period.","type":"string"},"nextIndexPriceCalc":{"description":"The next time the index price is calculated for perps.","format":"int64","type":"string"},"seqNum":{"format":"uint64","title":"Funding period sequence number","type":"string"},"startTime":{"format":"int64","title":"Funding period start time","type":"string"}},"type":"object"},"vegaPerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Composite price configuration to drive the calculation of the index price used for funding payments. If undefined the default mark price of the market is used."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Product quote name.","type":"string"},"settlementAsset":{"description":"Asset ID for the product's settlement asset.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaPosition":{"properties":{"averageEntryPrice":{"description":"Average entry price for the position, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"lossSocialisationAmount":{"description":"Sum of profit that could not be paid due to loss socialisation.","type":"string"},"marketId":{"description":"Market ID in which the position is held.","type":"string"},"openVolume":{"description":"Open volume for the position, value is signed +ve for long and -ve for short.","format":"int64","type":"string"},"partyId":{"description":"Party ID holding the position.","type":"string"},"positionStatus":{"$ref":"#/components/schemas/vegaPositionStatus","description":"Position status, indicating whether the party was distressed and had orders cancelled or was closed out."},"realisedPnl":{"description":"Realised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"unrealisedPnl":{"description":"Unrealised profit and loss for the position, value is signed +ve for long and -ve for short.\nThis field is a signed integer scaled to the market's decimal places.","type":"string"},"updatedAt":{"description":"Timestamp for the latest time the position was updated.","format":"int64","type":"string"}},"title":"Represents position data for a party on the specified market on Vega","type":"object"},"vegaPositionStatus":{"default":"POSITION_STATUS_UNSPECIFIED","enum":["POSITION_STATUS_UNSPECIFIED","POSITION_STATUS_ORDERS_CLOSED","POSITION_STATUS_CLOSED_OUT","POSITION_STATUS_DISTRESSED"],"title":"Represents the status of a position","type":"string"},"vegaPostTransferBalance":{"properties":{"account":{"$ref":"#/components/schemas/vegaAccountDetails","description":"Account relating to the transfer."},"balance":{"description":"Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"}},"title":"Represents the balance for an account during a transfer","type":"object"},"vegaPriceLevel":{"properties":{"numberOfOrders":{"description":"Number of orders at the price level.","format":"uint64","type":"string"},"price":{"description":"Price for the price level, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places. This field\nis an unsigned integer passed as a string and needs to be scaled using the market's decimal places.","type":"string"},"volume":{"description":"Volume at the price level.","format":"uint64","type":"string"}},"title":"Represents a price level from market depth or order book data","type":"object"},"vegaPriceMonitoringBounds":{"properties":{"maxValidPrice":{"description":"Maximum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"minValidPrice":{"description":"Minimum price that isn't currently breaching the specified price monitoring trigger.\nThis field is an unsigned integer scaled to the market's decimal places.","type":"string"},"referencePrice":{"description":"Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.","type":"string"},"trigger":{"$ref":"#/components/schemas/vegaPriceMonitoringTrigger","description":"Price monitoring trigger associated with the bounds."}},"title":"Represents a list of valid (at the current timestamp) price ranges per associated trigger","type":"object"},"vegaPriceMonitoringParameters":{"properties":{"triggers":{"items":{"$ref":"#/components/schemas/vegaPriceMonitoringTrigger"},"type":"array"}},"title":"PriceMonitoringParameters contains a collection of triggers to be used for a given market","type":"object"},"vegaPriceMonitoringSettings":{"properties":{"parameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Specifies price monitoring parameters to be used for price monitoring purposes."}},"title":"PriceMonitoringSettings contains the settings for price monitoring","type":"object"},"vegaPriceMonitoringTrigger":{"properties":{"auctionExtension":{"description":"Price monitoring auction extension duration in seconds should the price\nbreach its theoretical level over the specified horizon at the specified\nprobability level.","format":"int64","type":"string"},"horizon":{"description":"Price monitoring projection horizon τ in seconds.","format":"int64","type":"string"},"probability":{"description":"Price monitoring probability level p.","type":"string"}},"title":"PriceMonitoringTrigger holds together price projection horizon τ, probability level p, and auction extension duration","type":"object"},"vegaProductData":{"description":"Represents market data specific to a particular product type.","properties":{"perpetualData":{"$ref":"#/components/schemas/vegaPerpetualData"}},"type":"object"},"vegaProposal":{"properties":{"batchId":{"description":"ID of a batch proposal that this proposal is part of.","type":"string"},"batchTerms":{"$ref":"#/components/schemas/vegaBatchProposalTerms","description":"Batch proposal terms."},"errorDetails":{"description":"Detailed error associated to the reason.","type":"string"},"id":{"description":"Unique proposal ID.","type":"string"},"partyId":{"description":"Party ID i.e. public key of the party submitting the proposal.","type":"string"},"rationale":{"$ref":"#/components/schemas/vegaProposalRationale","description":"Rationale behind a proposal."},"reason":{"$ref":"#/components/schemas/vegaProposalError","description":"Reason for the current state of the proposal, this may be set in case of REJECTED and FAILED statuses."},"reference":{"description":"Proposal reference.","type":"string"},"requiredLiquidityProviderMajority":{"description":"Required majority from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredLiquidityProviderParticipation":{"description":"Required participation from liquidity providers, optional but is required for market update proposal.","type":"string"},"requiredMajority":{"description":"Required majority for this proposal.","type":"string"},"requiredParticipation":{"description":"Required vote participation for this proposal.","type":"string"},"state":{"$ref":"#/components/schemas/vegaProposalState","description":"Current state of the proposal, i.e. open, passed, failed etc."},"terms":{"$ref":"#/components/schemas/vegaProposalTerms","description":"Proposal configuration and the actual change that is meant to be executed when proposal is enacted.\nSingle proposal term."},"timestamp":{"description":"Proposal timestamp for date and time as Unix time in nanoseconds when proposal was submitted to the network.","format":"int64","type":"string"}},"title":"Governance proposal","type":"object"},"vegaProposalError":{"default":"PROPOSAL_ERROR_UNSPECIFIED","description":"- PROPOSAL_ERROR_UNSPECIFIED: Default value\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON: Specified close time is too early based on network parameters\n - PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE: Specified close time is too late based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_SOON: Specified enactment time is too early based on network parameters\n - PROPOSAL_ERROR_ENACT_TIME_TOO_LATE: Specified enactment time is too late based on network parameters\n - PROPOSAL_ERROR_INSUFFICIENT_TOKENS: Proposer for this proposal has insufficient tokens\n - PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY: Instrument quote name and base name were the same\n - PROPOSAL_ERROR_NO_PRODUCT: Proposal has no product\n - PROPOSAL_ERROR_UNSUPPORTED_PRODUCT: Specified product is not supported\n - PROPOSAL_ERROR_NO_TRADING_MODE: Proposal has no trading mode\n - PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE: Proposal has an unsupported trading mode\n - PROPOSAL_ERROR_NODE_VALIDATION_FAILED: Proposal failed node validation\n - PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD: Field is missing in a builtin asset source\n - PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS: Contract address is missing in the ERC20 asset source\n - PROPOSAL_ERROR_INVALID_ASSET: Asset ID is invalid or does not exist on the Vega network\n - PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS: Proposal terms timestamps are not compatible (Validation < Closing < Enactment)\n - PROPOSAL_ERROR_NO_RISK_PARAMETERS: No risk parameters were specified\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY: Invalid key in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE: Invalid value in update network parameter proposal\n - PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED: Validation failed for network parameter proposal\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL: Opening auction duration is less than the network minimum opening auction time\n - PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE: Opening auction duration is more than the network minimum opening auction time\n - PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET: Market proposal market could not be instantiated in execution\n - PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT: Market proposal market contained invalid product definition\n - PROPOSAL_ERROR_INVALID_RISK_PARAMETER: Market proposal has invalid risk parameter\n - PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED: Proposal was declined because vote didn't reach the majority threshold required\n - PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED: Proposal declined because the participation threshold was not reached\n - PROPOSAL_ERROR_INVALID_ASSET_DETAILS: Asset proposal has invalid asset details\n - PROPOSAL_ERROR_UNKNOWN_TYPE: Proposal is an unknown type\n - PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE: Proposal has an unknown risk parameter type\n - PROPOSAL_ERROR_INVALID_FREEFORM: Validation failed for freeform proposal\n - PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE: Party doesn't have enough equity-like share to propose an update on the market\ntargeted by the proposal\n - PROPOSAL_ERROR_INVALID_MARKET: Market targeted by the proposal does not exist or is not eligible for modification\n - PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES: Market proposal decimal place is higher than the market settlement asset decimal places\n - PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE: Market proposal contains too many price monitoring triggers\n - PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE: LP price range must be larger than 0\n - PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE: LP price range must not be larger than 100\n - PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE: Linear slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE: Quadratic slippage factor is out of range, either negative or too large\n - PROPOSAL_ERROR_INVALID_SPOT: Validation failed for spot proposal\n - PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED: Spot trading not enabled\n - PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET: Market proposal is invalid, either invalid insurance pool fraction, or it specifies a parent market that it can't succeed.\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED: Governance transfer proposal is invalid\n - PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID: Governance transfer proposal failed\n - PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID: Proposal for cancelling transfer is invalid, check proposal ID\n - PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE: Proposal for updating market state is invalid\n - PROPOSAL_ERROR_INVALID_SLA_PARAMS: Liquidity provision SLA parameters are invalid\n - PROPOSAL_ERROR_MISSING_SLA_PARAMS: Mandatory liquidity provision SLA parameters are missing\n - PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT: Perpetual market proposal contained invalid product definition\n - PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM: Referral program proposal is invalid\n - PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM: Volume discount program proposal is invalid\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED: One or more proposals in a batch has been rejected\n - PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED: One or more proposals in a batch has been declined","enum":["PROPOSAL_ERROR_UNSPECIFIED","PROPOSAL_ERROR_CLOSE_TIME_TOO_SOON","PROPOSAL_ERROR_CLOSE_TIME_TOO_LATE","PROPOSAL_ERROR_ENACT_TIME_TOO_SOON","PROPOSAL_ERROR_ENACT_TIME_TOO_LATE","PROPOSAL_ERROR_INSUFFICIENT_TOKENS","PROPOSAL_ERROR_INVALID_INSTRUMENT_SECURITY","PROPOSAL_ERROR_NO_PRODUCT","PROPOSAL_ERROR_UNSUPPORTED_PRODUCT","PROPOSAL_ERROR_NO_TRADING_MODE","PROPOSAL_ERROR_UNSUPPORTED_TRADING_MODE","PROPOSAL_ERROR_NODE_VALIDATION_FAILED","PROPOSAL_ERROR_MISSING_BUILTIN_ASSET_FIELD","PROPOSAL_ERROR_MISSING_ERC20_CONTRACT_ADDRESS","PROPOSAL_ERROR_INVALID_ASSET","PROPOSAL_ERROR_INCOMPATIBLE_TIMESTAMPS","PROPOSAL_ERROR_NO_RISK_PARAMETERS","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_KEY","PROPOSAL_ERROR_NETWORK_PARAMETER_INVALID_VALUE","PROPOSAL_ERROR_NETWORK_PARAMETER_VALIDATION_FAILED","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_SMALL","PROPOSAL_ERROR_OPENING_AUCTION_DURATION_TOO_LARGE","PROPOSAL_ERROR_COULD_NOT_INSTANTIATE_MARKET","PROPOSAL_ERROR_INVALID_FUTURE_PRODUCT","PROPOSAL_ERROR_INVALID_RISK_PARAMETER","PROPOSAL_ERROR_MAJORITY_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_PARTICIPATION_THRESHOLD_NOT_REACHED","PROPOSAL_ERROR_INVALID_ASSET_DETAILS","PROPOSAL_ERROR_UNKNOWN_TYPE","PROPOSAL_ERROR_UNKNOWN_RISK_PARAMETER_TYPE","PROPOSAL_ERROR_INVALID_FREEFORM","PROPOSAL_ERROR_INSUFFICIENT_EQUITY_LIKE_SHARE","PROPOSAL_ERROR_INVALID_MARKET","PROPOSAL_ERROR_TOO_MANY_MARKET_DECIMAL_PLACES","PROPOSAL_ERROR_TOO_MANY_PRICE_MONITORING_TRIGGERS","PROPOSAL_ERROR_ERC20_ADDRESS_ALREADY_IN_USE","PROPOSAL_ERROR_LP_PRICE_RANGE_NONPOSITIVE","PROPOSAL_ERROR_LP_PRICE_RANGE_TOO_LARGE","PROPOSAL_ERROR_LINEAR_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_QUADRATIC_SLIPPAGE_FACTOR_OUT_OF_RANGE","PROPOSAL_ERROR_INVALID_SPOT","PROPOSAL_ERROR_SPOT_PRODUCT_DISABLED","PROPOSAL_ERROR_INVALID_SUCCESSOR_MARKET","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_FAILED","PROPOSAL_ERROR_GOVERNANCE_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_GOVERNANCE_CANCEL_TRANSFER_PROPOSAL_INVALID","PROPOSAL_ERROR_INVALID_MARKET_STATE_UPDATE","PROPOSAL_ERROR_INVALID_SLA_PARAMS","PROPOSAL_ERROR_MISSING_SLA_PARAMS","PROPOSAL_ERROR_INVALID_PERPETUAL_PRODUCT","PROPOSAL_ERROR_INVALID_REFERRAL_PROGRAM","PROPOSAL_ERROR_INVALID_VOLUME_DISCOUNT_PROGRAM","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_REJECTED","PROPOSAL_ERROR_PROPOSAL_IN_BATCH_DECLINED"],"title":"List of possible errors that can cause a proposal to be in state rejected or failed","type":"string"},"vegaProposalParameters":{"properties":{"maxClose":{"description":"Represents the maximum time that a proposal can be open for voting.","format":"int64","type":"string"},"maxEnact":{"description":"Represents the maximum time before an enacted proposal must take effect.","format":"int64","type":"string"},"minClose":{"description":"Represents the minimum time before a proposal can be closed for voting.","format":"int64","type":"string"},"minEnact":{"description":"Represents the minimum time before an enacted proposal takes effect.","format":"int64","type":"string"},"minEquityLikeShare":{"description":"Specifies the minimum share that is akin to equity, which a participant must hold for their vote to be eligible.","type":"string"},"minProposerBalance":{"description":"Specifies the minimum governance token balance a proposer must hold to initiate a proposal.","type":"string"},"minVoterBalance":{"description":"Specifies the minimum governance token balance a voter must hold to participate in voting.","type":"string"},"requiredMajority":{"description":"Specifies the required percentage of votes a proposal needs to be approved.","type":"string"},"requiredMajorityLp":{"description":"Specifies the required majority percentage from liquidity providers for a proposal to be approved.","type":"string"},"requiredParticipation":{"description":"Specifies the required percentage of eligible participants that must partake in the proposal for it to be valid.","type":"string"},"requiredParticipationLp":{"description":"Specifies the required percentage of participation from liquidity providers for the proposal to be valid.","type":"string"}},"type":"object"},"vegaProposalRationale":{"description":"Rationale behind a proposal.","properties":{"description":{"description":"Description to show a short title / something in case the link goes offline.\nThis is to be between 0 and 20k unicode characters.\nThis is mandatory for all proposals.","type":"string"},"title":{"description":"Title to be used to give a short description of the proposal in lists.\nThis is to be between 0 and 100 unicode characters.\nThis is mandatory for all proposals.","type":"string"}},"type":"object"},"vegaProposalState":{"default":"STATE_UNSPECIFIED","description":"- STATE_UNSPECIFIED: Default value, always invalid\n - STATE_FAILED: Proposal enactment has failed - even though proposal has passed, its execution could not be performed\n - STATE_OPEN: Proposal is open for voting\n - STATE_PASSED: Proposal has gained enough support to be executed\n - STATE_REJECTED: Proposal wasn't accepted i.e. proposal terms failed validation due to wrong configuration or failed to meet network requirements.\n - STATE_DECLINED: Proposal didn't get enough votes, e.g. either failed to gain required participation or majority level.\n - STATE_ENACTED: Proposal enacted.\n - STATE_WAITING_FOR_NODE_VOTE: Waiting for node validation of the proposal","enum":["STATE_UNSPECIFIED","STATE_FAILED","STATE_OPEN","STATE_PASSED","STATE_REJECTED","STATE_DECLINED","STATE_ENACTED","STATE_WAITING_FOR_NODE_VOTE"],"title":"Proposal state transition:\nOpen ->\n - Passed -> Enacted.\n - Passed -> Failed.\n - Declined\nRejected\nProposal can enter Failed state from any other state","type":"string"},"vegaProposalTerms":{"properties":{"cancelTransfer":{"$ref":"#/components/schemas/vegaCancelTransfer","description":"Cancel a governance transfer."},"closingTimestamp":{"description":"Timestamp as Unix time in seconds when voting closes for this proposal,\nconstrained by `minClose` and `maxClose` network parameters.","format":"int64","type":"string"},"enactmentTimestamp":{"description":"Timestamp as Unix time in seconds when proposal gets enacted if passed,\nconstrained by `minEnact` and `maxEnact` network parameters.","format":"int64","type":"string"},"newAsset":{"$ref":"#/components/schemas/vegaNewAsset","description":"Proposal change for creating new assets on Vega."},"newFreeform":{"$ref":"#/components/schemas/vegaNewFreeform","description":"Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system,\nand can be used to gauge community sentiment."},"newMarket":{"$ref":"#/components/schemas/vegaNewMarket","description":"Proposal change for creating new futures market on Vega."},"newSpotMarket":{"$ref":"#/components/schemas/vegaNewSpotMarket","description":"Proposal change for creating new spot market on Vega."},"newTransfer":{"$ref":"#/components/schemas/vegaNewTransfer","description":"Proposal change for a governance transfer."},"updateAsset":{"$ref":"#/components/schemas/vegaUpdateAsset","description":"Proposal change for updating an asset."},"updateMarket":{"$ref":"#/components/schemas/vegaUpdateMarket","description":"Proposal change for modifying an existing futures market on Vega."},"updateMarketState":{"$ref":"#/components/schemas/vegaUpdateMarketState","description":"Proposal change for updating the state of a market."},"updateNetworkParameter":{"$ref":"#/components/schemas/vegaUpdateNetworkParameter","description":"Proposal change for updating Vega network parameters."},"updateReferralProgram":{"$ref":"#/components/schemas/vegaUpdateReferralProgram","description":"Proposal change for updating the referral program."},"updateSpotMarket":{"$ref":"#/components/schemas/vegaUpdateSpotMarket","description":"Proposal change for modifying an existing spot market on Vega."},"updateVolumeDiscountProgram":{"$ref":"#/components/schemas/vegaUpdateVolumeDiscountProgram","description":"Proposal change for updating the volume discount program."},"validationTimestamp":{"description":"Validation timestamp as Unix time in seconds.","format":"int64","type":"string"}},"title":"Terms for a governance proposal on Vega","type":"object"},"vegaRank":{"properties":{"shareRatio":{"format":"int64","type":"integer"},"startRank":{"format":"int64","type":"integer"}},"type":"object"},"vegaRankingScore":{"properties":{"performanceScore":{"description":"Performance based score.","type":"string"},"previousStatus":{"$ref":"#/components/schemas/vegaValidatorNodeStatus","description":"Status of the validator in the previous epoch."},"rankingScore":{"description":"Final score.","type":"string"},"stakeScore":{"description":"Stake based score - no anti-whaling.","type":"string"},"status":{"$ref":"#/components/schemas/vegaValidatorNodeStatus","description":"Status of the validator in the current epoch."},"votingPower":{"description":"Tendermint voting power of the validator.","format":"int64","type":"integer"}},"type":"object"},"vegaRecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy","description":"Optional parameter defining how a transfer is dispatched."},"endEpoch":{"description":"Last epoch at which this transfer shall be paid.","format":"uint64","type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"title":"Specific details for a recurring transfer","type":"object"},"vegaReferralProgram":{"properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"$ref":"#/components/schemas/vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix nanoseconds, after which when the current epoch ends,\nthe program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"stakingTiers":{"description":"Defined benefit tiers ordered by increasing reward multiplier. Determines the level of\nbenefit a party can expect based on their staking.","items":{"$ref":"#/components/schemas/vegaStakingTier"},"type":"array"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which the referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object"},"vegaReferralProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"stakingTiers":{"description":"Defined staking tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on their staking.","items":{"$ref":"#/components/schemas/vegaStakingTier"},"type":"array"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaReward":{"properties":{"amount":{"description":"Amount paid as a reward. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"epoch":{"description":"Epoch in which the reward is being paid.","format":"uint64","type":"string"},"gameId":{"description":"ID of the game the reward payment was made for if the payment was made for participation in a game.","type":"string"},"lockedUntilEpoch":{"description":"The epoch when the reward is being released.","format":"uint64","type":"string"},"marketId":{"description":"Market ID in which the reward is being paid.","type":"string"},"partyId":{"description":"Party ID to whom the reward is being paid.","type":"string"},"percentageOfTotal":{"description":"Percentage of total rewards paid in the epoch.","type":"string"},"quantumAmount":{"description":"Amount paid as a reward, expressed in asset's quantum unit.","type":"string"},"receivedAt":{"description":"Timestamp at which the reward was paid as Unix nano time.","format":"int64","type":"string"},"rewardType":{"description":"Type of reward being paid.","type":"string"},"teamId":{"description":"ID of the team the party is a member of, if the party is a member of a participating team,\nand the reward payment was made for participation in a game.\nThis field is currently only populated by the rewards API.","type":"string"}},"title":"Details for a single reward payment","type":"object"},"vegaRewardScore":{"properties":{"multisigScore":{"description":"Multisig score.","type":"string"},"normalisedScore":{"description":"Normalised validator score for rewards.","type":"string"},"performanceScore":{"description":"Performance based score.","type":"string"},"rawValidatorScore":{"description":"Stake based score - with anti-whaling.","type":"string"},"validatorScore":{"description":"Un-normalised score.","type":"string"},"validatorStatus":{"$ref":"#/components/schemas/vegaValidatorNodeStatus","description":"Status of the validator for reward."}},"type":"object"},"vegaRewardSummary":{"properties":{"amount":{"description":"Total amount of rewards paid in the asset. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"assetId":{"description":"Asset ID in which the reward is being paid.","type":"string"},"partyId":{"description":"Party ID to whom the reward is being paid.","type":"string"}},"title":"Details for rewards for a single asset","type":"object"},"vegaRiskFactor":{"properties":{"long":{"description":"Long Risk factor value.","type":"string"},"market":{"description":"Market ID that relates to this risk factor.","type":"string"},"short":{"description":"Short Risk factor value.","type":"string"}},"title":"Risk factors are used to calculate the current risk associated with orders trading on a given market","type":"object"},"vegaScalingFactors":{"properties":{"collateralRelease":{"description":"Collateral release level. If a trader has collateral above this level,\nthe system will release collateral to a trader's general collateral account\nfor the asset.","format":"double","type":"number"},"initialMargin":{"description":"Initial margin level. This is the minimum amount of collateral\nrequired to open a position in a market that requires margin.","format":"double","type":"number"},"searchLevel":{"description":"Collateral search level. If collateral dips below this value,\nthe system will search for collateral to release.","format":"double","type":"number"}},"title":"Scaling Factors (for use in margin calculation)","type":"object"},"vegaSide":{"default":"SIDE_UNSPECIFIED","description":"- SIDE_UNSPECIFIED: Default value, always invalid\n - SIDE_BUY: Buy order\n - SIDE_SELL: Sell order","enum":["SIDE_UNSPECIFIED","SIDE_BUY","SIDE_SELL"],"title":"Side relates to the direction of an order, to Buy, or Sell","type":"string"},"vegaSimpleModelParams":{"properties":{"factorLong":{"description":"Pre-defined risk factor value for long.","format":"double","type":"number"},"factorShort":{"description":"Pre-defined risk factor value for short.","format":"double","type":"number"},"maxMoveUp":{"description":"Pre-defined maximum price move up that the model considers as valid.","format":"double","type":"number"},"minMoveDown":{"description":"Pre-defined minimum price move down that the model considers as valid.","format":"double","type":"number"},"probabilityOfTrading":{"description":"Pre-defined constant probability of trading.","format":"double","type":"number"}},"title":"Risk model parameters for simple modelling","type":"object"},"vegaSimpleRiskModel":{"properties":{"params":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Risk model params for simple modelling."}},"title":"Risk model for simple modelling","type":"object"},"vegaSpecBindingForCompositePrice":{"description":"Describes which property of the data source data is to be\nused for price source.","properties":{"priceSourceProperty":{"description":"The property name of price.","type":"string"}},"type":"object"},"vegaSpot":{"properties":{"baseAsset":{"description":"Asset ID of the underlying base asset for the spot product.","type":"string"},"name":{"description":"Name of the instrument.","type":"string"},"quoteAsset":{"description":"Asset ID of the underlying quote asset for the spot product.","type":"string"}},"title":"Spot product definition","type":"object"},"vegaSpotProduct":{"properties":{"baseAsset":{"description":"Base asset ID.","type":"string"},"name":{"description":"Product name.","type":"string"},"quoteAsset":{"description":"Quote asset ID.","type":"string"}},"title":"Spot product configuration","type":"object"},"vegaStakingTier":{"properties":{"minimumStakedTokens":{"description":"Required number of governance tokens ($VEGA) a referrer must have staked to\nreceive the multiplier.","type":"string"},"referralRewardMultiplier":{"description":"Multiplier applied to the referral reward factor when calculating referral\nrewards due to the referrer.","type":"string"}},"type":"object"},"vegaStopOrder":{"properties":{"createdAt":{"description":"Creation time of the stop order.","format":"int64","type":"string"},"expiresAt":{"description":"Optional expiry timestamp.","format":"int64","type":"string"},"expiryStrategy":{"$ref":"#/components/schemas/StopOrderExpiryStrategy","description":"Strategy to adopt if the expiry time is reached."},"id":{"title":"ID of this stop order\nalso the ID of the associated order if it is ever triggered","type":"string"},"marketId":{"description":"ID of the market the stop order is submitted to.","type":"string"},"ocoLinkId":{"title":"The ID of the 'other' part of the OCO if 2 stop orders were submitted at once","type":"string"},"orderId":{"description":"ID of the order created once the trigger is hit.","type":"string"},"partyId":{"description":"ID of the party that submitted this stop order.","type":"string"},"price":{"description":"Fixed price at which the order will be submitted.","type":"string"},"rejectionReason":{"$ref":"#/components/schemas/StopOrderRejectionReason","title":"An optional reason for why a stop order was rejected"},"sizeOverrideSetting":{"$ref":"#/components/schemas/StopOrderSizeOverrideSetting","title":"Size override setting"},"sizeOverrideValue":{"$ref":"#/components/schemas/StopOrderSizeOverrideValue","title":"Size override value"},"status":{"$ref":"#/components/schemas/vegaStopOrderStatus","description":"Status of the stop order."},"trailingPercentOffset":{"title":"Trailing percentage at which the order will be submitted.\nThis should be expressed as a decimal value between 0 and 1, e.g. 0.01 for 1%","type":"string"},"triggerDirection":{"$ref":"#/components/schemas/StopOrderTriggerDirection","description":"Trigger direction for this stop order."},"updatedAt":{"description":"Last update of this stop order.","format":"int64","type":"string"}},"type":"object"},"vegaStopOrderStatus":{"default":"STATUS_UNSPECIFIED","enum":["STATUS_UNSPECIFIED","STATUS_PENDING","STATUS_CANCELLED","STATUS_STOPPED","STATUS_TRIGGERED","STATUS_EXPIRED","STATUS_REJECTED"],"title":"- STATUS_UNSPECIFIED: Never valid\n - STATUS_PENDING: Pending to be executed once the trigger is breached\n - STATUS_CANCELLED: Cancelled by the user\n - STATUS_STOPPED: Stopped by the network, e.g: OCO on the other side has been triggered\n - STATUS_TRIGGERED: Stop order has been triggered and generated an order\n - STATUS_EXPIRED: Stop order has expired\n - STATUS_REJECTED: Stop order was rejected at submission","type":"string"},"vegaSuccessorConfiguration":{"description":"Configuration required to turn a new market proposal in to a successor market proposal.","properties":{"insurancePoolFraction":{"description":"A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.","type":"string"},"parentMarketId":{"description":"ID of the market that the successor should take over from.","type":"string"}},"type":"object"},"vegaTargetStakeParameters":{"properties":{"scalingFactor":{"description":"Specifies scaling factors used in target stake calculation.","format":"double","type":"number"},"timeWindow":{"description":"Specifies length of time window expressed in seconds for target stake calculation.","format":"int64","type":"string"}},"title":"TargetStakeParameters contains parameters used in target stake calculation","type":"object"},"vegaTradableInstrument":{"properties":{"instrument":{"$ref":"#/components/schemas/vegaInstrument","description":"Details for the underlying instrument."},"logNormalRiskModel":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal."},"marginCalculator":{"$ref":"#/components/schemas/vegaMarginCalculator","description":"Margin calculator for the instrument."},"simpleRiskModel":{"$ref":"#/components/schemas/vegaSimpleRiskModel","description":"Simple."}},"title":"Tradable Instrument definition","type":"object"},"vegaTrade":{"properties":{"aggressor":{"$ref":"#/components/schemas/vegaSide","description":"Direction of the aggressive party e.g. SIDE_BUY or SIDE_SELL."},"assetPrice":{"description":"Price for the trade using asset decimals, as opposed to market decimals used\nin the price field. This is only used in trade events for position updates.","type":"string"},"buyOrder":{"description":"Identifier of the order from the buy side.","type":"string"},"buyer":{"description":"Unique party ID for the buyer.","type":"string"},"buyerAuctionBatch":{"description":"Auction batch number that the buy side order was placed in.","format":"uint64","type":"string"},"buyerFee":{"$ref":"#/components/schemas/vegaFee","description":"Fee amount charged to the buyer party for the trade."},"id":{"description":"Unique ID for the trade.","type":"string"},"marketId":{"description":"Market ID on which the trade occurred.","type":"string"},"price":{"description":"Price for the trade, the price is an integer, for example `123456` is a correctly\nformatted price of `1.23456` assuming market configured to 5 decimal places.","type":"string"},"sellOrder":{"description":"Identifier of the order from the sell side.","type":"string"},"seller":{"description":"Unique party ID for the seller.","type":"string"},"sellerAuctionBatch":{"description":"Auction batch number that the sell side order was placed in.","format":"uint64","type":"string"},"sellerFee":{"$ref":"#/components/schemas/vegaFee","description":"Fee amount charged to the seller party for the trade."},"size":{"description":"Size filled for the trade.","format":"uint64","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds for when the trade occurred.","format":"int64","type":"string"},"type":{"$ref":"#/components/schemas/vegaTradeType","description":"Type for the trade."}},"title":"A trade occurs when an aggressive order crosses one or more passive orders on the order book for a market on Vega","type":"object"},"vegaTradeType":{"default":"TYPE_UNSPECIFIED","description":"- TYPE_UNSPECIFIED: Default value, always invalid\n - TYPE_DEFAULT: Normal trading between two parties\n - TYPE_NETWORK_CLOSE_OUT_GOOD: Trading initiated by the network with another party on the book,\nwhich helps to zero-out the positions of one or more distressed parties\n - TYPE_NETWORK_CLOSE_OUT_BAD: Trading initiated by the network with another party off the book,\nwith a distressed party in order to zero-out the position of the party","enum":["TYPE_UNSPECIFIED","TYPE_DEFAULT","TYPE_NETWORK_CLOSE_OUT_GOOD","TYPE_NETWORK_CLOSE_OUT_BAD"],"title":"Type values for a trade","type":"string"},"vegaTransferType":{"default":"TRANSFER_TYPE_UNSPECIFIED","description":"- TRANSFER_TYPE_UNSPECIFIED: Default value, always invalid\n - TRANSFER_TYPE_LOSS: Funds deducted after final settlement loss\n - TRANSFER_TYPE_WIN: Funds added to general account after final settlement gain\n - TRANSFER_TYPE_MTM_LOSS: Funds deducted from margin account after mark to market loss\n - TRANSFER_TYPE_MTM_WIN: Funds added to margin account after mark to market gain\n - TRANSFER_TYPE_MARGIN_LOW: Funds transferred from general account to meet margin requirement\n - TRANSFER_TYPE_MARGIN_HIGH: Excess margin amount returned to general account\n - TRANSFER_TYPE_MARGIN_CONFISCATED: Margin confiscated from margin account to fulfil closeout\n - TRANSFER_TYPE_MAKER_FEE_PAY: Maker fee paid from general account\n - TRANSFER_TYPE_MAKER_FEE_RECEIVE: Maker fee received into general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY: Infrastructure fee paid from general account\n - TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE: Infrastructure fee received into general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_PAY: Liquidity fee paid from general account\n - TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE: Liquidity fee received into general account\n - TRANSFER_TYPE_BOND_LOW: Bond account funded from general account to meet required bond amount\n - TRANSFER_TYPE_BOND_HIGH: Bond returned to general account after liquidity commitment was reduced\n - TRANSFER_TYPE_WITHDRAW: Funds withdrawn from general account\n - TRANSFER_TYPE_DEPOSIT: Funds deposited to general account\n - TRANSFER_TYPE_BOND_SLASHING: Bond account penalised when liquidity commitment not met\n - TRANSFER_TYPE_REWARD_PAYOUT: Reward payout received\n - TRANSFER_TYPE_TRANSFER_FUNDS_SEND: Internal Vega network instruction for the collateral engine to move funds from a user's general account into the pending transfers pool\n - TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE: Internal Vega network instruction for the collateral engine to move funds from the pending transfers pool account into the destination account\n - TRANSFER_TYPE_CLEAR_ACCOUNT: Market-related accounts emptied because market has closed\n - TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE: Balances restored after network restart\n - TRANSFER_TYPE_SPOT: Spot trade delivery\n - TRANSFER_TYPE_HOLDING_LOCK: An internal instruction to transfer a quantity corresponding to an active spot order from a general account into a party holding account.\n - TRANSFER_TYPE_HOLDING_RELEASE: An internal instruction to transfer an excess quantity corresponding to an active spot order from a holding account into a party general account.\n - TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION: Insurance pool fraction transfer from parent to successor market.\n - TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE: Allocates liquidity fee earnings to each liquidity provider's network controlled liquidity fee account.\n - TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE: Distributes net fee earnings from liquidity provider's fee account to their general account.\n - TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY: Applies SLA penalty by moving funds from party's bond account to market's insurance pool.\n - TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY: Applies SLA penalty by moving funds from the liquidity provider's fee account to market insurance pool.\n - TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT: Collects penalties from the liquidity provider's fee account before the fee revenue is paid, and transfers it to the market's bonus distribution account.\n - TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE: Distributes performance bonus from market bonus to liquidity provider's general account.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS: Funds deducted from margin account after a perpetuals funding loss.\n - TRANSFER_TYPE_PERPETUALS_FUNDING_WIN: Funds added to margin account after a perpetuals funding gain.\n - TRANSFER_TYPE_REWARDS_VESTED: Funds moved from the vesting account to the vested account once the vesting period is reached.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY: Fee referrer reward paid from general account.\n - TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE: Fee referrer reward received into general account of the referrer.\n - TRANSFER_TYPE_ORDER_MARGIN_LOW: Funds transferred from general account to meet order margin requirement in isolated margin mode.\n - TRANSFER_TYPE_ORDER_MARGIN_HIGH: Excess order margin amount returned to general account.\n - TRANSFER_TYPE_ISOLATED_MARGIN_LOW: Transfer from order margin account to margin account due to increase of position.\n - TRANSFER_TYPE_ISOLATED_MARGIN_HIGH: Transfer from excess order margin account to general account.","enum":["TRANSFER_TYPE_UNSPECIFIED","TRANSFER_TYPE_LOSS","TRANSFER_TYPE_WIN","TRANSFER_TYPE_MTM_LOSS","TRANSFER_TYPE_MTM_WIN","TRANSFER_TYPE_MARGIN_LOW","TRANSFER_TYPE_MARGIN_HIGH","TRANSFER_TYPE_MARGIN_CONFISCATED","TRANSFER_TYPE_MAKER_FEE_PAY","TRANSFER_TYPE_MAKER_FEE_RECEIVE","TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY","TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE","TRANSFER_TYPE_LIQUIDITY_FEE_PAY","TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE","TRANSFER_TYPE_BOND_LOW","TRANSFER_TYPE_BOND_HIGH","TRANSFER_TYPE_WITHDRAW","TRANSFER_TYPE_DEPOSIT","TRANSFER_TYPE_BOND_SLASHING","TRANSFER_TYPE_REWARD_PAYOUT","TRANSFER_TYPE_TRANSFER_FUNDS_SEND","TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE","TRANSFER_TYPE_CLEAR_ACCOUNT","TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE","TRANSFER_TYPE_SPOT","TRANSFER_TYPE_HOLDING_LOCK","TRANSFER_TYPE_HOLDING_RELEASE","TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION","TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE","TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE","TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY","TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY","TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT","TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE","TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS","TRANSFER_TYPE_PERPETUALS_FUNDING_WIN","TRANSFER_TYPE_REWARDS_VESTED","TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY","TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE","TRANSFER_TYPE_ORDER_MARGIN_LOW","TRANSFER_TYPE_ORDER_MARGIN_HIGH","TRANSFER_TYPE_ISOLATED_MARGIN_LOW","TRANSFER_TYPE_ISOLATED_MARGIN_HIGH"],"title":"Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place","type":"string"},"vegaUpdateAsset":{"properties":{"assetId":{"description":"Asset ID the update is for.","type":"string"},"changes":{"$ref":"#/components/schemas/vegaAssetDetailsUpdate","description":"Changes to apply on an existing asset."}},"title":"Update an existing asset on Vega","type":"object"},"vegaUpdateFutureProduct":{"properties":{"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToFutureBinding","description":"The binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data of settlement data."},"dataSourceSpecForTradingTermination":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"The data source spec describing the data source for trading termination."},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Future product configuration","type":"object"},"vegaUpdateInstrumentConfiguration":{"properties":{"code":{"description":"Instrument code, human-readable shortcode used to describe the instrument.","type":"string"},"future":{"$ref":"#/components/schemas/vegaUpdateFutureProduct","description":"Future."},"name":{"title":"Instrument name","type":"string"},"perpetual":{"$ref":"#/components/schemas/vegaUpdatePerpetualProduct","description":"Perpetual."}},"title":"Instrument configuration","type":"object"},"vegaUpdateMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketConfiguration","description":"Updated configuration of the futures market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing market on Vega","type":"object"},"vegaUpdateMarketConfiguration":{"properties":{"instrument":{"$ref":"#/components/schemas/vegaUpdateInstrumentConfiguration","description":"Updated futures market instrument configuration."},"linearSlippageFactor":{"description":"Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.","type":"string"},"liquidationStrategy":{"$ref":"#/components/schemas/vegaLiquidationStrategy","title":"Liquidation strategy parameters"},"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"liquidityMonitoringParameters":{"$ref":"#/components/schemas/vegaLiquidityMonitoringParameters","description":"Liquidity monitoring parameters."},"liquiditySlaParameters":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","title":"Liquidity SLA parameters"},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"lpPriceRange":{"description":"DEPRECATED: Use liquidity SLA parameters instead.\nPercentage move up and down from the mid price which specifies the range of\nprice levels over which automated liquidity provisions will be deployed.","type":"string"},"markPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Mark price configuration."},"metadata":{"description":"Optional futures market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"quadraticSlippageFactor":{"description":"Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.","type":"string"},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."}},"title":"Configuration to update a futures market on Vega","type":"object"},"vegaUpdateMarketState":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateMarketStateConfiguration","title":"Configuration for governance-initiated change of a market's state"}},"type":"object"},"vegaUpdateMarketStateConfiguration":{"properties":{"marketId":{"title":"ID of the market","type":"string"},"price":{"title":"Settlement price, relevant only for market termination for futures markets","type":"string"},"updateType":{"$ref":"#/components/schemas/vegaMarketStateUpdateType","title":"Type of the market update"}},"type":"object"},"vegaUpdateNetworkParameter":{"properties":{"changes":{"$ref":"#/components/schemas/vegaNetworkParameter","description":"The network parameter to update."}},"title":"Update network configuration on Vega","type":"object"},"vegaUpdatePerpetualProduct":{"properties":{"clampLowerBound":{"description":"Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"clampUpperBound":{"description":"Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].","type":"string"},"dataSourceSpecBinding":{"$ref":"#/components/schemas/vegaDataSourceSpecToPerpetualBinding","description":"Binding between the data source spec and the settlement data."},"dataSourceSpecForSettlementData":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement."},"dataSourceSpecForSettlementSchedule":{"$ref":"#/components/schemas/vegaDataSourceDefinition","description":"Data source spec describing the data source for settlement schedule."},"fundingRateLowerBound":{"description":"Lower bound for the funding-rate such that the funding-rate will never be lower than this value.","type":"string"},"fundingRateScalingFactor":{"description":"Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.","type":"string"},"fundingRateUpperBound":{"description":"Upper bound for the funding-rate such that the funding-rate will never be higher than this value.","type":"string"},"indexPriceConfiguration":{"$ref":"#/components/schemas/vegaCompositePriceConfiguration","description":"Configuration for the index price used in funding payment calculation."},"interestRate":{"description":"Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].","type":"string"},"marginFundingFactor":{"description":"Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].","type":"string"},"quoteName":{"description":"Human-readable name/abbreviation of the quote name.","type":"string"}},"title":"Perpetual product configuration","type":"object"},"vegaUpdateReferralProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaReferralProgramChanges","description":"Configuration for change to update a referral program."}},"type":"object"},"vegaUpdateSpotMarket":{"properties":{"changes":{"$ref":"#/components/schemas/vegaUpdateSpotMarketConfiguration","description":"Updated configuration of the spot market."},"marketId":{"description":"Market ID the update is for.","type":"string"}},"title":"Update an existing spot market on Vega","type":"object"},"vegaUpdateSpotMarketConfiguration":{"properties":{"liquidityFeeSettings":{"$ref":"#/components/schemas/vegaLiquidityFeeSettings","description":"Specifies how the liquidity fee for the market will be calculated."},"logNormal":{"$ref":"#/components/schemas/vegaLogNormalRiskModel","description":"Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected."},"metadata":{"description":"Optional spot market metadata, tags.","items":{"type":"string"},"type":"array"},"priceMonitoringParameters":{"$ref":"#/components/schemas/vegaPriceMonitoringParameters","description":"Price monitoring parameters."},"simple":{"$ref":"#/components/schemas/vegaSimpleModelParams","description":"Simple risk model parameters, valid only if MODEL_SIMPLE is selected."},"slaParams":{"$ref":"#/components/schemas/vegaLiquiditySLAParameters","description":"Specifies the liquidity provision SLA parameters."},"targetStakeParameters":{"$ref":"#/components/schemas/vegaTargetStakeParameters","description":"Specifies parameters related to target stake calculation."}},"title":"Configuration to update a spot market on Vega","type":"object"},"vegaUpdateVolumeDiscountProgram":{"properties":{"changes":{"$ref":"#/components/schemas/vegaVolumeDiscountProgramChanges","title":"Configuration for a change to update a volume discount program"}},"type":"object"},"vegaValidatorNodeStatus":{"default":"VALIDATOR_NODE_STATUS_UNSPECIFIED","description":"- VALIDATOR_NODE_STATUS_TENDERMINT: Node is a tendermint validator\n - VALIDATOR_NODE_STATUS_ERSATZ: Node is an ersatz validator\n - VALIDATOR_NODE_STATUS_PENDING: Node is a pending validator","enum":["VALIDATOR_NODE_STATUS_UNSPECIFIED","VALIDATOR_NODE_STATUS_TENDERMINT","VALIDATOR_NODE_STATUS_ERSATZ","VALIDATOR_NODE_STATUS_PENDING"],"title":"Validation status of the node","type":"string"},"vegaVolumeBenefitTier":{"properties":{"minimumRunningNotionalTakerVolume":{"description":"Required running notional taker volume in quantum units for parties\nto access this tier.","type":"string"},"volumeDiscountFactor":{"description":"Proportion of the taker fees to be discounted.","type":"string"}},"type":"object"},"vegaVolumeDiscountProgram":{"properties":{"benefitTiers":{"description":"Defined benefit tiers ordered by increasing discounts.","items":{"$ref":"#/components/schemas/vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp in Unix seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"id":{"description":"Unique ID generated from the proposal that created this program.","type":"string"},"version":{"description":"Incremental version of the program. It is incremented after each program\nupdate.","format":"uint64","type":"string"},"windowLength":{"description":"Number of epochs over which a referral set's running volume is evaluated.","format":"uint64","type":"string"}},"type":"object"},"vegaVolumeDiscountProgramChanges":{"properties":{"benefitTiers":{"description":"Defined benefit tiers in increasing order. First element will give Tier 1,\nsecond element will give Tier 2, and so on. Determines the level of\nbenefit a party can expect based on performance criteria.","items":{"$ref":"#/components/schemas/vegaVolumeBenefitTier"},"type":"array"},"endOfProgramTimestamp":{"description":"Timestamp as Unix time in seconds, after which when the current epoch\nends, the program will end and benefits will be disabled.","format":"int64","type":"string"},"windowLength":{"description":"Number of epochs over which to evaluate a referral set's running volume.","format":"uint64","type":"string"}},"type":"object"},"vegaVote":{"properties":{"partyId":{"description":"Voter's party ID.","type":"string"},"perMarketEquityLikeShareWeight":{"additionalProperties":{"type":"string"},"description":"The per market weight of the vote compared to the total amount of equity-like share on the market.. It is only populated if the vote is for a batch type proposal.","type":"object"},"proposalId":{"description":"Proposal ID being voted on.","type":"string"},"timestamp":{"description":"Timestamp in Unix nanoseconds when the vote was acknowledged by the network.","format":"int64","type":"string"},"totalEquityLikeShareWeight":{"description":"The weight of the vote compared to the total amount of equity-like share on the market. It is only populated if the vote is for a single type proposal.","type":"string"},"totalGovernanceTokenBalance":{"description":"Total number of governance token for the party that cast the vote.","type":"string"},"totalGovernanceTokenWeight":{"description":"The weight of this vote based on the total number of governance tokens.","type":"string"},"value":{"$ref":"#/components/schemas/vegaVoteValue","description":"Which way the party voted."}},"title":"Governance vote","type":"object"},"vegaVoteValue":{"default":"VALUE_UNSPECIFIED","description":"- VALUE_UNSPECIFIED: Default value, always invalid\n - VALUE_NO: Vote against the proposal\n - VALUE_YES: Vote in favour of the proposal","enum":["VALUE_UNSPECIFIED","VALUE_NO","VALUE_YES"],"title":"Vote value","type":"string"},"vegaWithdrawExt":{"properties":{"erc20":{"$ref":"#/components/schemas/vegaErc20WithdrawExt","description":"ERC20 withdrawal details."}},"title":"Withdrawal external details","type":"object"},"vegaWithdrawal":{"properties":{"amount":{"description":"Amount to be withdrawn. This field is an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset to withdraw funds from.","type":"string"},"createdTimestamp":{"description":"Timestamp for when the network started to process this withdrawal.","format":"int64","type":"string"},"ext":{"$ref":"#/components/schemas/vegaWithdrawExt","description":"Foreign chain specifics."},"id":{"description":"Unique ID for the withdrawal.","type":"string"},"partyId":{"description":"Unique party ID of the user initiating the withdrawal.","type":"string"},"ref":{"description":"Reference which is used by the foreign chain\nto refer to this withdrawal.","type":"string"},"status":{"$ref":"#/components/schemas/vegaWithdrawalStatus","description":"Status of the withdrawal."},"txHash":{"description":"Hash of the foreign chain for this transaction.","type":"string"},"withdrawnTimestamp":{"description":"Timestamp for when the withdrawal was finalised by the network.","format":"int64","type":"string"}},"title":"Withdrawal from the Vega network","type":"object"},"vegaWithdrawalStatus":{"default":"STATUS_UNSPECIFIED","description":"- STATUS_UNSPECIFIED: Default value, always invalid\n - STATUS_OPEN: Withdrawal is open and being processed by the network\n - STATUS_REJECTED: Withdrawal have been cancelled\n - STATUS_FINALIZED: Withdrawal went through and is fully finalised, the funds are removed from the\nVega network and are unlocked on the foreign chain bridge, for example, on the Ethereum network","enum":["STATUS_UNSPECIFIED","STATUS_OPEN","STATUS_REJECTED","STATUS_FINALIZED"],"title":"Status of the withdrawal","type":"string"},"vegacommandsv1OneOffTransfer":{"description":"Details for a one-off transfer.","properties":{"deliverOn":{"description":"Timestamp, in Unix nanoseconds, for when the transfer should be executed, i.e., assets transferred into the receiver's account.","format":"int64","type":"string"}},"type":"object"},"vegacommandsv1RecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy","description":"Optional parameter defining how a transfer is dispatched."},"endEpoch":{"description":"Last epoch at which this transfer shall be executed.","format":"uint64","type":"string"},"factor":{"description":"Factor that the initial transfer amount is multiplied by for each epoch that it is executed.\nFor example if the initial transfer amount is 1000 and the factor is 0.5, then the amounts transferred per epoch will be 1000, 500, 250, 125, etc.","type":"string"},"startEpoch":{"description":"First epoch from which this transfer shall be executed.","format":"uint64","type":"string"}},"title":"Details for a recurring transfer","type":"object"},"vegacommandsv1Transfer":{"properties":{"amount":{"description":"Amount to be taken from the source account, as an unsigned integer scaled to the asset's decimal places.","type":"string"},"asset":{"description":"Asset ID of the asset to be transferred.","type":"string"},"fromAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Account type from which the funds of the party should be taken."},"oneOff":{"$ref":"#/components/schemas/vegacommandsv1OneOffTransfer","description":"Details of a one-off transfer that is executed once at a specified time."},"recurring":{"$ref":"#/components/schemas/vegacommandsv1RecurringTransfer","description":"Details of a transfer that is executed once every epoch until stopped."},"reference":{"description":"Reference to be attached to the transfer.","type":"string"},"to":{"description":"Public key of the destination account.","type":"string"},"toAccountType":{"$ref":"#/components/schemas/vegaAccountType","description":"Type of the destination account."}},"title":"Command that allows a party to move assets from one account to another.\nA transfer can be set up as a single one-off transfer, or a recurring transfer that occurs once at the start of each epoch.\nEach transfer incurs a fee as specified by the network parameter `transfer.fee.factor`","type":"object"},"vegaeventsv1OneOffTransfer":{"properties":{"deliverOn":{"format":"int64","type":"string"}},"type":"object"},"vegaeventsv1RecurringTransfer":{"properties":{"dispatchStrategy":{"$ref":"#/components/schemas/vegaDispatchStrategy"},"endEpoch":{"format":"uint64","type":"string"},"factor":{"type":"string"},"startEpoch":{"format":"uint64","type":"string"}},"type":"object"},"vegaeventsv1Transfer":{"properties":{"amount":{"type":"string"},"asset":{"type":"string"},"from":{"type":"string"},"fromAccountType":{"$ref":"#/components/schemas/vegaAccountType"},"gameId":{"title":"ID of the game this transfer was made in relation to. A transfer is made to members of a team\nor participants who take part in a game and are rewarded for their participation","type":"string"},"id":{"type":"string"},"oneOff":{"$ref":"#/components/schemas/vegaeventsv1OneOffTransfer"},"oneOffGovernance":{"$ref":"#/components/schemas/v1OneOffGovernanceTransfer"},"reason":{"type":"string"},"recurring":{"$ref":"#/components/schemas/vegaeventsv1RecurringTransfer"},"recurringGovernance":{"$ref":"#/components/schemas/v1RecurringGovernanceTransfer"},"reference":{"type":"string"},"status":{"$ref":"#/components/schemas/v1TransferStatus"},"timestamp":{"format":"int64","type":"string"},"to":{"type":"string"},"toAccountType":{"$ref":"#/components/schemas/vegaAccountType"}},"type":"object"}}},"tags":[{"name":"Trading Data Service (v2)"}]} \ No newline at end of file diff --git a/specs/v0.74.0-preview.6/data-node/swagger/data-node/api/v2/trading_data.swagger.json b/specs/v0.74.0/trading_data_v2.swagger.json similarity index 99% rename from specs/v0.74.0-preview.6/data-node/swagger/data-node/api/v2/trading_data.swagger.json rename to specs/v0.74.0/trading_data_v2.swagger.json index 54d808752..c30036333 100644 --- a/specs/v0.74.0-preview.6/data-node/swagger/data-node/api/v2/trading_data.swagger.json +++ b/specs/v0.74.0/trading_data_v2.swagger.json @@ -6,12 +6,12 @@ }, "tags": [ { - "name": "TradingDataService" + "name": "Trading Data Service (v2)" } ], "host": "https://api.testnet.vega.xyz", "schemes": [ - "http", + "https" ], "consumes": [ diff --git a/specs/v0.74.0/wallet.openapi.json b/specs/v0.74.0/wallet.openapi.json new file mode 100644 index 000000000..1988f65ff --- /dev/null +++ b/specs/v0.74.0/wallet.openapi.json @@ -0,0 +1 @@ +{"openapi":"3.0.3","info":{"title":"Wallet API","description":"The version 2 of the wallet HTTP API leverages the wallet JSON-RPC API.\n\n## Workflow\n1. Use `GET /v2/methods` to ensure the JSON-RPC API exposes all the methods your application requires.\n\n2. Use `POST /v2/requests` endpoint to submit requests to the JSON-RPC API.\n## Useful links\n- [JSON-RPC 2.0 Specification](https://www.jsonrpc.org/specification)","version":"2.0.0"},"servers":[{"url":"http://localhost:1789/api/","description":"Local wallet"}],"externalDocs":{"description":"Find out more about Vega REST APIs.","url":"https://docs.vega.xyz/docs/mainnet/api/rest/overview"},"paths":{"/v2/requests":{"post":{"summary":"Submit JSON-RPC request to wallet API","description":"This endpoint is the main entry point to submit JSON-RPC requests. The body of the HTTP request should be formatted as a JSON-RPC v2 request. The HTTP response is formatted as the JSON-RPC v2 response.\n\nThe `ID` should be specified. See [the JSON-RPC notification documentation](https://www.jsonrpc.org/specification#notification) for more details.\n\n# Content type\nThis endpoint returns a response with a specific `Content-Type` header: `application/json-rpc`.\n\nThis content type is used to help third-party applications differentiate the different JSON formats returned by the service. \n\nNote that `application/json-rpc` is not a standard HTTP content type.\n\n# Authentication\n\n## Workflow\nWhen connecting to a wallet, a connection token will be received back through the `Authorisation` header.\n\nWhen accessing protected JSON-RPC methods, the connection token must be set to the `Authorisation` header. If the connection token is not valid, the server returns a response with the HTTP code 401, and the `WWW-Authenticate` header set to `VWT` as required by the HTTP standards.\n\n### Community implementation of the wallet service\nPeople might be willing to implement their own wallet service with their own authentication system. It's recommended that any community implementations follow the same workflow.\n\nThis will save third-party applications from having to _explicitly_ support different authentication schemes, and make the community implementations fully interoperable with all third-party applications, out of the box.\n\n### Token format\n\n\nThe token will be formatted as follows:\n`VWT \\`\n\n`VWT` scheme stands for \"Vega Wallet Token\" and is not a standard authorisation scheme.\n\n`YOUR_TOKEN` is a randomly generated string of 64 characters with numbers and letters. Each session generates a unique one.","tags":["Wallet"],"parameters":[{"in":"header","name":"Origin","description":"The origin of the request. If this header is missing, the request will be rejected as an unauthorized request (401 Unauthorized).","required":true,"schema":{"type":"string"}},{"in":"header","name":"Authorization","description":"The token used to access the protected methods. The format is `VWT YOUR_TOKEN`. VWT is a non-standard scheme that stands for Vega Wallet Token. If this header is missing when accessing protected methods, the request will be rejected as an unauthorized request (401 Unauthorized).","schema":{"type":"string"},"examples":{"test":{"value":"VWT stuTxgheMY8RZyISS9voyLjXHBaQFS7DRqDyXCM7Xx6rcj8zP84U1XNAIhf8110S"}}}],"requestBody":{"description":"The JSON-RPC v2 request","content":{"application/json-rpc":{"schema":{"$ref":"#/components/schemas/JsonRpcRequest"}}},"required":true},"responses":{"200":{"description":"The request is successful. On this endpoint, only this type of response format should be expected.","content":{"application/json-rpc":{"schema":{"$ref":"#/components/schemas/JsonRpcResponse"}}}},"204":{"description":"This response is returned when there is no `id` property valued in the JSON-RPC request. Concretely, when a JSON-RPC request doesn't have an ID, it is considered a JSON-RPC notification and, as such, no result is to be expected, even in case of failure."},"400":{"description":"Something went wrong","content":{"application/json-rpc":{"schema":{"type":"object","description":"This payload is returned when an error occurs at the JSON-RPC API level. See [the JSON-RPC response documentation](https://www.jsonrpc.org/specification#response_object) for more details.","properties":{"jsonrpc":{"type":"string","required":true,"enum":["2.0"]},"errors":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"string"}}},"id":{"type":"string"}}}}}},"401":{"description":"This error code is returned when the authentication failed."},"500":{"description":"Something failed internally. Nothing can be done about it on the client side. Reporting the issue to the wallet software developers is encouraged."}}}},"/v2/methods":{"get":{"summary":"List the available methods on the JSON-RPC API","description":"The JSON-RPC API behind this HTTP API can have an arbitrary set of endpoints enabled.\n\nThis method allows an application to check for the existence of the JSON-RPC before calling the requests method.","tags":["Wallet"],"responses":{"200":{"description":"Successful listing","content":{"application/json":{"examples":{"Example 1":{"summary":"Listing the registered methods","value":{"result":{"registeredMethods":["client.connect_wallet","client.disconnect_wallet","client.list_keys","client.send_transaction"]}}}},"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"registeredMethods":{"type":"array","required":true}}}}}}}},"400":{"description":"Something went wrong","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"object","properties":{"message":{"type":"string"},"data":{"type":"string"}}}}}}}},"500":{"description":"Something failed internally. Nothing can be done about it."}}}},"/v2/health":{"get":{"summary":"Checks if service is up and running","description":"If the service is running, this endpoint returns 200, otherwise the endpoint will be unreachable.","tags":["Wallet"],"responses":{"200":{"description":"The service is alive."},"500":{"description":"Something failed internally. Nothing can be done about it."}}}}},"components":{"schemas":{"JsonResponse":{"type":"object","description":"This payload is returned by HTTP handlers. It's the generic envelope for all HTTP responses that do not come from the JSON-RPC API.","properties":{"result":{"type":"object"},"errors":{"type":"object","properties":{"message":{"type":"string"},"data":{"type":"string"}}}}},"JsonRpcRequest":{"type":"object","description":"This request payload is used to query the JSON-RPC API. See [the JSON-RPC request documentation](https://www.jsonrpc.org/specification#request_object) for more details.","properties":{"jsonrpc":{"required":true,"type":"string","enum":["2.0"]},"method":{"required":true,"type":"string"},"params":{"type":"object"},"id":{"description":"According to the JSON-RPC v2 standard, if the ID is not specified, an empty response should be returned, whatever the state is (success or error). In the Vega implementation, this empty response corresponds to `204 No content`.","type":"string"}}},"JsonRpcResponse":{"type":"object","description":"This payload is returned by the JSON-RPC API sitting behind the `/v2/requests` endpoint. See [the JSON-RPC response documentation](https://www.jsonrpc.org/specification#response_object) for more details.","properties":{"jsonrpc":{"type":"string","required":true,"enum":["2.0"]},"result":{"type":"object"},"errors":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"string"}}},"id":{"type":"string"}}}}}} \ No newline at end of file